From f87d6c6fc4dc8088eccf22173bd2ce6486121022 Mon Sep 17 00:00:00 2001 From: Sergey Mezentsev Date: Fri, 1 Mar 2024 19:50:46 +0300 Subject: [PATCH] Failed test_non_zero_cost shows filename --- .github/workflows/catalogs.yml | 5 +++++ src/integrity_tests/test_all.py | 23 +++++++++++++---------- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/.github/workflows/catalogs.yml b/.github/workflows/catalogs.yml index d4c3e8a..731dd0c 100644 --- a/.github/workflows/catalogs.yml +++ b/.github/workflows/catalogs.yml @@ -9,6 +9,11 @@ on: schedule: - cron: '0 1 * * *' # 01:00 UTC every day +env: + PIP_DISABLE_PIP_VERSION_CHECK: on + PIP_DEFAULT_TIMEOUT: 10 + PIP_PROGRESS_BAR: off + jobs: catalog-aws: name: Collect AWS catalog diff --git a/src/integrity_tests/test_all.py b/src/integrity_tests/test_all.py index 02b3ac6..5c6f5b4 100644 --- a/src/integrity_tests/test_all.py +++ b/src/integrity_tests/test_all.py @@ -1,19 +1,22 @@ import csv +import os from pathlib import Path -from typing import List import pytest +files = sorted(Path(os.environ["CATALOG_DIR"]).glob("*.csv")) -@pytest.fixture -def catalog_files(catalog_dir: Path) -> List[Path]: - return list(catalog_dir.glob("*.csv")) + +def catalog_name(catalog) -> str: + return catalog.name class TestAllCatalogs: - def test_non_zero_cost(self, catalog_files: List[Path]): - for file in catalog_files: - with open(file, "r") as f: - reader = csv.DictReader(f) - prices = [float(row["price"]) for row in reader] - assert 0 not in prices + @pytest.fixture(params=files, ids=catalog_name) + def catalog(self, request): + yield request.param + + def test_non_zero_cost(self, catalog): + reader = csv.DictReader(catalog.open()) + for row in reader: + assert float(row["price"]) != pytest.approx(0), str(row)