Finish document indexing tests

This commit is contained in:
Roberto Rosario
2015-01-03 23:39:32 -04:00
parent a51b71b187
commit 7c6b11b619

View File

@@ -48,3 +48,29 @@ class IndexTestCase(TestCase):
# Add document metadata value to trigger index node instance creation # Add document metadata value to trigger index node instance creation
self.document.metadata.create(metadata_type=metadata_type, value='0001') self.document.metadata.create(metadata_type=metadata_type, value='0001')
self.failUnlessEqual(list(IndexInstanceNode.objects.values_list('value', flat=True)), [u'', u'0001']) self.failUnlessEqual(list(IndexInstanceNode.objects.values_list('value', flat=True)), [u'', u'0001'])
# Check that document is in instance node
instance_node = IndexInstanceNode.objects.get(value='0001')
self.failUnlessEqual(list(instance_node.documents.all()), [self.document])
# Change document metadata value to trigger index node instance update
document_metadata = self.document.metadata.get(metadata_type=metadata_type)
document_metadata.value = '0002'
document_metadata.save()
self.failUnlessEqual(list(IndexInstanceNode.objects.values_list('value', flat=True)), [u'', u'0002'])
# Check that document is in new instance node
instance_node = IndexInstanceNode.objects.get(value='0002')
self.failUnlessEqual(list(instance_node.documents.all()), [self.document])
# Check node instance is destoyed when no metadata is available
self.document.metadata.get(metadata_type=metadata_type).delete()
self.failUnlessEqual(list(IndexInstanceNode.objects.values_list('value', flat=True)), [])
# Add document metadata value again to trigger index node instance creation
self.document.metadata.create(metadata_type=metadata_type, value='0003')
self.failUnlessEqual(list(IndexInstanceNode.objects.values_list('value', flat=True)), [u'', u'0003'])
# Check node instance is destoyed when no documents are contained
self.document.delete()
self.failUnlessEqual(list(IndexInstanceNode.objects.values_list('value', flat=True)), [])