Add document search test in relation to related_name updates

This commit is contained in:
Roberto Rosario
2014-05-20 22:40:32 -04:00
parent 4063cb7f7c
commit 58bcc463c4

View File

@@ -28,7 +28,7 @@ class DocumentTestCase(unittest.TestCase):
new_version = self.document.new_version(file=File(file_object, name='mayan_11_1.pdf'))
file_object.close()
def runTest(self):
def test_document_creation(self):
self.failUnlessEqual(self.document_type.name, 'test doc type')
self.failUnlessEqual(self.document.exists(), True)
@@ -83,3 +83,55 @@ class DocumentTestCase(unittest.TestCase):
def tearDown(self):
self.document.delete()
self.document_type.delete()
class DocumentSearchTestCase(unittest.TestCase):
def setUp(self):
from ocr.parsers import parse_document_page
self.document_type = DocumentType(name='test doc type')
self.document_type.save()
self.document = Document(
document_type=self.document_type,
description='description',
)
self.document.save()
file_object = open(os.path.join(settings.PROJECT_ROOT, 'contrib', 'mayan_11_1.pdf'))
new_version = self.document.new_version(file=File(file_object, name='mayan_11_1.pdf'))
file_object.close()
# Text extraction on the first page only
parse_document_page(self.document.latest_version.pages.all()[0])
def test_simple_search_after_related_name_change(self):
from . import document_search
"""
Test that simple search works after related_name changes to
document versions and document version pages
"""
model_list, flat_list, shown_result_count, result_count, elapsed_time = document_search.simple_search('Mayan')
self.assertEqual(result_count, 1)
self.assertEqual(flat_list, [self.document])
def test_advanced_search_after_related_name_change(self):
from . import document_search
# Test versions__filename
model_list, flat_list, shown_result_count, result_count, elapsed_time = document_search.advanced_search({'versions__filename': self.document.filename})
self.assertEqual(result_count, 1)
self.assertEqual(flat_list, [self.document])
# Test versions__mimetype
model_list, flat_list, shown_result_count, result_count, elapsed_time = document_search.advanced_search({'versions__mimetype': self.document.file_mimetype})
self.assertEqual(result_count, 1)
self.assertEqual(flat_list, [self.document])
# Test versions__pages__content
# Search by the first 20 characters of the content of the first page of the uploaded document
model_list, flat_list, shown_result_count, result_count, elapsed_time = document_search.advanced_search({'versions__pages__content': self.document.latest_version.pages.all()[0].content[0:20]})
self.assertEqual(result_count, 1)
self.assertEqual(flat_list, [self.document])
def tearDown(self):
self.document.delete()
self.document_type.delete()