def test_obj_arg_is_not_a_django_model(self):

        from wiki.templatetags import wiki_tags

        with self.assertRaises(TypeError):
            article_for_object({}, '')

        with self.assertRaises(TypeError):
            article_for_object({'request': 100500}, {})

        with self.assertRaises(TypeError):
            self.render({'obj': 'tiger!'})

        self.assertEqual(len(wiki_tags._cache), 0)
Exemple #2
0
    def test_obj_arg_is_not_a_django_model(self):

        from wiki.templatetags import wiki_tags

        with self.assertRaises(TypeError):
            article_for_object({}, '')

        with self.assertRaises(TypeError):
            article_for_object({'request': 100500}, {})

        with self.assertRaises(TypeError):
            self.render({'obj': 'tiger!'})

        self.assertEqual(len(wiki_tags._cache), 0)
Exemple #3
0
    def test_obj_is_not_in__cache_and_articleforobject_is_not_exist(self):
        from wiki.templatetags.wiki_tags import _cache as cache

        obj = Article.objects.create()

        article_for_object({}, obj)

        self.assertIn(obj, cache)
        self.assertEqual(cache[obj], None)
        self.assertEqual(len(cache), 1)

        self.render({'obj': obj})

        self.assertIn(obj, cache)
        self.assertEqual(cache[obj], None)
        self.assertEqual(len(cache), 1)
Exemple #4
0
    def test_obj_in__cache_and_articleforobjec_is_exist(self):

        article = Article.objects.create()
        content_type = ContentType.objects.get_for_model(article)
        ArticleForObject.objects.create(article=article,
                                        content_type=content_type,
                                        object_id=1)

        from wiki.templatetags import wiki_tags
        wiki_tags._cache = {article: 'spam'}

        output = article_for_object({}, article)

        self.assertEqual(output, article)
        self.assertIn(article, wiki_tags._cache)
        self.assertEqual(wiki_tags._cache[article], article)

        output = self.render({'obj': article})

        self.assertIn(article, wiki_tags._cache)
        self.assertEqual(wiki_tags._cache[article], article)

        expected = 'Article without content (1)'

        self.assertIn(expected, output)
    def test_obj_is_not_in__cache_and_articleforobject_is_not_exist(self):
        from wiki.templatetags.wiki_tags import _cache as cache

        obj = Article.objects.create()

        article_for_object({}, obj)

        self.assertIn(obj, cache)
        self.assertEqual(cache[obj], None)
        self.assertEqual(len(cache), 1)

        self.render({'obj': obj})

        self.assertIn(obj, cache)
        self.assertEqual(cache[obj], None)
        self.assertEqual(len(cache), 1)
    def test_obj_in__cache_and_articleforobjec_is_exist(self):

        article = Article.objects.create()
        content_type = ContentType.objects.get_for_model(article)
        ArticleForObject.objects.create(
            article=article,
            content_type=content_type,
            object_id=1
        )

        from wiki.templatetags import wiki_tags
        wiki_tags._cache = {article: 'spam'}

        output = article_for_object({}, article)

        self.assertEqual(output, article)
        self.assertIn(article, wiki_tags._cache)
        self.assertEqual(wiki_tags._cache[article], article)

        output = self.render({'obj': article})

        self.assertIn(article, wiki_tags._cache)
        self.assertEqual(wiki_tags._cache[article], article)

        expected = 'Article without content (1)'

        self.assertIn(expected, output)
Exemple #7
0
    def test_obj_in__cache_and_articleforobject_is_not_exist(self):

        model = Article.objects.create()

        from wiki.templatetags import wiki_tags
        wiki_tags._cache = {model: 'spam'}

        article_for_object({}, model)

        self.assertIn(model, wiki_tags._cache)
        self.assertEqual(wiki_tags._cache[model], None)
        self.assertEqual(len(wiki_tags._cache), 1)

        self.render({'obj': model})

        self.assertIn(model, wiki_tags._cache)
        self.assertEqual(wiki_tags._cache[model], None)
        self.assertEqual(len(wiki_tags._cache), 1)

        self.assertNotIn('spam', wiki_tags._cache.values())
    def test_obj_in__cache_and_articleforobject_is_not_exist(self):

        model = Article.objects.create()

        from wiki.templatetags import wiki_tags
        wiki_tags._cache = {model: 'spam'}

        article_for_object({}, model)

        self.assertIn(model, wiki_tags._cache)
        self.assertEqual(wiki_tags._cache[model], None)
        self.assertEqual(len(wiki_tags._cache), 1)

        self.render({'obj': model})

        self.assertIn(model, wiki_tags._cache)
        self.assertEqual(wiki_tags._cache[model], None)
        self.assertEqual(len(wiki_tags._cache), 1)

        self.assertNotIn('spam', wiki_tags._cache.values())
Exemple #9
0
    def test_obj_is_not_in__cache_and_articleforobjec_is_exist(self):
        from wiki.templatetags.wiki_tags import _cache as cache

        a = Article.objects.create()
        content_type = ContentType.objects.get_for_model(a)
        ArticleForObject.objects.create(article=a,
                                        content_type=content_type,
                                        object_id=1)

        output = article_for_object({}, a)

        self.assertEqual(output, a)
        self.assertIn(a, cache)
        self.assertEqual(cache[a], a)
        self.assertEqual(len(cache), 1)

        self.render({'obj': a})

        self.assertIn(a, cache)
        self.assertEqual(cache[a], a)
        self.assertEqual(len(cache), 1)
    def test_obj_is_not_in__cache_and_articleforobjec_is_exist(self):
        from wiki.templatetags.wiki_tags import _cache as cache

        a = Article.objects.create()
        content_type = ContentType.objects.get_for_model(a)
        ArticleForObject.objects.create(
            article=a,
            content_type=content_type,
            object_id=1
        )

        output = article_for_object({}, a)

        self.assertEqual(output, a)
        self.assertIn(a, cache)
        self.assertEqual(cache[a], a)
        self.assertEqual(len(cache), 1)

        self.render({'obj': a})

        self.assertIn(a, cache)
        self.assertEqual(cache[a], a)
        self.assertEqual(len(cache), 1)