Exemple #1
0
 def test_multiple_tags_and_documents(self):
     context = Context()
     context.create_document(1, 'python.pdf', 'pdf', '/tmp/python.pdf')
     context.create_document(2, 'tkinter.pdf', 'pdf', '/tmp/tkinter.pdf')
     context.create_document(3, 'lua.pdf', 'pdf', '/tmp/lua.pdf')
     context.create_document(4, 'index.py', 'py', '/tmp/index.py')
     context.create_tag(5, 'book')
     context.create_tag(6, 'python')
     context.create_relation(1, 5)
     context.create_relation(2, 5)
     context.create_relation(3, 5)
     context.create_relation(1, 6)
     context.create_relation(2, 6)
     context.create_relation(4, 6)
     self.assertEqual(context.count_relations(), 6)
     book_ids = context.find_document_ids([5])
     self.assertEqual(book_ids, [1, 2, 3])
     python_ids = context.find_document_ids([6])
     self.assertEqual(python_ids, [1, 2, 4])
     python_book_ids = context.find_document_ids([5, 6])
     self.assertEqual(python_book_ids, [1, 2])
     document_ids = context.find_document_ids([])
     self.assertEqual(document_ids, [1, 2, 3, 4])
     tag_ids = context.find_tag_ids([1, 2])
     self.assertEqual(tag_ids, [5, 6])
     tag_ids = context.find_tag_ids([1, 3])
     self.assertEqual(tag_ids, [5])
     tag_ids = context.find_tag_ids([3, 4])
     self.assertEqual(tag_ids, [])
Exemple #2
0
 def test_relation_creation_and_remove(self):
     logger = Logger(path=TEST_LOG_PATH)
     operation = {
         'method': 'create_document',
         'id': 456,
         'name': 'first.txt',
         'type': 'txt',
         'path': '/tmp/first.txt'
     }
     logger.save_operation(operation)
     operation = {'method': 'create_tag', 'id': 123, 'name': 'python'}
     logger.save_operation(operation)
     operation = {
         'method': 'create_relation',
         'document_id': 456,
         'tag_id': 123
     }
     logger.save_operation(operation)
     operation = {
         'method': 'destroy_relation',
         'document_id': 456,
         'tag_id': 123
     }
     logger.save_operation(operation)
     context = Context()
     logger.restore_context(context)
     self.assertEqual(context.count_documents(), 1)
     self.assertEqual(context.count_tags(), 1)
     self.assertEqual(context.count_relations(), 0)
     self.assertEqual(context.find_document_ids([123]), [])
     self.assertEqual(context.find_document_ids([]), [456])
     self.assertEqual(context.find_tag_ids([456]), [])
     self.assertEqual(context.find_tag_ids([]), [123])
Exemple #3
0
 def test_create_relations(self):
     context = Context()
     context.create_document(1, 'python.pdf', 'pdf', '/tmp/python.pdf')
     context.create_document(2, 'rust.pdf', 'pdf', '/tmp/rust.pdf')
     context.create_document(3, 'lua.pdf', 'pdf', '/tmp/lua.pdf')
     context.create_tag(1, 'book')
     context.create_relation(1, 1)
     context.create_relation(2, 1)
     context.create_relation(3, 1)
     document_ids = context.find_document_ids([1])
     self.assertEqual(document_ids, [1, 2, 3])
     self.assertEqual(context.find_tag_ids([1]), [1])
     self.assertEqual(context.find_tag_ids([2]), [1])
     self.assertEqual(context.find_tag_ids([3]), [1])