Merge remote-tracking branch 'origin/versions/micro' into versions/minor
Signed-off-by: Roberto Rosario <roberto.rosario@mayan-edms.com>
This commit is contained in:
@@ -4,6 +4,7 @@ from pathlib2 import Path
|
||||
import shutil
|
||||
|
||||
from mayan.apps.common.tests.base import BaseTestCase
|
||||
from mayan.apps.common.tests.utils import mute_stdout
|
||||
from mayan.apps.storage.utils import mkdtemp
|
||||
|
||||
from ..classes import Dependency, Provider
|
||||
@@ -18,36 +19,48 @@ class TestDependency(Dependency):
|
||||
|
||||
|
||||
class DependencyClassTestCase(BaseTestCase):
|
||||
def test_file_patching(self):
|
||||
test_replace_text = 'replaced_text'
|
||||
def setUp(self):
|
||||
super(DependencyClassTestCase, self).setUp()
|
||||
|
||||
temporary_directory = mkdtemp()
|
||||
path_temporary_directory = Path(temporary_directory)
|
||||
path_test_file = path_temporary_directory / 'test_file.css'
|
||||
self.test_replace_text = 'replaced_text'
|
||||
|
||||
with path_test_file.open(mode='w') as file_object:
|
||||
self.temporary_directory = mkdtemp()
|
||||
self.path_temporary_directory = Path(self.temporary_directory)
|
||||
self.path_test_file = self.path_temporary_directory / 'test_file.css'
|
||||
|
||||
with self.path_test_file.open(mode='w') as file_object:
|
||||
file_object.write(
|
||||
'@import url("https://fonts.googleapis.com/css?family=Lato:400,700,400italic");'
|
||||
)
|
||||
self.test_dependency = TestDependency(
|
||||
name='test_dependency', module=__name__
|
||||
)
|
||||
|
||||
dependency = TestDependency(name='test_dependency', module=__name__)
|
||||
def tearDown(self):
|
||||
super(DependencyClassTestCase, self).tearDown()
|
||||
shutil.rmtree(self.temporary_directory, ignore_errors=True)
|
||||
|
||||
def test_file_patching(self):
|
||||
replace_list = [
|
||||
{
|
||||
'filename_pattern': '*',
|
||||
'content_patterns': [
|
||||
{
|
||||
'search': '"https://fonts.googleapis.com/css?family=Lato:400,700,400italic"',
|
||||
'replace': test_replace_text,
|
||||
'replace': self.test_replace_text,
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
dependency.patch_files(path=temporary_directory, replace_list=replace_list)
|
||||
with mute_stdout():
|
||||
self.test_dependency.patch_files(
|
||||
path=self.temporary_directory, replace_list=replace_list
|
||||
)
|
||||
|
||||
with path_test_file.open(mode='r') as file_object:
|
||||
with self.path_test_file.open(mode='r') as file_object:
|
||||
final_text = file_object.read()
|
||||
|
||||
shutil.rmtree(temporary_directory, ignore_errors=True)
|
||||
|
||||
self.assertEqual(final_text, '@import url({});'.format(test_replace_text))
|
||||
self.assertEqual(
|
||||
final_text, '@import url({});'.format(self.test_replace_text)
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user