aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJ08nY2025-02-14 14:30:29 +0100
committerJ08nY2025-02-14 14:30:29 +0100
commit9f9e58fc52858ca42c724b32f31d7c5244c75369 (patch)
tree23742850ec9401201adbaf07e7747306e70f7662
parentcd249eca27ec4ff2ef2c70823a1ceafa6c449ebe (diff)
downloadsec-certs-9f9e58fc52858ca42c724b32f31d7c5244c75369.tar.gz
sec-certs-9f9e58fc52858ca42c724b32f31d7c5244c75369.tar.zst
sec-certs-9f9e58fc52858ca42c724b32f31d7c5244c75369.zip
More from_web tests.
-rw-r--r--tests/cc/test_cc_dataset.py18
-rw-r--r--tests/cc/test_cc_protection_profiles.py18
2 files changed, 25 insertions, 11 deletions
diff --git a/tests/cc/test_cc_dataset.py b/tests/cc/test_cc_dataset.py
index ae7b0905..ad9dc436 100644
--- a/tests/cc/test_cc_dataset.py
+++ b/tests/cc/test_cc_dataset.py
@@ -6,7 +6,6 @@ from tempfile import TemporaryDirectory
import pytest
from sec_certs import constants
-from sec_certs.dataset import ProtectionProfileDataset
from sec_certs.dataset.cc import CCDataset
from sec_certs.sample.cc import CCCertificate
@@ -136,22 +135,19 @@ def test_build_dataset(data_dir: Path, cert_one: CCCertificate, toy_dataset: CCD
@pytest.mark.xfail(reason="May fail due to error on CC server")
-@pytest.mark.parametrize("dataset_class", ["CCDataset", "ProtectionProfileDataset"])
-def test_download_csv_html_files(dataset_class):
+def test_download_csv_html_files():
with TemporaryDirectory() as tmp_dir:
- constructor = CCDataset if dataset_class == "CCDataset" else ProtectionProfileDataset
- min_html_size = constants.MIN_CC_HTML_SIZE if dataset_class == "CCDataset" else constants.MIN_PP_HTML_SIZE
- dset = constructor(root_dir=Path(tmp_dir))
- dset._download_html_resources(get_active=True, get_archived=False)
+ min_html_size = constants.MIN_CC_HTML_SIZE
+ dset = CCDataset(root_dir=Path(tmp_dir))
+ dset._download_csv_html_resources(get_active=True, get_archived=False)
for x in dset.active_html_tuples:
assert x[1].exists()
assert x[1].stat().st_size >= min_html_size
- if dataset_class == "CCDataset":
- for x in dset.active_csv_tuples:
- assert x[1].exists()
- assert x[1].stat().st_size >= constants.MIN_CC_CSV_SIZE
+ for x in dset.active_csv_tuples:
+ assert x[1].exists()
+ assert x[1].stat().st_size >= constants.MIN_CC_CSV_SIZE
def test_to_pandas(toy_dataset: CCDataset):
diff --git a/tests/cc/test_cc_protection_profiles.py b/tests/cc/test_cc_protection_profiles.py
index 29cee8b7..e231d87c 100644
--- a/tests/cc/test_cc_protection_profiles.py
+++ b/tests/cc/test_cc_protection_profiles.py
@@ -5,6 +5,7 @@ from tempfile import TemporaryDirectory
import pytest
+from sec_certs import constants
from sec_certs.dataset.protection_profile import ProtectionProfileDataset
@@ -70,6 +71,23 @@ def test_get_certs_from_web(pp_data_dir: Path, toy_pp_dataset: ProtectionProfile
assert isinstance(cert.web_data.version, str)
+@pytest.mark.slow
+def test_from_web():
+ dset = ProtectionProfileDataset.from_web()
+ assert len(dset) > 400
+
+
+@pytest.mark.xfail(reason="May fail due to error on CC server")
+def test_download_html_files():
+ with TemporaryDirectory() as tmp_dir:
+ dset = ProtectionProfileDataset(root_dir=Path(tmp_dir))
+ dset._download_html_resources(get_active=True, get_archived=False)
+
+ for x in dset.active_html_tuples:
+ assert x[1].exists()
+ assert x[1].stat().st_size >= constants.MIN_PP_HTML_SIZE
+
+
def test_download_and_convert_artifacts(toy_pp_dataset: ProtectionProfileDataset, tmpdir, pp_data_dir):
toy_pp_dataset.copy_dataset(tmpdir)
toy_pp_dataset.download_all_artifacts()