diff --git a/.gitignore b/.gitignore index b3b495e..3f46fba 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,8 @@ __pycache__/ .idea/ app/ +.test_folder/ */coverage/ *.log .coverage + diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..3ccb40e --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,13 @@ +pytest: + image: python:3.10-alpine + only: + - main + script: + - sh tests/start_tests_gitlab.sh + artifacts: + name: "$CI_JOB_NAME" + reports: + junit: report.xml + coverage_report: + coverage_format: cobertura + path: coverage.xml diff --git a/tests/start_tests.sh b/tests/start_tests.sh index 7c64f2f..029d838 100755 --- a/tests/start_tests.sh +++ b/tests/start_tests.sh @@ -1 +1,8 @@ -python3.10 -m pytest --no-header -rfp --cov --cov-report html:tests/coverage --cov-report xml:tests/coverage/coverage.xml tests/ \ No newline at end of file +python3.10 -m pytest \ + --no-header \ + -rfp \ + --cov \ + --cov-report html:tests/coverage \ + --cov-report xml:tests/coverage/coverage.xml \ + --junitxml=tests/coverage/report.xml \ + tests/ diff --git a/tests/start_tests_gitlab.sh b/tests/start_tests_gitlab.sh new file mode 100755 index 0000000..6849de3 --- /dev/null +++ b/tests/start_tests_gitlab.sh @@ -0,0 +1,7 @@ +apk add --update libmagic +pip3.10 install -r requirements.txt + +sh tests/start_tests.sh + +cp tests/coverage/coverage.xml ./coverage.xml +cp tests/coverage/report.xml ./report.xml diff --git a/tests/test_with_real_data.py b/tests/test_with_real_data.py index 19038ed..e05068c 100644 --- a/tests/test_with_real_data.py +++ b/tests/test_with_real_data.py @@ -15,11 +15,31 @@ class TestSamsung(unittest.TestCase): for image in meta_data: assert image.make == "samsung" - def test_a52s(self): - pass + image = next((image for image in meta_data if image.name == "samsung_a54_001.jpg"), None) + assert image.day == 2 + assert image.month == 12 + assert image.year == 2023 + image = next((image for image in meta_data if image.name == "samsung_a54_003.jpg"), None) + assert image.day == 8 + assert image.month == 12 + assert image.year == 2023 + + @unittest.skip("") + def test_a52s(self): + copy_images(brand="samsung", model="a52s") + files = recursive_scan_folder(path=TEST_FOLDER) + meta_data = get_meta_data(images=files) + for image in meta_data: + assert image.make == "samsung" + + @unittest.skip("") def test_a14(self): - pass + copy_images(brand="samsung", model="a14") + files = recursive_scan_folder(path=TEST_FOLDER) + meta_data = get_meta_data(images=files) + for image in meta_data: + assert image.make == "samsung" @unittest.skip("")