Exemple #1
0
    def test_many_to_many(self):
        work = factories.AbstractCreativeWorkFactory()
        for i in range(10):
            factories.ThroughTagsFactory(creative_work=work,
                                         tag=factories.TagFactory(name=str(i)))

        for model, (count, version_count) in {
                models.AbstractCreativeWork: (1, 1),
                models.ThroughTags: (10, 10),
                models.Tag: (10, 10),
        }.items():
            assert model.objects.exclude(id=None).count() == count
            assert model.VersionModel.objects.exclude(
                id=None).count() == version_count

        work.delete()

        for model, (count, version_count) in {
                models.AbstractCreativeWork: (0, 0),
                models.ThroughTags: (0, 0),
                models.Tag: (10, 10),
        }.items():
            assert model.objects.exclude(id=None).count() == count
            assert model.VersionModel.objects.exclude(
                id=None).count() == version_count
Exemple #2
0
 def test_change_diff(self, graph):
     tag = factories.TagFactory(name='tag1')
     assert graph.create(IDObfuscator.encode(tag), 'tag', {
         'name': 'tag2'
     }).change == {
         'name': 'tag2'
     }
Exemple #3
0
    def test_many_to_many_inverse(self):
        for i in range(10):
            factories.ThroughTagsFactory(tag=factories.TagFactory(name=str(i)))

        for model, (count, version_count) in {
                models.AbstractCreativeWork: (10, 10),
                models.ThroughTags: (10, 10),
                models.Tag: (10, 10),
        }.items():
            assert model.objects.count() == count
            assert model.VersionModel.objects.count() == version_count

        models.ThroughTags.objects.all().delete()

        for model, (count, version_count) in {
                models.AbstractCreativeWork: (10, 10),
                models.ThroughTags: (0, 0),
                models.Tag: (10, 10),
        }.items():
            assert model.objects.count() == count
            assert model.VersionModel.objects.count() == version_count
Exemple #4
0
 def test_change_no_diff(self, graph):
     tag = factories.TagFactory()
     assert graph.create(IDObfuscator.encode(tag), 'tag', {'name': tag.name}).change == {}
Exemple #5
0
 def test_load_instance(self, graph):
     tag = factories.TagFactory()
     assert graph.create(IDObfuscator.encode(tag), 'tag', {}).instance == tag