import sys
from unittest import TestLoader, TestSuite

from HtmlTestRunner import HTMLTestRunner


from integration.partial.test_deposition import TestDeposition
from integration.partial.test_env_suit import TestEnvSuit
from integration.partial.test_survey import TestSurvey
from integration.partial.test_advisory import TestAdvisory


def run_tests_and_report(output: str):
    tests: TestSuite = TestLoader().loadTestsFromTestCase(TestDeposition)
    tests.addTests(TestLoader().loadTestsFromTestCase(TestEnvSuit))
    tests.addTests(TestLoader().loadTestsFromTestCase(TestSurvey))
    tests.addTests(TestLoader().loadTestsFromTestCase(TestAdvisory))
    runner = HTMLTestRunner(output=output, combine_reports = True)

    runner.run(tests)


if __name__ == '__main__':
    run_tests_and_report(sys.argv[1])