def test_paths(self): response = self.client.get( reverse('load_graph_data', kwargs=dict(path='Bla.1/Blubb.2', graph_data_type='withSpam'))) parsed = json.loads(response.content) self.assertEqual(parsed['loadGraphDataResponse']['graphDataRelated'], [create_graph_data_node_for_structure_node(self.bla2), create_graph_data_node_for_structure_node(self.bla3)]) self.assertEqual(parsed['loadGraphDataResponse']['graphDataChildren'], [create_graph_data_node_for_structure_node( self.blubb1), create_graph_data_node_for_structure_node( self.blubb2), create_graph_data_node_for_structure_node( self.blubb2d)]) response = self.client.get( reverse('load_graph_data', kwargs=dict(path='Bla.4', graph_data_type='withSpam'))) parsed = json.loads(response.content) self.assertEqual(parsed['loadGraphDataResponse']['graphDataRelated'], [create_graph_data_node_for_structure_node( self.blubb2)]) self.assertEqual(parsed['loadGraphDataResponse']['graphDataChildren'], [create_graph_data_node_for_structure_node(self.bla1), create_graph_data_node_for_structure_node(self.bla2), create_graph_data_node_for_structure_node(self.bla3), create_graph_data_node_for_structure_node(self.bla4)])
def test_paths(self): response = self.client.get( reverse('load_graph_data', kwargs=dict(path='Bla.1/Blubb.2', graph_data_type='withSpam'))) parsed = json.loads(response.content) # self.assertEqual(parsed['loadGraphDataResponse']['graphDataRelated'], # [create_graph_data_node_for_structure_node(self.bla2), # create_graph_data_node_for_structure_node(self.bla3)]) self.assertEqual( parsed['loadGraphDataResponse']['graphDataChildren'], [ create_graph_data_node_for_structure_node(self.blubb1), create_graph_data_node_for_structure_node(self.blubb2), create_graph_data_node_for_structure_node(self.blubb2d) ]) response = self.client.get( reverse('load_graph_data', kwargs=dict(path='Bla.4', graph_data_type='withSpam'))) parsed = json.loads(response.content) # self.assertEqual(parsed['loadGraphDataResponse']['graphDataRelated'], # [create_graph_data_node_for_structure_node( # self.blubb2)]) self.assertEqual( parsed['loadGraphDataResponse']['graphDataChildren'], [ create_graph_data_node_for_structure_node(self.bla1), create_graph_data_node_for_structure_node(self.bla2), create_graph_data_node_for_structure_node(self.bla3), create_graph_data_node_for_structure_node(self.bla4) ])
def test_root_node(self): response = self.client.get(reverse('load_graph_data', kwargs=dict(path='', graph_data_type='withSpam'))) parsed = json.loads(response.content) self.assertTrue('loadGraphDataResponse' in parsed) self.assertTrue('graphDataChildren' in parsed['loadGraphDataResponse']) self.assertTrue('graphDataRelated' in parsed['loadGraphDataResponse']) self.assertEqual(parsed['loadGraphDataResponse']['graphDataRelated'],[]) self.assertEqual(parsed['loadGraphDataResponse']['graphDataChildren'], [create_graph_data_node_for_structure_node(self.root)])
def test_text_nodes_no_path(self): for i in range(5): data = create_graph_data_node_for_structure_node(self.nodes[i]) self.assertEqual(data['path'], 'Organisatorisches.' + str(i + 1)) self.assertSequenceEqual(data['authorGroup'], self.authorGroups[i]) self.assertEqual(data['follows'], self.follows[i]) self.assertEqual(data['spamFlags'], self.spamFlags[i]) self.assertEqual(data['unFollows'], self.unFollows[i]) self.assertEqual(data['newFollows'], self.newFollows[i]) self.assertEqual(data['originGroup'], self.originGroups[i])
def load_graph_data(request, path, graph_data_type): if not path.strip("/"): # root node! nodes = [backend.get_root_node()] related_nodes = [] else: slot_path = path.rsplit(".", 1)[0] try: slot = backend.get_node_for_path(slot_path) except backend.IllegalPath: return json_error_response("NonExistingNode", "Could not find slot: " + slot_path + " for node " + path) nodes = backend.get_ordered_children_for(slot) sources = Q(derivates__in=nodes) derivates = Q(sources__in=nodes) related_nodes = ( backend.Node.objects.filter(sources | derivates).exclude(id__in=[n.id for n in nodes]).distinct().all() ) graph_data_children = [create_graph_data_node_for_structure_node(n) for n in nodes] graph_data_related = [create_graph_data_node_for_structure_node(n) for n in related_nodes] data = {"graphDataChildren": graph_data_children, "graphDataRelated": graph_data_related} return json_response({"loadGraphDataResponse": data})
def test_root_node(self): response = self.client.get( reverse('load_graph_data', kwargs=dict(path='', graph_data_type='withSpam'))) parsed = json.loads(response.content) self.assertTrue('loadGraphDataResponse' in parsed) self.assertTrue('graphDataChildren' in parsed['loadGraphDataResponse']) self.assertTrue('graphDataRelated' in parsed['loadGraphDataResponse']) self.assertEqual(parsed['loadGraphDataResponse']['graphDataRelated'], []) self.assertEqual( parsed['loadGraphDataResponse']['graphDataChildren'], [create_graph_data_node_for_structure_node(self.root)])