FAQ | This is a LIVE service | Changelog

Skip to content
Snippets Groups Projects
Commit b749cbe9 authored by L. Bower's avatar L. Bower
Browse files

unifying the arg parsing for full fat tests

parent cdeb9483
No related branches found
No related tags found
No related merge requests found
import argparse
import copy
import os
import sys
import unittest
from unittest import TestSuite, TestLoader
from HtmlTestRunner import HTMLTestRunner
from integration.partial.integration_test_utils import IntegrationTestUtils
from integration.test_suites.advisory_test_suite import BaseAdvisoryTestSuite
......@@ -40,11 +41,13 @@ class FullTestAdvisory(BaseAdvisoryTestSuite.AdvisoryTestSuite):
run_dict['Environment']['WORK_PATH'] = BaseAdvisoryTestSuite.AdvisoryTestSuite.TEST_OUT_PATH
run_dict['Environment']['INPUT_PATH'] = BaseAdvisoryTestSuite.AdvisoryTestSuite.TEST_OUT_PATH
run_dict['Environment']['OUTPUT_PATH'] = BaseAdvisoryTestSuite.AdvisoryTestSuite.TEST_OUT_PATH
#make sure we activate server download
run_dict['Survey']['SkipServerDownload'] = False
survey_cred_file: str = run_dict['Survey']['ServerCredentialsFile']
# survey_cred_file: str = run_dict['Survey']['ServerCredentialsFile']
# run_dict['Survey']['ServerCredentialsFile'] = survey_cred_file.replace("Cred-ODK-EIAR.json", "Cred-ODK-EIAR-NO-WRSIS.json")
run_dict['Survey']['FormEdits'].pop('WRSIS', None)
# run_dict['Survey']['FormEdits'].pop('WRSIS', None)
# may be reusing a non-timestamped output file during development, so allow extant TEST_OUT_PATH
os.makedirs(BaseAdvisoryTestSuite.AdvisoryTestSuite.TEST_OUT_PATH, exist_ok = True)
......@@ -74,18 +77,14 @@ class FullTestAdvisory(BaseAdvisoryTestSuite.AdvisoryTestSuite):
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--config', required = True)
parser.add_argument('--outdir', required = True)
parser.add_argument('--email_cred', required = True)
parser.add_argument('--run_date_type', required = False)
parser.add_argument('--custom_run_date', required = False)
parser.add_argument('unittest_args', nargs='*')
_args = parser.parse_args()
_parser = IntegrationTestUtils.build_arg_parser()
_args = _parser.parse_args()
_config_file: str = _args.config
_outdir: str = _args.outdir
_email_cred_path: str = _args.email_cred
_test_report_dir: str = _args.test_report_dir
_run_date_type: str = _args.run_date_type
_custom_run_date: str = _args.custom_run_date
......@@ -103,4 +102,10 @@ if __name__ == '__main__':
# Now set the sys.argv to the unittest_args (leaving sys.argv[0] alone)
sys.argv[1:] = _args.unittest_args
unittest.main()
tests: TestSuite = TestLoader().loadTestsFromTestCase(FullTestAdvisory)
if _test_report_dir is None:
_test_report_dir = BaseAdvisoryTestSuite.AdvisoryTestSuite.TEST_JOB_DIR
runner = HTMLTestRunner(output=_test_report_dir, combine_reports = True)
runner.run(tests)
import argparse
import copy
import os
import sys
import unittest
from unittest import TestLoader, TestSuite
from HtmlTestRunner import HTMLTestRunner
......@@ -24,9 +22,8 @@ class FullTestDeposition(BaseDepoTestSuite.DepoTestSuite):
self.set_expected_values()
# if BaseDepoTestSuite.DepoTestSuite.TEST_OUT_PATH is None \
# or not os.path.isdir(BaseDepoTestSuite.DepoTestSuite.TEST_OUT_PATH):
if True:
if BaseDepoTestSuite.DepoTestSuite.TEST_OUT_PATH is None \
or not os.path.isdir(BaseDepoTestSuite.DepoTestSuite.TEST_OUT_PATH):
FullTestDeposition.write_temp_run_config_file()
FullTestDeposition.run_depo_pipeline()
else:
......@@ -57,16 +54,10 @@ class FullTestDeposition(BaseDepoTestSuite.DepoTestSuite):
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--config', required = True)
parser.add_argument('--outdir', required = True)
parser.add_argument('--email_cred', required = True)
parser.add_argument('--test_report_dir', required = False)
parser.add_argument('--run_date_type', required = False)
parser.add_argument('--custom_run_date', required = False)
parser.add_argument('unittest_args', nargs='*')
_args = parser.parse_args()
_parser = IntegrationTestUtils.build_arg_parser()
_args = _parser.parse_args()
_config_file: str = _args.config
_outdir: str = _args.outdir
_email_cred_path: str = _args.email_cred
......
......@@ -4,8 +4,12 @@ import glob
import os
import sys
import unittest
from unittest import TestSuite, TestLoader
from HtmlTestRunner import HTMLTestRunner
from integration.partial.integration_test_utils import IntegrationTestUtils
from integration.test_suites.depo_test_suite import BaseDepoTestSuite
from integration.test_suites.env_suit_test_suite import BaseEnvSuitTestSuite
......@@ -54,18 +58,14 @@ class FullTestEnvSuit(BaseEnvSuitTestSuite.EnvSuitTestSuite):
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--config', required = True)
parser.add_argument('--outdir', required = True)
parser.add_argument('--email_cred', required = True)
parser.add_argument('--run_date_type', required = False)
parser.add_argument('--custom_run_date', required = False)
parser.add_argument('unittest_args', nargs='*')
_args = parser.parse_args()
_parser = IntegrationTestUtils.build_arg_parser()
_args = _parser.parse_args()
_config_file: str = _args.config
_outdir: str = _args.outdir
_email_cred_path: str = _args.email_cred
_test_report_dir: str = _args.test_report_dir
_run_date_type: str = _args.run_date_type
_custom_run_date: str = _args.custom_run_date
......@@ -83,4 +83,10 @@ if __name__ == '__main__':
# Now set the sys.argv to the unittest_args (leaving sys.argv[0] alone)
sys.argv[1:] = _args.unittest_args
unittest.main()
tests: TestSuite = TestLoader().loadTestsFromTestCase(FullTestEnvSuit)
if _test_report_dir is None:
_test_report_dir = BaseEnvSuitTestSuite.EnvSuitTestSuite.TEST_JOB_DIR
runner = HTMLTestRunner(output=_test_report_dir, combine_reports = True)
runner.run(tests)
......@@ -3,6 +3,9 @@ import copy
import os
import sys
import unittest
from unittest import TestSuite, TestLoader
from HtmlTestRunner import HTMLTestRunner
from integration.partial.integration_test_utils import IntegrationTestUtils
from integration.test_suites.epi_test_suite import BaseEpiTestSuite
......@@ -81,18 +84,14 @@ class FullTestEpi(BaseEpiTestSuite.EpiTestSuite):
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--config', required = True)
parser.add_argument('--outdir', required = True)
parser.add_argument('--email_cred', required = True)
parser.add_argument('--run_date_type', required = False)
parser.add_argument('--custom_run_date', required = False)
parser.add_argument('unittest_args', nargs='*')
_args = parser.parse_args()
_parser = IntegrationTestUtils.build_arg_parser()
_args = _parser.parse_args()
_config_file: str = _args.config
_outdir: str = _args.outdir
_email_cred_path: str = _args.email_cred
_test_report_dir: str = _args.test_report_dir
_run_date_type: str = _args.run_date_type
_custom_run_date: str = _args.custom_run_date
......@@ -110,4 +109,10 @@ if __name__ == '__main__':
# Now set the sys.argv to the unittest_args (leaving sys.argv[0] alone)
sys.argv[1:] = _args.unittest_args
unittest.main()
tests: TestSuite = TestLoader().loadTestsFromTestCase(FullTestEpi)
if _test_report_dir is None:
_test_report_dir = BaseEpiTestSuite.EpiTestSuite.TEST_JOB_DIR
runner = HTMLTestRunner(output=_test_report_dir, combine_reports = True)
runner.run(tests)
......@@ -3,6 +3,9 @@ import copy
import os
import sys
import unittest
from unittest import TestSuite, TestLoader
from HtmlTestRunner import HTMLTestRunner
from integration.partial.integration_test_utils import IntegrationTestUtils
from integration.test_suites.survey_test_suite import BaseSurveyTestSuite
......@@ -49,18 +52,14 @@ class FullTestSurvey(BaseSurveyTestSuite.SurveyTestSuite):
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('--config', required = True)
parser.add_argument('--outdir', required = True)
parser.add_argument('--email_cred', required = True)
parser.add_argument('--run_date_type', required = False)
parser.add_argument('--custom_run_date', required = False)
parser.add_argument('unittest_args', nargs='*')
_args = parser.parse_args()
_parser = IntegrationTestUtils.build_arg_parser()
_args = _parser.parse_args()
_config_file: str = _args.config
_outdir: str = _args.outdir
_email_cred_path: str = _args.email_cred
_test_report_dir: str = _args.test_report_dir
_run_date_type: str = _args.run_date_type
_custom_run_date: str = _args.custom_run_date
......@@ -78,4 +77,10 @@ if __name__ == '__main__':
# Now set the sys.argv to the unittest_args (leaving sys.argv[0] alone)
sys.argv[1:] = _args.unittest_args
unittest.main()
tests: TestSuite = TestLoader().loadTestsFromTestCase(FullTestSurvey)
if _test_report_dir is None:
_test_report_dir = BaseSurveyTestSuite.SurveyTestSuite.TEST_JOB_DIR
runner = HTMLTestRunner(output=_test_report_dir, combine_reports = True)
runner.run(tests)
import argparse
import datetime
import glob
import json
......@@ -19,6 +20,18 @@ class IntegrationTestUtils:
EXAMPLE_DEPO_FILE_PATH: str = TEST_ASSETS_PATH + "example_depo_run.zip"
EXAMPLE_ENV_SUIT_FILE_PATH: str = TEST_ASSETS_PATH + "example_env_suit_run.zip"
@staticmethod
def build_arg_parser() -> argparse.ArgumentParser:
parser = argparse.ArgumentParser()
parser.add_argument('--config', required = True)
parser.add_argument('--outdir', required = True)
parser.add_argument('--email_cred', required = True)
parser.add_argument('--test_report_dir', required = False)
parser.add_argument('--run_date_type', required = False)
parser.add_argument('--custom_run_date', required = False)
parser.add_argument('unittest_args', nargs='*')
return parser
@staticmethod
def load_json_file(file: str) -> dict:
with open(file) as config_file:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment