mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	reorganized test case
This commit is contained in:
		| @@ -12,7 +12,8 @@ paperless-ng 1.1.2 | |||||||
|  |  | ||||||
| * Added a management command for executing the sanity checker directly. | * Added a management command for executing the sanity checker directly. | ||||||
|   See :ref:`utilities-sanity-checker`. |   See :ref:`utilities-sanity-checker`. | ||||||
|   The sanity checker will also report errors in the log files. |  | ||||||
|  | * The weekly sanity check now reports messages in the log files. | ||||||
|  |  | ||||||
| * Fixed an issue with the metadata tab not reporting anything in case of missing files. | * Fixed an issue with the metadata tab not reporting anything in case of missing files. | ||||||
|  |  | ||||||
|   | |||||||
| @@ -73,6 +73,11 @@ class TestSanityCheck(DirectoriesMixin, TestCase): | |||||||
|  |  | ||||||
|         return Document.objects.create(title="test", checksum="42995833e01aea9b3edee44bbfdd7ce1", archive_checksum="62acb0bcbfbcaa62ca6ad3668e4e404b", content="test", pk=1, filename="0000001.pdf", mime_type="application/pdf", archive_filename="0000001.pdf") |         return Document.objects.create(title="test", checksum="42995833e01aea9b3edee44bbfdd7ce1", archive_checksum="62acb0bcbfbcaa62ca6ad3668e4e404b", content="test", pk=1, filename="0000001.pdf", mime_type="application/pdf", archive_filename="0000001.pdf") | ||||||
|  |  | ||||||
|  |     def assertSanityError(self, messageRegex): | ||||||
|  |         messages = check_sanity() | ||||||
|  |         self.assertTrue(messages.has_error()) | ||||||
|  |         self.assertRegex(messages[0]['message'], messageRegex) | ||||||
|  |  | ||||||
|     def test_no_docs(self): |     def test_no_docs(self): | ||||||
|         self.assertEqual(len(check_sanity()), 0) |         self.assertEqual(len(check_sanity()), 0) | ||||||
|  |  | ||||||
| @@ -83,71 +88,47 @@ class TestSanityCheck(DirectoriesMixin, TestCase): | |||||||
|     def test_no_thumbnail(self): |     def test_no_thumbnail(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         os.remove(doc.thumbnail_path) |         os.remove(doc.thumbnail_path) | ||||||
|         messages = check_sanity() |         self.assertSanityError("Thumbnail of document .* does not exist") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 1) |  | ||||||
|         self.assertRegex(messages[0]['message'], "Thumbnail of document .* does not exist") |  | ||||||
|  |  | ||||||
|     def test_thumbnail_no_access(self): |     def test_thumbnail_no_access(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         os.chmod(doc.thumbnail_path, 0o000) |         os.chmod(doc.thumbnail_path, 0o000) | ||||||
|         messages = check_sanity() |         self.assertSanityError("Cannot read thumbnail file of document") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 1) |  | ||||||
|         self.assertRegex(messages[0]['message'], "Cannot read thumbnail file of document") |  | ||||||
|         os.chmod(doc.thumbnail_path, 0o777) |         os.chmod(doc.thumbnail_path, 0o777) | ||||||
|  |  | ||||||
|     def test_no_original(self): |     def test_no_original(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         os.remove(doc.source_path) |         os.remove(doc.source_path) | ||||||
|         messages = check_sanity() |         self.assertSanityError("Original of document .* does not exist.") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 1) |  | ||||||
|         self.assertRegex(messages[0]['message'], "Original of document .* does not exist.") |  | ||||||
|  |  | ||||||
|     def test_original_no_access(self): |     def test_original_no_access(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         os.chmod(doc.source_path, 0o000) |         os.chmod(doc.source_path, 0o000) | ||||||
|         messages = check_sanity() |         self.assertSanityError("Cannot read original file of document") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 1) |  | ||||||
|         self.assertRegex(messages[0]['message'], "Cannot read original file of document") |  | ||||||
|         os.chmod(doc.source_path, 0o777) |         os.chmod(doc.source_path, 0o777) | ||||||
|  |  | ||||||
|     def test_original_checksum_mismatch(self): |     def test_original_checksum_mismatch(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         doc.checksum = "WOW" |         doc.checksum = "WOW" | ||||||
|         doc.save() |         doc.save() | ||||||
|         messages = check_sanity() |         self.assertSanityError("Checksum mismatch of document") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 1) |  | ||||||
|         self.assertRegex(messages[0]['message'], "Checksum mismatch of document") |  | ||||||
|  |  | ||||||
|     def test_no_archive(self): |     def test_no_archive(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         os.remove(doc.archive_path) |         os.remove(doc.archive_path) | ||||||
|         messages = check_sanity() |         self.assertSanityError("Archived version of document .* does not exist.") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 1) |  | ||||||
|         self.assertRegex(messages[0]['message'], "Archived version of document .* does not exist.") |  | ||||||
|  |  | ||||||
|     def test_archive_no_access(self): |     def test_archive_no_access(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         os.chmod(doc.archive_path, 0o000) |         os.chmod(doc.archive_path, 0o000) | ||||||
|         messages = check_sanity() |         self.assertSanityError("Cannot read archive file of document") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 1) |  | ||||||
|         self.assertRegex(messages[0]['message'], "Cannot read archive file of document") |  | ||||||
|         os.chmod(doc.archive_path, 0o777) |         os.chmod(doc.archive_path, 0o777) | ||||||
|  |  | ||||||
|     def test_archive_checksum_mismatch(self): |     def test_archive_checksum_mismatch(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         doc.archive_checksum = "WOW" |         doc.archive_checksum = "WOW" | ||||||
|         doc.save() |         doc.save() | ||||||
|         messages = check_sanity() |         self.assertSanityError("Checksum mismatch of archived document") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 1) |  | ||||||
|         self.assertRegex(messages[0]['message'], "Checksum mismatch of archived document") |  | ||||||
|  |  | ||||||
|     def test_empty_content(self): |     def test_empty_content(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
| @@ -172,16 +153,10 @@ class TestSanityCheck(DirectoriesMixin, TestCase): | |||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         doc.archive_checksum = None |         doc.archive_checksum = None | ||||||
|         doc.save() |         doc.save() | ||||||
|         messages = check_sanity() |         self.assertSanityError("has an archive file, but its checksum is missing.") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 2) |  | ||||||
|         self.assertRegex(messages[0]['message'], "has an archive file, but its checksum is missing.") |  | ||||||
|  |  | ||||||
|     def test_archive_checksum_no_filename(self): |     def test_archive_checksum_no_filename(self): | ||||||
|         doc = self.make_test_data() |         doc = self.make_test_data() | ||||||
|         doc.archive_filename = None |         doc.archive_filename = None | ||||||
|         doc.save() |         doc.save() | ||||||
|         messages = check_sanity() |         self.assertSanityError("has an archive file checksum, but no archive filename.") | ||||||
|         self.assertTrue(messages.has_error()) |  | ||||||
|         self.assertEqual(len(messages), 2) |  | ||||||
|         self.assertRegex(messages[0]['message'], "has an archive file checksum, but no archive filename.") |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 jonaswinkler
					jonaswinkler