Exemple #1
0
 def from_queryset(cls, queryset_class, class_name=None):
     # This is overridden because :py:meth:`models.Manager.from_queryset`
     # uses `inspect` to retrieve the class methods, and the proxy class has
     # no direct members.
     queryset_class = get_override_class(VersionQuerySet,
                                         VersionQuerySet._default_class)
     return super(VersionManager,
                  cls).from_queryset(queryset_class, class_name)
Exemple #2
0
 def from_queryset(cls, queryset_class, class_name=None):
     # This is overridden because :py:meth:`models.Manager.from_queryset`
     # uses `inspect` to retrieve the class methods, and the proxy class has
     # no direct members.
     queryset_class = get_override_class(
         BuildQuerySet,
         BuildQuerySet._default_class,  # pylint: disable=protected-access
     )
     return super().from_queryset(queryset_class, class_name)
 def from_queryset(cls, queryset_class, class_name=None):
     # This is overridden because :py:meth:`models.Manager.from_queryset`
     # uses `inspect` to retrieve the class methods, and the proxy class has
     # no direct members.
     queryset_class = get_override_class(
         VersionQuerySet,
         VersionQuerySet._default_class  # pylint: disable=protected-access
     )
     return super(VersionManagerBase, cls).from_queryset(queryset_class, class_name)
    def test_with_advanced_override_only(self):
        """Test class with no `override_setting`"""
        class Foo(SettingsOverrideObject):
            _default_class = FooBase

        foo = Foo()
        self.assertEqual(foo.__class__.__name__, 'NewFoo')
        self.assertEqual(foo.bar(), 2)

        override_class = get_override_class(Foo, Foo._default_class)
        self.assertEqual(override_class, NewFoo)
    def test_with_advanced_override_only(self):
        """Test class with no `override_setting`"""
        class Foo(SettingsOverrideObject):
            _default_class = FooBase

        foo = Foo()
        self.assertEqual(foo.__class__.__name__, 'NewFoo')
        self.assertEqual(foo.bar(), 2)
        self.assertEqual(Foo.baz(), 2)

        override_class = get_override_class(Foo, Foo._default_class)
        self.assertEqual(override_class, NewFoo)
    def test_with_advanced_override(self):
        """Test class with override using `CLASS_OVERRIDES`"""
        class Foo(SettingsOverrideObject):
            _default_class = FooBase
            _override_setting = 'FOO_OVERRIDE_CLASS'

        foo = Foo()
        self.assertEqual(foo.__class__.__name__, 'NewFoo')
        self.assertEqual(foo.bar(), 2)

        override_class = get_override_class(Foo, Foo._default_class)
        self.assertEqual(override_class, NewFoo)
    def test_with_basic_override(self):
        """Test class override setting defined"""
        class Foo(SettingsOverrideObject):
            _default_class = FooBase
            _override_setting = 'FOO_OVERRIDE_CLASS'

        foo = Foo()
        self.assertEqual(foo.__class__.__name__, 'NewFoo')
        self.assertEqual(foo.bar(), 2)

        override_class = get_override_class(Foo, Foo._default_class)
        self.assertEqual(override_class, NewFoo)
    def test_no_override(self):
        """Test class without override"""
        class Foo(SettingsOverrideObject):
            _default_class = FooBase
            _override_setting = 'FOO_OVERRIDE_CLASS'

        foo = Foo()
        self.assertEqual(foo.__class__.__name__, 'FooBase')
        self.assertEqual(foo.bar(), 1)

        override_class = get_override_class(Foo, Foo._default_class)
        self.assertEqual(override_class, FooBase)
    def test_with_advanced_override(self):
        """Test class with override using `CLASS_OVERRIDES`"""
        class Foo(SettingsOverrideObject):
            _default_class = FooBase
            _override_setting = 'FOO_OVERRIDE_CLASS'

        foo = Foo()
        self.assertEqual(foo.__class__.__name__, 'NewFoo')
        self.assertEqual(foo.bar(), 2)
        self.assertEqual(Foo.baz(), 2)

        override_class = get_override_class(Foo, Foo._default_class)
        self.assertEqual(override_class, NewFoo)
    def test_no_override(self):
        """Test class without override"""
        class Foo(SettingsOverrideObject):
            _default_class = FooBase
            _override_setting = 'FOO_OVERRIDE_CLASS'

        foo = Foo()
        self.assertEqual(foo.__class__.__name__, 'FooBase')
        self.assertEqual(foo.bar(), 1)
        self.assertEqual(Foo.baz(), 1)

        override_class = get_override_class(Foo, Foo._default_class)
        self.assertEqual(override_class, FooBase)
    def test_with_basic_override(self):
        """Test class override setting defined."""
        class Foo(SettingsOverrideObject):
            _default_class = FooBase
            _override_setting = 'FOO_OVERRIDE_CLASS'

        foo = Foo()
        self.assertEqual(foo.__class__.__name__, 'NewFoo')
        self.assertEqual(foo.bar(), 2)
        self.assertEqual(Foo.baz(), 2)

        override_class = get_override_class(Foo, Foo._default_class)
        self.assertEqual(override_class, NewFoo)
Exemple #12
0
 def from_queryset(cls, queryset_class, class_name=None):
     queryset_class = get_override_class(
         HTMLFileQuerySet,
         HTMLFileQuerySet._default_class,  # pylint: disable=protected-access
     )
     return super().from_queryset(queryset_class, class_name)