# evennia.utils.idmapper.tests

class `evennia.utils.idmapper.tests.``Category`(id, name)

  Bases: `evennia.utils.idmapper.models.SharedMemoryModel`

  `name`

    A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

  exception `DoesNotExist`

    Bases: `django.core.exceptions.ObjectDoesNotExist`

  exception `MultipleObjectsReturned`

    Bases: `django.core.exceptions.MultipleObjectsReturned`

  `article_set`

    Accessor to the related objects manager on the reverse side of a many-to-one relation.

    In the example:

        class Child(Model):
            parent = ForeignKey(Parent, related_name='children')

    **Parent.children** is a **ReverseManyToOneDescriptor** instance.

    Most of the implementation is delegated to a dynamically defined manager class built by **create_forward_many_to_many_manager()** defined below.

  `id`

    A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

  `path` = 'evennia.utils.idmapper.tests.Category'
  `regulararticle_set`

    Accessor to the related objects manager on the reverse side of a many-to-one relation.

    In the example:

        class Child(Model):
            parent = ForeignKey(Parent, related_name='children')

    **Parent.children** is a **ReverseManyToOneDescriptor** instance.

    Most of the implementation is delegated to a dynamically defined manager class built by **create_forward_many_to_many_manager()** defined below.

  `typename` = 'SharedMemoryModelBase'

class `evennia.utils.idmapper.tests.``RegularCategory`(id, name)

  Bases: `django.db.models.base.Model`

  `name`

    A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

  exception `DoesNotExist`

    Bases: `django.core.exceptions.ObjectDoesNotExist`

  exception `MultipleObjectsReturned`

    Bases: `django.core.exceptions.MultipleObjectsReturned`

  `article_set`

    Accessor to the related objects manager on the reverse side of a many-to-one relation.

    In the example:

        class Child(Model):
            parent = ForeignKey(Parent, related_name='children')

    **Parent.children** is a **ReverseManyToOneDescriptor** instance.

    Most of the implementation is delegated to a dynamically defined manager class built by **create_forward_many_to_many_manager()** defined below.

  `id`

    A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

  `objects` = <django.db.models.manager.Manager object>
  `regulararticle_set`

    Accessor to the related objects manager on the reverse side of a many-to-one relation.

    In the example:

        class Child(Model):
            parent = ForeignKey(Parent, related_name='children')

    **Parent.children** is a **ReverseManyToOneDescriptor** instance.

    Most of the implementation is delegated to a dynamically defined manager class built by **create_forward_many_to_many_manager()** defined below.

class `evennia.utils.idmapper.tests.``Article`(id, name, category, category2)

  Bases: `evennia.utils.idmapper.models.SharedMemoryModel`

  `name`

    A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

  `category`

    Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.

    In the example:

        class Child(Model):
            parent = ForeignKey(Parent, related_name='children')

    **Child.parent** is a **ForwardManyToOneDescriptor** instance.

  `category2`

    Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.

    In the example:

        class Child(Model):
            parent = ForeignKey(Parent, related_name='children')

    **Child.parent** is a **ForwardManyToOneDescriptor** instance.

  exception `DoesNotExist`

    Bases: `django.core.exceptions.ObjectDoesNotExist`

  exception `MultipleObjectsReturned`

    Bases: `django.core.exceptions.MultipleObjectsReturned`

  `category2_id`
  `category_id`
  `id`

    A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

  `path` = 'evennia.utils.idmapper.tests.Article'
  `typename` = 'SharedMemoryModelBase'

class `evennia.utils.idmapper.tests.``RegularArticle`(id, name, category, category2)

  Bases: `django.db.models.base.Model`

  `name`

    A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

  `category`

    Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.

    In the example:

        class Child(Model):
            parent = ForeignKey(Parent, related_name='children')

    **Child.parent** is a **ForwardManyToOneDescriptor** instance.

  `category2`

    Accessor to the related object on the forward side of a many-to-one or one-to-one (via ForwardOneToOneDescriptor subclass) relation.

    In the example:

        class Child(Model):
            parent = ForeignKey(Parent, related_name='children')

    **Child.parent** is a **ForwardManyToOneDescriptor** instance.

  exception `DoesNotExist`

    Bases: `django.core.exceptions.ObjectDoesNotExist`

  exception `MultipleObjectsReturned`

    Bases: `django.core.exceptions.MultipleObjectsReturned`

  `category2_id`
  `category_id`
  `id`

    A wrapper for a deferred-loading field. When the value is read from this object the first time, the query is executed.

  `objects` = <django.db.models.manager.Manager object>

class `evennia.utils.idmapper.tests.``SharedMemorysTest`(methodName='runTest')

  Bases: `django.test.testcases.TestCase`

  `setUp`()

    Hook method for setting up the test fixture before exercising it.

  `testSharedMemoryReferences`()
  `testRegularReferences`()
  `testMixedReferences`()
  `testObjectDeletion`()