Incorporate temp file check in teh GenericViewTestCase class.
This commit is contained in:
@@ -1,5 +1,7 @@
|
|||||||
from __future__ import absolute_import, unicode_literals
|
from __future__ import absolute_import, unicode_literals
|
||||||
|
|
||||||
|
import os
|
||||||
|
|
||||||
from django.conf.urls import url
|
from django.conf.urls import url
|
||||||
from django.contrib.auth import get_user_model
|
from django.contrib.auth import get_user_model
|
||||||
from django.contrib.auth.models import Group
|
from django.contrib.auth.models import Group
|
||||||
@@ -16,11 +18,15 @@ from user_management.tests import (
|
|||||||
TEST_USER_EMAIL, TEST_USER_USERNAME, TEST_USER_PASSWORD
|
TEST_USER_EMAIL, TEST_USER_USERNAME, TEST_USER_PASSWORD
|
||||||
)
|
)
|
||||||
|
|
||||||
|
from ..settings import setting_temporary_directory
|
||||||
|
|
||||||
from .literals import TEST_VIEW_NAME, TEST_VIEW_URL
|
from .literals import TEST_VIEW_NAME, TEST_VIEW_URL
|
||||||
|
|
||||||
|
|
||||||
class GenericViewTestCase(TestCase):
|
class GenericViewTestCase(TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
self.temp_items = len(os.listdir(setting_temporary_directory.value))
|
||||||
|
|
||||||
self.has_test_view = False
|
self.has_test_view = False
|
||||||
self.admin_user = get_user_model().objects.create_superuser(
|
self.admin_user = get_user_model().objects.create_superuser(
|
||||||
username=TEST_ADMIN_USERNAME, email=TEST_ADMIN_EMAIL,
|
username=TEST_ADMIN_USERNAME, email=TEST_ADMIN_EMAIL,
|
||||||
@@ -45,6 +51,10 @@ class GenericViewTestCase(TestCase):
|
|||||||
if self.has_test_view:
|
if self.has_test_view:
|
||||||
urlpatterns.pop(0)
|
urlpatterns.pop(0)
|
||||||
|
|
||||||
|
self.assertEqual(
|
||||||
|
self.temp_items, len(os.listdir(setting_temporary_directory.value))
|
||||||
|
)
|
||||||
|
|
||||||
def add_test_view(self, test_object):
|
def add_test_view(self, test_object):
|
||||||
from mayan.urls import urlpatterns
|
from mayan.urls import urlpatterns
|
||||||
|
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ from __future__ import unicode_literals
|
|||||||
|
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
|
import shutil
|
||||||
import tempfile
|
import tempfile
|
||||||
import types
|
import types
|
||||||
|
|
||||||
@@ -51,10 +52,13 @@ def fs_cleanup(filename, suppress_exceptions=True):
|
|||||||
try:
|
try:
|
||||||
os.remove(filename)
|
os.remove(filename)
|
||||||
except OSError:
|
except OSError:
|
||||||
if suppress_exceptions:
|
try:
|
||||||
pass
|
shutil.rmtree(filename)
|
||||||
else:
|
except OSError:
|
||||||
raise
|
if suppress_exceptions:
|
||||||
|
pass
|
||||||
|
else:
|
||||||
|
raise
|
||||||
|
|
||||||
|
|
||||||
def get_descriptor(file_input, read=True):
|
def get_descriptor(file_input, read=True):
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
from __future__ import unicode_literals
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
import os
|
|
||||||
|
|
||||||
from django.core.files.base import File
|
from django.core.files.base import File
|
||||||
from django.test import TestCase, override_settings
|
from django.test import TestCase, override_settings
|
||||||
|
|
||||||
@@ -48,17 +46,6 @@ class ParserTestCase(TestCase):
|
|||||||
'Mayan EDMS Documentation' in self.document.pages.first().ocr_content.content
|
'Mayan EDMS Documentation' in self.document.pages.first().ocr_content.content
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_poppler_parser_cleanup(self):
|
|
||||||
temp_items = len(os.listdir(setting_temporary_directory.value))
|
|
||||||
|
|
||||||
parser = PopplerParser()
|
|
||||||
|
|
||||||
parser.process_document_version(self.document.latest_version)
|
|
||||||
|
|
||||||
self.assertEqual(
|
|
||||||
temp_items, len(os.listdir(setting_temporary_directory.value))
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
@override_settings(OCR_AUTO_OCR=False)
|
@override_settings(OCR_AUTO_OCR=False)
|
||||||
class TextExtractorTestCase(TestCase):
|
class TextExtractorTestCase(TestCase):
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ from django.test import TestCase, override_settings
|
|||||||
|
|
||||||
from acls.models import AccessControlList
|
from acls.models import AccessControlList
|
||||||
from common.tests.test_views import GenericViewTestCase
|
from common.tests.test_views import GenericViewTestCase
|
||||||
from common.utils import mkdtemp
|
from common.utils import fs_cleanup, mkdtemp
|
||||||
from documents.models import Document, DocumentType, NewVersionBlock
|
from documents.models import Document, DocumentType, NewVersionBlock
|
||||||
from documents.permissions import permission_document_create
|
from documents.permissions import permission_document_create
|
||||||
from documents.tests import (
|
from documents.tests import (
|
||||||
@@ -226,14 +226,13 @@ class StagingFolderTestCase(GenericViewTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(StagingFolderTestCase, self).setUp()
|
super(StagingFolderTestCase, self).setUp()
|
||||||
self.temporary_directory = mkdtemp()
|
self.temporary_directory = mkdtemp()
|
||||||
# TODO: remove temp directory after test
|
|
||||||
shutil.copy(TEST_SMALL_DOCUMENT_PATH, self.temporary_directory)
|
shutil.copy(TEST_SMALL_DOCUMENT_PATH, self.temporary_directory)
|
||||||
|
|
||||||
self.filename = os.path.basename(TEST_SMALL_DOCUMENT_PATH)
|
self.filename = os.path.basename(TEST_SMALL_DOCUMENT_PATH)
|
||||||
|
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
|
fs_cleanup(self.temporary_directory)
|
||||||
super(StagingFolderTestCase, self).tearDown()
|
super(StagingFolderTestCase, self).tearDown()
|
||||||
shutil.rmtree(self.temporary_directory)
|
|
||||||
|
|
||||||
def test_staging_folder_delete_no_permission(self):
|
def test_staging_folder_delete_no_permission(self):
|
||||||
self.login(
|
self.login(
|
||||||
|
|||||||
Reference in New Issue
Block a user