def post_node_was_unflagged_message(path, user): post = Post() post.location = backend.get_node_for_path(path) post.author = get_system_user() post.post_type = Post.SPAM_UNMARKED post.save() post.mentions = [user] post.node_references = [post.location] post.render() return post
def test_post_node_was_flagged_message(self): hugo = create_user('Hugo') post = post_node_was_flagged_message('/', hugo) self.assertEqual(post.author, get_system_user()) self.assertEqual(post.location, get_root_node()) self.assertEqual(post.post_type, Post.SPAM_MARKED) self.assertIn(hugo, post.mentions.all()) self.assertEqual( post.text_cache, '<span style="color: gray;">Hinweis:</span> ' + '<a href="/user/Hugo">@Hugo</a> hat <a href="/">ROOT' '<span class="nodeIndex">1</span></a> als Spam markiert.')
def post_new_argument_for_node_message(user, path, arg_type, arg_path): post = Post() post.location = backend.get_node_for_path(path) post.author = get_system_user() post.post_type = Post.ARGUMENT_CREATED post.save() post.mentions = [user] post.node_references = [backend.get_node_for_path(arg_path), post.location] post.render() # email notification notify_new_argument(post.location, post) return post
def post_new_derivate_for_node_message(user, original_path, derivate_path): post = Post() original_node = backend.get_node_for_path(original_path) derivate_node = backend.get_node_for_path(derivate_path) post.location = original_node post.post_type = Post.NODE_REFINED post.author = get_system_user() post.save() post.node_references = [original_node, derivate_node] post.mentions = [user] post.render() # email notification notify_derivate(original_node, post) return post
def test_post_new_derivate_for_node_message(self): hugo = create_user('Hugo') node_a = create_nodes_for_path('/bla.1/blubb.1', [hugo]) node_b = create_nodes_for_path('/bla.2/pling.1', [hugo]) post = post_new_derivate_for_node_message(hugo, '/bla.1/blubb.1', '/bla.2/pling.1') self.assertEqual(post.author, get_system_user()) self.assertEqual(post.location, node_a) self.assertEqual(post.post_type, Post.NODE_REFINED) self.assertIn(hugo, post.mentions.all()) self.assertIn(node_a, post.node_references.all()) self.assertIn(node_b, post.node_references.all()) self.assertEqual(post.node_references.count(), 2) self.assertEqual( post.text_cache, u'<span style="color: gray;">Hinweis:</span> ' + u'<a href="/user/Hugo">@Hugo</a> hat <a href="/bla.1/blubb.1">' u'blubb_long<span class="nodeIndex">1</span></a> zu ' + u'<a href="/bla.2/pling.1">pling_long' u'<span class="nodeIndex">1</span></a> weiterentwickelt.')
def test_post_new_generic_argument_for_node_message(self): hugo = create_user('Hugo') node = create_nodes_for_path('/bla.1/blubb.1', [hugo]) argument = create_argument(node, Argument.PRO, 'Argumentutinio', 'Arrgumente!', [hugo]) post = post_new_argument_for_node_message(hugo, '/bla.1/blubb.1', Argument.PRO, '/bla.1/blubb.1.pro.1') self.assertEqual(post.author, get_system_user()) self.assertEqual(post.location, node) self.assertEqual(post.post_type, Post.ARGUMENT_CREATED) self.assertIn(hugo, post.mentions.all()) self.assertIn(node, post.node_references.all()) self.assertIn(argument.pk, [a.pk for a in post.node_references.all()]) self.assertEqual(post.node_references.count(), 2) self.assertEqual( post.text_cache, u'<span style="color: gray;">Hinweis:</span> ' + u'<a href="/user/Hugo">@Hugo</a> hat dem Vorschlag ' u'<a href="/bla.1/blubb.1">blubb_long' u'<span class="nodeIndex">1</span></a> das Argument ' + u'<a href="/bla.1/blubb.1.pro.1">Argumentutinio' u'<span class="nodeIndex">1</span></a> hinzugefügt.')