From 301bb5461613436d2178ff41599b538c530c6183 Mon Sep 17 00:00:00 2001 From: Javed Habib Date: Sat, 11 May 2024 16:11:42 +0530 Subject: [PATCH] rename core to service --- setup.py | 4 +- taskmaster | 2 +- tesk/{tesk_core => service}/README.md | 0 tesk/{tesk_core => service}/Util.py | 0 tesk/{tesk_core => service}/__init__.py | 0 tesk/{tesk_core => service}/exception.py | 0 tesk/{tesk_core => service}/filer.py | 8 ++-- tesk/{tesk_core => service}/filer_class.py | 4 +- tesk/{tesk_core => service}/filer_s3.py | 2 +- tesk/{tesk_core => service}/job.py | 2 +- tesk/{tesk_core => service}/path.py | 2 +- tesk/{tesk_core => service}/pvc.py | 2 +- tesk/{tesk_core => service}/taskmaster.py | 6 +-- tesk/{tesk_core => service}/transput.py | 0 .../{tesk_core => service}/FilerClassTest.py | 12 ++--- .../{tesk_core => service}/TaskMasterTest.py | 12 ++--- .../{tesk_core => service}/assertThrows.py | 0 .../resources/copyDirTest/src/3.txt | 0 .../resources/copyDirTest/src/a/1.txt | 0 .../resources/copyDirTest/src/a/2.txt | 0 .../resources/inputFile.json | 0 .../resources/test_config | 0 .../{tesk_core => service}/test_filer.py | 32 ++++++------- .../test_filer_ftp_pytest.py | 2 +- .../test_filer_general_pytest.py | 4 +- .../test_filer_http_pytest.py | 2 +- .../{tesk_core => service}/test_job.py | 20 ++++---- .../{tesk_core => service}/test_s3_filer.py | 12 ++--- .../{tesk_core => service}/test_taskmaster.py | 46 +++++++++---------- tox.ini | 6 +-- 30 files changed, 90 insertions(+), 90 deletions(-) rename tesk/{tesk_core => service}/README.md (100%) rename tesk/{tesk_core => service}/Util.py (100%) rename tesk/{tesk_core => service}/__init__.py (100%) rename tesk/{tesk_core => service}/exception.py (100%) rename tesk/{tesk_core => service}/filer.py (98%) rename tesk/{tesk_core => service}/filer_class.py (98%) rename tesk/{tesk_core => service}/filer_s3.py (99%) rename tesk/{tesk_core => service}/job.py (99%) rename tesk/{tesk_core => service}/path.py (97%) rename tesk/{tesk_core => service}/pvc.py (98%) rename tesk/{tesk_core => service}/taskmaster.py (98%) rename tesk/{tesk_core => service}/transput.py (100%) rename tests/unit_test/{tesk_core => service}/FilerClassTest.py (92%) rename tests/unit_test/{tesk_core => service}/TaskMasterTest.py (81%) rename tests/unit_test/{tesk_core => service}/assertThrows.py (100%) rename tests/unit_test/{tesk_core => service}/resources/copyDirTest/src/3.txt (100%) rename tests/unit_test/{tesk_core => service}/resources/copyDirTest/src/a/1.txt (100%) rename tests/unit_test/{tesk_core => service}/resources/copyDirTest/src/a/2.txt (100%) rename tests/unit_test/{tesk_core => service}/resources/inputFile.json (100%) rename tests/unit_test/{tesk_core => service}/resources/test_config (100%) rename tests/unit_test/{tesk_core => service}/test_filer.py (91%) rename tests/unit_test/{tesk_core => service}/test_filer_ftp_pytest.py (96%) rename tests/unit_test/{tesk_core => service}/test_filer_general_pytest.py (92%) rename tests/unit_test/{tesk_core => service}/test_filer_http_pytest.py (95%) rename tests/unit_test/{tesk_core => service}/test_job.py (95%) rename tests/unit_test/{tesk_core => service}/test_s3_filer.py (95%) rename tests/unit_test/{tesk_core => service}/test_taskmaster.py (79%) diff --git a/setup.py b/setup.py index daec5703..3b450ebe 100644 --- a/setup.py +++ b/setup.py @@ -65,8 +65,8 @@ entry_points={ 'console_scripts' : [ - 'filer = tesk_core.filer:main', - 'taskmaster = tesk_core.taskmaster:main' + 'filer = service.filer:main', + 'taskmaster = service.taskmaster:main' ] }, test_suite='tests', diff --git a/taskmaster b/taskmaster index ca1b31d6..1dbb5eec 100755 --- a/taskmaster +++ b/taskmaster @@ -1,3 +1,3 @@ # TODO: Add to makefile after undertanding what its doing 😕 -PYTHONPATH="tesk" python tesk/tesk_core/taskmaster.py "$@" +PYTHONPATH="tesk" python tesk/service/taskmaster.py "$@" diff --git a/tesk/tesk_core/README.md b/tesk/service/README.md similarity index 100% rename from tesk/tesk_core/README.md rename to tesk/service/README.md diff --git a/tesk/tesk_core/Util.py b/tesk/service/Util.py similarity index 100% rename from tesk/tesk_core/Util.py rename to tesk/service/Util.py diff --git a/tesk/tesk_core/__init__.py b/tesk/service/__init__.py similarity index 100% rename from tesk/tesk_core/__init__.py rename to tesk/service/__init__.py diff --git a/tesk/tesk_core/exception.py b/tesk/service/exception.py similarity index 100% rename from tesk/tesk_core/exception.py rename to tesk/service/exception.py diff --git a/tesk/tesk_core/filer.py b/tesk/service/filer.py similarity index 98% rename from tesk/tesk_core/filer.py rename to tesk/service/filer.py index d2fef8b8..c0ddfbc6 100755 --- a/tesk/tesk_core/filer.py +++ b/tesk/service/filer.py @@ -12,12 +12,12 @@ import netrc import requests import gzip -from tesk_core.exception import UnknownProtocol, FileProtocolDisabled +from service.exception import UnknownProtocol, FileProtocolDisabled import shutil from glob import glob -from tesk_core.path import containerPath, getPath, fileEnabled -from tesk_core.transput import Type, Transput, urlparse -from tesk_core.filer_s3 import S3Transput +from service.path import containerPath, getPath, fileEnabled +from service.transput import Type, Transput, urlparse +from service.filer_s3 import S3Transput diff --git a/tesk/tesk_core/filer_class.py b/tesk/service/filer_class.py similarity index 98% rename from tesk/tesk_core/filer_class.py rename to tesk/service/filer_class.py index 980adbbf..85e4ac85 100644 --- a/tesk/tesk_core/filer_class.py +++ b/tesk/service/filer_class.py @@ -1,6 +1,6 @@ import json -from tesk_core import path -from tesk_core.path import fileEnabled +from service import path +from service.path import fileEnabled class Filer: diff --git a/tesk/tesk_core/filer_s3.py b/tesk/service/filer_s3.py similarity index 99% rename from tesk/tesk_core/filer_s3.py rename to tesk/service/filer_s3.py index 5ed50157..f3c6bcdb 100644 --- a/tesk/tesk_core/filer_s3.py +++ b/tesk/service/filer_s3.py @@ -4,7 +4,7 @@ import re import botocore import boto3 -from tesk_core.transput import Transput, Type +from service.transput import Transput, Type class S3Transput(Transput): def __init__(self, path, url, ftype): diff --git a/tesk/tesk_core/job.py b/tesk/service/job.py similarity index 99% rename from tesk/tesk_core/job.py rename to tesk/service/job.py index a1648314..6f57ba3d 100644 --- a/tesk/tesk_core/job.py +++ b/tesk/service/job.py @@ -3,7 +3,7 @@ from datetime import datetime, timezone from kubernetes import client, config from kubernetes.client.rest import ApiException -from tesk_core.Util import pprint +from service.Util import pprint logging.basicConfig(format='%(message)s', level=logging.INFO) diff --git a/tesk/tesk_core/path.py b/tesk/service/path.py similarity index 97% rename from tesk/tesk_core/path.py rename to tesk/service/path.py index 00a60a44..bd25c632 100644 --- a/tesk/tesk_core/path.py +++ b/tesk/service/path.py @@ -1,6 +1,6 @@ import os from os.path import relpath -from tesk_core.exception import InvalidHostPath +from service.exception import InvalidHostPath try: from urllib.parse import urlparse except ImportError: diff --git a/tesk/tesk_core/pvc.py b/tesk/service/pvc.py similarity index 98% rename from tesk/tesk_core/pvc.py rename to tesk/service/pvc.py index abf8e61b..15f17b11 100644 --- a/tesk/tesk_core/pvc.py +++ b/tesk/service/pvc.py @@ -1,6 +1,6 @@ from kubernetes import client, config from kubernetes.client.rest import ApiException -from tesk_core.Util import pprint +from service.Util import pprint import os import logging diff --git a/tesk/tesk_core/taskmaster.py b/tesk/service/taskmaster.py similarity index 98% rename from tesk/tesk_core/taskmaster.py rename to tesk/service/taskmaster.py index 0d1f182b..3b5c6673 100755 --- a/tesk/tesk_core/taskmaster.py +++ b/tesk/service/taskmaster.py @@ -8,9 +8,9 @@ import logging import gzip from kubernetes import client, config -from tesk_core.job import Job -from tesk_core.pvc import PVC -from tesk_core.filer_class import Filer +from service.job import Job +from service.pvc import PVC +from service.filer_class import Filer created_jobs = [] poll_interval = 5 diff --git a/tesk/tesk_core/transput.py b/tesk/service/transput.py similarity index 100% rename from tesk/tesk_core/transput.py rename to tesk/service/transput.py diff --git a/tests/unit_test/tesk_core/FilerClassTest.py b/tests/unit_test/service/FilerClassTest.py similarity index 92% rename from tests/unit_test/tesk_core/FilerClassTest.py rename to tests/unit_test/service/FilerClassTest.py index 67868b8a..bef8a02b 100644 --- a/tests/unit_test/tesk_core/FilerClassTest.py +++ b/tests/unit_test/service/FilerClassTest.py @@ -2,9 +2,9 @@ import unittest import os -from tesk_core.filer_class import Filer -from tesk_core import path -from tesk_core.Util import pprint +from service.filer_class import Filer +from service import path +from service.Util import pprint try: from unittest.mock import patch # Python 3 @UnresolvedImport @@ -14,9 +14,9 @@ -@patch('tesk_core.path.HOST_BASE_PATH' , '/home/tfga/workspace/cwl-tes') -@patch('tesk_core.path.CONTAINER_BASE_PATH' , '/transfer') -@patch('tesk_core.path.TRANSFER_PVC_NAME' , 'transfer-pvc') +@patch('service.path.HOST_BASE_PATH' , '/home/tfga/workspace/cwl-tes') +@patch('service.path.CONTAINER_BASE_PATH' , '/transfer') +@patch('service.path.TRANSFER_PVC_NAME' , 'transfer-pvc') @patch.dict(os.environ, { "AWS_SHARED_CREDENTIALS_FILE": "/aws/credentials", diff --git a/tests/unit_test/tesk_core/TaskMasterTest.py b/tests/unit_test/service/TaskMasterTest.py similarity index 81% rename from tests/unit_test/tesk_core/TaskMasterTest.py rename to tests/unit_test/service/TaskMasterTest.py index 242740f5..0f20a89d 100644 --- a/tests/unit_test/tesk_core/TaskMasterTest.py +++ b/tests/unit_test/service/TaskMasterTest.py @@ -1,5 +1,5 @@ import unittest -from tesk_core.taskmaster import newParser, run_task, newLogger +from service.taskmaster import newParser, run_task, newLogger from argparse import Namespace import json import logging @@ -64,11 +64,11 @@ def test_pullPolicyAlways(self): - @patch('tesk_core.taskmaster.args' , Namespace(debug=True, namespace='default', pull_policy_always=True)) - @patch('tesk_core.taskmaster.logger' , newLogger(logging.DEBUG)) - @patch('tesk_core.taskmaster.PVC.create' , pvcCreateMock) - @patch('tesk_core.taskmaster.PVC.delete' , pvcDeleteMock) - @patch('tesk_core.taskmaster.Job.run_to_completion' , jobRunToCompletionMock) + @patch('service.taskmaster.args' , Namespace(debug=True, namespace='default', pull_policy_always=True)) + @patch('service.taskmaster.logger' , newLogger(logging.DEBUG)) + @patch('service.taskmaster.PVC.create' , pvcCreateMock) + @patch('service.taskmaster.PVC.delete' , pvcDeleteMock) + @patch('service.taskmaster.Job.run_to_completion' , jobRunToCompletionMock) def test_run_task(self): with open('tests/resources/inputFile.json') as fh: diff --git a/tests/unit_test/tesk_core/assertThrows.py b/tests/unit_test/service/assertThrows.py similarity index 100% rename from tests/unit_test/tesk_core/assertThrows.py rename to tests/unit_test/service/assertThrows.py diff --git a/tests/unit_test/tesk_core/resources/copyDirTest/src/3.txt b/tests/unit_test/service/resources/copyDirTest/src/3.txt similarity index 100% rename from tests/unit_test/tesk_core/resources/copyDirTest/src/3.txt rename to tests/unit_test/service/resources/copyDirTest/src/3.txt diff --git a/tests/unit_test/tesk_core/resources/copyDirTest/src/a/1.txt b/tests/unit_test/service/resources/copyDirTest/src/a/1.txt similarity index 100% rename from tests/unit_test/tesk_core/resources/copyDirTest/src/a/1.txt rename to tests/unit_test/service/resources/copyDirTest/src/a/1.txt diff --git a/tests/unit_test/tesk_core/resources/copyDirTest/src/a/2.txt b/tests/unit_test/service/resources/copyDirTest/src/a/2.txt similarity index 100% rename from tests/unit_test/tesk_core/resources/copyDirTest/src/a/2.txt rename to tests/unit_test/service/resources/copyDirTest/src/a/2.txt diff --git a/tests/unit_test/tesk_core/resources/inputFile.json b/tests/unit_test/service/resources/inputFile.json similarity index 100% rename from tests/unit_test/tesk_core/resources/inputFile.json rename to tests/unit_test/service/resources/inputFile.json diff --git a/tests/unit_test/tesk_core/resources/test_config b/tests/unit_test/service/resources/test_config similarity index 100% rename from tests/unit_test/tesk_core/resources/test_config rename to tests/unit_test/service/resources/test_config diff --git a/tests/unit_test/tesk_core/test_filer.py b/tests/unit_test/service/test_filer.py similarity index 91% rename from tests/unit_test/tesk_core/test_filer.py rename to tests/unit_test/service/test_filer.py index 5aea8d0a..da2347b1 100644 --- a/tests/unit_test/tesk_core/test_filer.py +++ b/tests/unit_test/service/test_filer.py @@ -1,13 +1,13 @@ import unittest import logging import os -from tesk_core.filer import newTransput, FTPTransput, HTTPTransput, FileTransput,\ +from service.filer import newTransput, FTPTransput, HTTPTransput, FileTransput,\ process_file, logConfig, getPath, copyDir, copyFile, ftp_check_directory,\ subfolders_in -from tesk_core.exception import UnknownProtocol, InvalidHostPath,\ +from service.exception import UnknownProtocol, InvalidHostPath,\ FileProtocolDisabled -from tesk_core.path import containerPath -from tesk_core.filer_s3 import S3Transput +from service.path import containerPath +from service.filer_s3 import S3Transput from assertThrows import AssertThrowsMixin from fs.opener import open_fs from io import StringIO @@ -32,16 +32,16 @@ def stripLines(txt): return '\n'.join([line.strip() for line in txt.splitlines()[1:]]) -@patch('tesk_core.path.HOST_BASE_PATH', '/home/tfga/workspace/cwl-tes') -@patch('tesk_core.path.CONTAINER_BASE_PATH', '/transfer') +@patch('service.path.HOST_BASE_PATH', '/home/tfga/workspace/cwl-tes') +@patch('service.path.CONTAINER_BASE_PATH', '/transfer') class FilerTest(unittest.TestCase, AssertThrowsMixin): @classmethod def setUpClass(cls): logConfig(logging.DEBUG) # Doesn't work... - @patch('tesk_core.filer.copyDir') - @patch('tesk_core.filer.shutil.copy') + @patch('service.filer.copyDir') + @patch('service.filer.shutil.copy') def test_download_file(self, copyMock, copyDirMock): filedata = { "url": "file:///home/tfga/workspace/cwl-tes/tmphrtip1o8/md5", @@ -62,8 +62,8 @@ def test_download_file(self, copyMock, copyDirMock): '/var/lib/cwl/stgda974802-fa81-4f0b-' '8fe4-341d5655af4b/md5') - @patch('tesk_core.filer.copyDir') - @patch('tesk_core.filer.shutil.copy') + @patch('service.filer.copyDir') + @patch('service.filer.shutil.copy') def test_download_dir(self, copyMock, copyDirMock): filedata = { "url": "file:///home/tfga/workspace/cwl-tes/tmphrtip1o8/", @@ -78,8 +78,8 @@ def test_download_dir(self, copyMock, copyDirMock): copyDirMock.assert_called_once_with('/transfer/tmphrtip1o8', '/TclSZU') - @patch('tesk_core.filer.copyDir') - @patch('tesk_core.filer.shutil.copy') + @patch('service.filer.copyDir') + @patch('service.filer.shutil.copy') def test_upload_dir(self, copyMock, copyDirMock): filedata = { "url": "file:///home/tfga/workspace/cwl-tes/tmphrtip1o8/", @@ -94,8 +94,8 @@ def test_upload_dir(self, copyMock, copyDirMock): copyDirMock.assert_called_once_with('/TclSZU', '/transfer/tmphrtip1o8') - @patch('tesk_core.filer.copyDir') - @patch('tesk_core.filer.copyFile') + @patch('service.filer.copyDir') + @patch('service.filer.copyFile') def test_upload_file(self, copyFileMock, copyDirMock): filedata = { @@ -113,8 +113,8 @@ def test_upload_file(self, copyFileMock, copyDirMock): , '/transfer/tmphrtip1o8/md5') - @patch('tesk_core.filer.copyDir') - @patch('tesk_core.filer.copyFile') + @patch('service.filer.copyDir') + @patch('service.filer.copyFile') def test_upload_file_glob(self, copyFileMock, copyDirMock): filedata = { diff --git a/tests/unit_test/tesk_core/test_filer_ftp_pytest.py b/tests/unit_test/service/test_filer_ftp_pytest.py similarity index 96% rename from tests/unit_test/tesk_core/test_filer_ftp_pytest.py rename to tests/unit_test/service/test_filer_ftp_pytest.py index 872b4892..78448010 100755 --- a/tests/unit_test/tesk_core/test_filer_ftp_pytest.py +++ b/tests/unit_test/service/test_filer_ftp_pytest.py @@ -4,7 +4,7 @@ import ftplib import os -from tesk_core.filer import ( +from service.filer import ( FTPTransput, Type, ftp_login, diff --git a/tests/unit_test/tesk_core/test_filer_general_pytest.py b/tests/unit_test/service/test_filer_general_pytest.py similarity index 92% rename from tests/unit_test/tesk_core/test_filer_general_pytest.py rename to tests/unit_test/service/test_filer_general_pytest.py index 49f0782b..5573b76c 100755 --- a/tests/unit_test/tesk_core/test_filer_general_pytest.py +++ b/tests/unit_test/service/test_filer_general_pytest.py @@ -7,7 +7,7 @@ import pytest -from tesk_core.filer import ( +from service.filer import ( process_file, copyContent, FileProtocolDisabled @@ -35,7 +35,7 @@ def test_process_file_with_scheme(mocker): 'path': '.', 'type': 'FILE', } - mock_new_Trans = mocker.patch('tesk_core.filer.newTransput') + mock_new_Trans = mocker.patch('service.filer.newTransput') process_file('inputs', filedata) mock_new_Trans.assert_called_once_with('http','www.foo.bar') diff --git a/tests/unit_test/tesk_core/test_filer_http_pytest.py b/tests/unit_test/service/test_filer_http_pytest.py similarity index 95% rename from tests/unit_test/tesk_core/test_filer_http_pytest.py rename to tests/unit_test/service/test_filer_http_pytest.py index 2013568c..0f2fcf0d 100755 --- a/tests/unit_test/tesk_core/test_filer_http_pytest.py +++ b/tests/unit_test/service/test_filer_http_pytest.py @@ -4,7 +4,7 @@ import os from unittest import mock -from tesk_core.filer import ( +from service.filer import ( HTTPTransput, Type ) diff --git a/tests/unit_test/tesk_core/test_job.py b/tests/unit_test/service/test_job.py similarity index 95% rename from tests/unit_test/tesk_core/test_job.py rename to tests/unit_test/service/test_job.py index 0ca19ad1..50abaa9d 100644 --- a/tests/unit_test/tesk_core/test_job.py +++ b/tests/unit_test/service/test_job.py @@ -4,8 +4,8 @@ import datetime from unittest.mock import patch from dateutil.tz import tzutc -from tesk_core import taskmaster -from tesk_core.job import Job +from service import taskmaster +from service.job import Job from argparse import Namespace from datetime import timezone from kubernetes.client.rest import ApiException @@ -139,7 +139,7 @@ def test_job(self): self.assertEqual(job.namespace, 'default') @patch("kubernetes.client.BatchV1Api.create_namespaced_job") - @patch("tesk_core.job.Job.get_status", side_effect=[("Running", True),("Running", True),("Running", True), + @patch("service.job.Job.get_status", side_effect=[("Running", True),("Running", True),("Running", True), ("Running", True),("Running", True),("Complete", True)]) def test_run_to_completion_success(self, mock_get_status, mock_create_namespaced_job): """ @@ -152,10 +152,10 @@ def test_run_to_completion_success(self, mock_get_status, mock_create_namespaced taskmaster.args.pod_timeout) self.assertEqual(status, "Complete") - @patch("tesk_core.job.Job.delete") - @patch("tesk_core.taskmaster.check_cancelled", return_value=True) + @patch("service.job.Job.delete") + @patch("service.taskmaster.check_cancelled", return_value=True) @patch("kubernetes.client.BatchV1Api.create_namespaced_job") - @patch("tesk_core.job.Job.get_status", side_effect=[("Running", True)]) + @patch("service.job.Job.get_status", side_effect=[("Running", True)]) def test_run_to_completion_cancelled(self, mock_get_status, mock_create_namespaced_job, mock_check_cancelled, mock_job_delete): """ @@ -168,9 +168,9 @@ def test_run_to_completion_cancelled(self, mock_get_status, mock_create_namespac taskmaster.args.pod_timeout) self.assertEqual(status, "Cancelled") - @patch("tesk_core.taskmaster.check_cancelled", return_value=False) + @patch("service.taskmaster.check_cancelled", return_value=False) @patch("kubernetes.client.BatchV1Api.create_namespaced_job", side_effect=ApiException(status=409,reason="conflict")) - @patch("tesk_core.job.Job.get_status", side_effect=[("Complete", True)]) + @patch("service.job.Job.get_status", side_effect=[("Complete", True)]) @patch("kubernetes.client.BatchV1Api.read_namespaced_job", side_effect=read_namespaced_job_running) def test_run_to_completion_check_conflict_exception(self, mock_get_status, mock_read_namespaced_job, mock_check_cancelled,mock_create_namespaced_job): @@ -199,8 +199,8 @@ def test_run_to_completion_check_other_K8_exception(self,mock_create_namespaced_ @patch("kubernetes.client.CoreV1Api.list_namespaced_pod") @patch("kubernetes.client.BatchV1Api.read_namespaced_job", side_effect=read_namespaced_job_error) - @patch("tesk_core.job.Job.delete") - @patch("tesk_core.taskmaster.check_cancelled", return_value=False) + @patch("service.job.Job.delete") + @patch("service.taskmaster.check_cancelled", return_value=False) @patch("kubernetes.client.BatchV1Api.create_namespaced_job") def test_run_to_completion_error(self, mock_create_namespaced_job, mock_check_cancelled, mock_job_delete,mock_read_namespaced_job,mock_list_namespaced_pod ): diff --git a/tests/unit_test/tesk_core/test_s3_filer.py b/tests/unit_test/service/test_s3_filer.py similarity index 95% rename from tests/unit_test/tesk_core/test_s3_filer.py rename to tests/unit_test/service/test_s3_filer.py index ce5a5b61..e1e4e272 100644 --- a/tests/unit_test/tesk_core/test_s3_filer.py +++ b/tests/unit_test/service/test_s3_filer.py @@ -1,8 +1,8 @@ import os import pytest import boto3 -from tesk_core.filer_s3 import S3Transput -#from tesk_core.extract_endpoint import extract_endpoint +from service.filer_s3 import S3Transput +#from service.extract_endpoint import extract_endpoint from moto import mock_s3 from unittest.mock import patch, mock_open @@ -44,7 +44,7 @@ def test_check_if_bucket_exists(moto_boto, path, url, ftype, expected): trans = S3Transput(path, url, ftype) assert trans.check_if_bucket_exists(client) == expected -# @patch('tesk_core.filer.os.makedirs') +# @patch('service.filer.os.makedirs') # @patch('builtins.open') # @patch('s3transfer.utils.OSUtils.rename_file') @pytest.mark.parametrize("path, url, ftype,expected", [ @@ -64,10 +64,10 @@ def test_s3_download_file( moto_boto, path, url, ftype, expected, fs, caplog): -@patch('tesk_core.filer.os.makedirs') +@patch('service.filer.os.makedirs') @patch('builtins.open') @patch('s3transfer.utils.OSUtils.rename_file') -#@patch("tesk_core.filer_s3.extract_endpoint", return_value="http://s3.amazonaws.com") +#@patch("service.filer_s3.extract_endpoint", return_value="http://s3.amazonaws.com") @pytest.mark.parametrize("path, url, ftype,expected", [ ("filer_test/", "s3://tesk/folder1/","DIRECTORY",0), ("filer_test/", "s3://tesk/folder10/folder20","DIRECTORY",1) @@ -151,7 +151,7 @@ def test_upload_directory_for_unknown_file_type(moto_boto, fs, monkeypatch, capl assert "Object is neither file or directory" in caplog.text -@patch("tesk_core.filer.os.path.exists", return_value=1) +@patch("service.filer.os.path.exists", return_value=1) def test_extract_url_from_config_file(mock_path_exists): """ Testing extraction of endpoint url from default file location diff --git a/tests/unit_test/tesk_core/test_taskmaster.py b/tests/unit_test/service/test_taskmaster.py similarity index 79% rename from tests/unit_test/tesk_core/test_taskmaster.py rename to tests/unit_test/service/test_taskmaster.py index d780cb4b..d2b49b99 100644 --- a/tests/unit_test/tesk_core/test_taskmaster.py +++ b/tests/unit_test/service/test_taskmaster.py @@ -3,10 +3,10 @@ import unittest from unittest.mock import patch from argparse import Namespace -from tesk_core import taskmaster -from tesk_core.filer_class import Filer +from service import taskmaster +from service.filer_class import Filer from kubernetes.client.rest import ApiException -from tesk_core.taskmaster import init_pvc, PVC, run_executor,\ +from service.taskmaster import init_pvc, PVC, run_executor,\ generate_mounts, append_mount, dirname, run_task,newParser @@ -26,9 +26,9 @@ def setUp(self): taskmaster.created_jobs = [] - @patch("tesk_core.taskmaster.PVC.create") - @patch("tesk_core.taskmaster.Job.run_to_completion", return_value="Complete") - @patch("tesk_core.taskmaster.logger") + @patch("service.taskmaster.PVC.create") + @patch("service.taskmaster.Job.run_to_completion", return_value="Complete") + @patch("service.taskmaster.logger") def test_pvc_creation(self, mock_logger, mock_run_to_compl, mock_pvc_create): """ Testing to check if the PVC volume was created successfully @@ -50,10 +50,10 @@ def test_create_pvc_check_for_other_exceptions(self, mock_create_namespaced_pvc) self.pvc.create() - @patch("tesk_core.taskmaster.PVC.delete") - @patch("tesk_core.taskmaster.PVC.create") - @patch("tesk_core.taskmaster.Job.run_to_completion", return_value="error") - @patch("tesk_core.taskmaster.logger") + @patch("service.taskmaster.PVC.delete") + @patch("service.taskmaster.PVC.create") + @patch("service.taskmaster.Job.run_to_completion", return_value="error") + @patch("service.taskmaster.logger") def test_pvc_failure(self, mock_logger, run_to_compl, mock_pvc_create, mock_pvc_delete): """ Testcase for finding if the PVC creation failed with exit 0 @@ -61,19 +61,19 @@ def test_pvc_failure(self, mock_logger, run_to_compl, mock_pvc_create, mock_pvc_ self.assertRaises(SystemExit, init_pvc, self.data, self.filer) - @patch("tesk_core.taskmaster.PVC.delete") - @patch("tesk_core.taskmaster.Job.delete") - @patch("tesk_core.taskmaster.Job.run_to_completion", return_value="Error") - @patch("tesk_core.taskmaster.logger") + @patch("service.taskmaster.PVC.delete") + @patch("service.taskmaster.Job.delete") + @patch("service.taskmaster.Job.run_to_completion", return_value="Error") + @patch("service.taskmaster.logger") def test_run_executor_failure(self, mock_logger, mock_run_to_compl, mock_job_delete, mock_pvc_delete): """ """ self.assertRaises(SystemExit, run_executor, self.data['executors'][0],taskmaster.args.namespace) - @patch("tesk_core.taskmaster.PVC") - @patch("tesk_core.taskmaster.Job.run_to_completion", return_value="Complete") - @patch("tesk_core.taskmaster.logger") + @patch("service.taskmaster.PVC") + @patch("service.taskmaster.Job.run_to_completion", return_value="Complete") + @patch("service.taskmaster.logger") def test_run_executor_complete(self, mock_logger, mock_run_to_compl, mock_pvc): """ @@ -82,14 +82,14 @@ def test_run_executor_complete(self, mock_logger, mock_run_to_compl, mock_pvc): - @patch("tesk_core.taskmaster.logger") + @patch("service.taskmaster.logger") def test_generate_mount(self, mock_logger): """ """ self.assertIsInstance(generate_mounts(self.data, self.pvc),list) - @patch("tesk_core.taskmaster.logger") + @patch("service.taskmaster.logger") def test_append_mount(self, mock_logger): """ @@ -102,10 +102,10 @@ def test_append_mount(self, mock_logger): self.assertEqual(volume_mounts,[{'name': task_volume_name, 'mountPath': '/some/volume', 'subPath': 'dir0'}]) - @patch('tesk_core.taskmaster.logger') - @patch('tesk_core.taskmaster.PVC.create') - @patch('tesk_core.taskmaster.PVC.delete') - @patch('tesk_core.taskmaster.Job.run_to_completion', return_value='Complete' ) + @patch('service.taskmaster.logger') + @patch('service.taskmaster.PVC.create') + @patch('service.taskmaster.PVC.delete') + @patch('service.taskmaster.Job.run_to_completion', return_value='Complete' ) def test_run_task(self, mock_job, mock_pvc_create, mock_pvc_delete, mock_logger): """ diff --git a/tox.ini b/tox.ini index 31f37a68..c884f13e 100644 --- a/tox.ini +++ b/tox.ini @@ -19,7 +19,7 @@ deps = codecov py{38,39,310,311}-lint: pylint commands = - py{38,39,310,311}-unit: pytest -v --cov-report xml --cov tesk_core {posargs} tests + py{38,39,310,311}-unit: pytest -v --cov-report xml --cov service {posargs} tests py{38,39,310,311}-unit: codecov - py{38,39,310,311}-lint: python -m pylint --exit-zero -d missing-docstring,line-too-long,C tesk_core - py{38,39,310,311}-lint: python -m pylint -E tesk_core + py{38,39,310,311}-lint: python -m pylint --exit-zero -d missing-docstring,line-too-long,C service + py{38,39,310,311}-lint: python -m pylint -E service