def test_resource_count(self): topic_tree_node = tree() query = Metadata(topic_tree_node) results = query.annotate(**{RESOURCE_COUNT: ResourceCount()}) serialized = ContentNodeSerializer(topic_tree_node).data self.assertEqual( serialized.get('metadata').get('resource_count'), results.get(serialized.get('id')).get(RESOURCE_COUNT)) self.assertEqual(5, results.get(serialized.get('id')).get(RESOURCE_COUNT))
def test_descendant_count(self): topic_tree_node = tree() query = Metadata(topic_tree_node) results = query.annotate(**{DESCENDANT_COUNT: DescendantCount()}) serialized = ContentNodeSerializer(topic_tree_node).data self.assertEqual( serialized.get('metadata').get('total_count'), results.get(serialized.get('id')).get(DESCENDANT_COUNT)) self.assertEqual( 7, results.get(serialized.get('id')).get(DESCENDANT_COUNT))
def test_resource_size__topic(self): topic_tree_node = tree() nested_topic = topic_tree_node.get_descendants().filter( kind=content_kinds.TOPIC).first() self.create_coach_node(nested_topic) query = Metadata(topic_tree_node) results = query.annotate(**{RESOURCE_SIZE: ResourceSize()}) serialized = ContentNodeSerializer(topic_tree_node).data self.assertEqual( serialized.get('metadata').get('resource_size'), results.get(serialized.get('id')).get(RESOURCE_SIZE)) self.assertEqual(0, results.get(serialized.get('id')).get(RESOURCE_SIZE))
def test_assessment_count(self): tree() node = ContentNode.objects.get( node_id='00000000000000000000000000000005') query = Metadata(node) results = query.annotate(**{ASSESSMENT_COUNT: AssessmentCount()}) serialized = ContentNodeSerializer(node).data self.assertEqual( serialized.get('metadata').get('resource_count'), results.get(serialized.get('id')).get(ASSESSMENT_COUNT)) self.assertEqual( 3, results.get(serialized.get('id')).get(ASSESSMENT_COUNT))
def test_coach_count(self): topic_tree_node = tree() nested_topic = topic_tree_node.get_descendants().filter( kind=content_kinds.TOPIC).first() self.create_coach_node(nested_topic) query = Metadata(topic_tree_node) results = query.annotate(**{COACH_COUNT: CoachCount()}) serialized = ContentNodeSerializer(topic_tree_node).data self.assertEqual( serialized.get('metadata').get('coach_count'), results.get(serialized.get('id')).get(COACH_COUNT)) self.assertEqual(1, results.get(serialized.get('id')).get(COACH_COUNT))