|
1 | | -import warnings |
2 | 1 | from collections import namedtuple |
3 | 2 |
|
4 | 3 | import pytest |
|
8 | 7 | from django.test import TestCase, override_settings |
9 | 8 | from django.urls import resolve, reverse |
10 | 9 |
|
11 | | -from rest_framework import ( |
12 | | - RemovedInDRF311Warning, permissions, serializers, viewsets |
13 | | -) |
| 10 | +from rest_framework import permissions, serializers, viewsets |
14 | 11 | from rest_framework.compat import get_regex_pattern |
15 | 12 | from rest_framework.decorators import action |
16 | 13 | from rest_framework.response import Response |
@@ -488,71 +485,3 @@ def test_basename(self): |
488 | 485 | initkwargs = match.func.initkwargs |
489 | 486 |
|
490 | 487 | assert initkwargs['basename'] == 'routertestmodel' |
491 | | - |
492 | | - |
493 | | -class TestBaseNameRename(TestCase): |
494 | | - |
495 | | - def test_base_name_and_basename_assertion(self): |
496 | | - router = SimpleRouter() |
497 | | - |
498 | | - msg = "Do not provide both the `basename` and `base_name` arguments." |
499 | | - with warnings.catch_warnings(record=True) as w, \ |
500 | | - self.assertRaisesMessage(AssertionError, msg): |
501 | | - warnings.simplefilter('always') |
502 | | - router.register('mock', MockViewSet, 'mock', base_name='mock') |
503 | | - |
504 | | - msg = "The `base_name` argument is pending deprecation in favor of `basename`." |
505 | | - assert len(w) == 1 |
506 | | - assert str(w[0].message) == msg |
507 | | - |
508 | | - def test_base_name_argument_deprecation(self): |
509 | | - router = SimpleRouter() |
510 | | - |
511 | | - with pytest.warns(RemovedInDRF311Warning) as w: |
512 | | - warnings.simplefilter('always') |
513 | | - router.register('mock', MockViewSet, base_name='mock') |
514 | | - |
515 | | - msg = "The `base_name` argument is pending deprecation in favor of `basename`." |
516 | | - assert len(w) == 1 |
517 | | - assert str(w[0].message) == msg |
518 | | - assert router.registry == [ |
519 | | - ('mock', MockViewSet, 'mock'), |
520 | | - ] |
521 | | - |
522 | | - def test_basename_argument_no_warnings(self): |
523 | | - router = SimpleRouter() |
524 | | - |
525 | | - with warnings.catch_warnings(record=True) as w: |
526 | | - warnings.simplefilter('always') |
527 | | - router.register('mock', MockViewSet, basename='mock') |
528 | | - |
529 | | - assert len(w) == 0 |
530 | | - assert router.registry == [ |
531 | | - ('mock', MockViewSet, 'mock'), |
532 | | - ] |
533 | | - |
534 | | - def test_get_default_base_name_deprecation(self): |
535 | | - msg = "`CustomRouter.get_default_base_name` method should be renamed `get_default_basename`." |
536 | | - |
537 | | - # Class definition should raise a warning |
538 | | - with pytest.warns(RemovedInDRF311Warning) as w: |
539 | | - warnings.simplefilter('always') |
540 | | - |
541 | | - class CustomRouter(SimpleRouter): |
542 | | - def get_default_base_name(self, viewset): |
543 | | - return 'foo' |
544 | | - |
545 | | - assert len(w) == 1 |
546 | | - assert str(w[0].message) == msg |
547 | | - |
548 | | - # Deprecated method implementation should still be called |
549 | | - with warnings.catch_warnings(record=True) as w: |
550 | | - warnings.simplefilter('always') |
551 | | - |
552 | | - router = CustomRouter() |
553 | | - router.register('mock', MockViewSet) |
554 | | - |
555 | | - assert len(w) == 0 |
556 | | - assert router.registry == [ |
557 | | - ('mock', MockViewSet, 'foo'), |
558 | | - ] |
0 commit comments