def test_bad_data_sample_name(tmpdir): m1 = default_manifest("one") m1["sample_data_key"] = "nope" create_manifest(tmpdir, m1, "blueprint.py") with pytest.raises(cm.ManifestError): cm.create_manifest(tmpdir)
def test_readme_too_big(tmpdir): m1 = default_manifest("one") contents = "A" * (cm.README_MAX + 1) create_manifest(tmpdir, m1, "blueprint.py", readme_contents=contents) with pytest.raises(cm.ManifestError) as err: cm.create_manifest(tmpdir) assert "README must be less" in str(err.value)
def test_duplicate_names(tmpdir): m1 = default_manifest("one") create_manifest(tmpdir, m1, "blueprint.py") m2 = default_manifest("one") m2["featured"] = True create_manifest(tmpdir, m2, "blueprint.py") with pytest.raises(cm.ManifestError): cm.create_manifest(tmpdir)
def test_create_manifest_ok(tmpdir): m1 = default_manifest("one") create_manifest(tmpdir, m1, "blueprint.py") m2 = default_manifest("two") m2["featured"] = True create_manifest(tmpdir, m2, "blueprint.py") check = cm.create_manifest(tmpdir) bp = check["blueprint_map"] assert len(bp) == 2 assert "one" in bp assert "two" in bp assert len(check["featured"]) == 1
def test_empty_dir(tmpdir): Path(tmpdir / "empty").mkdir() with pytest.raises(cm.ManifestError): cm.create_manifest(tmpdir)
def test_create_manifest_bad_blueprint_file(tmpdir): m1 = default_manifest("one") create_manifest(tmpdir, m1, "blueprint.nope") with pytest.raises(cm.ManifestError): cm.create_manifest(tmpdir)
def test_missing_readme(tmpdir): m1 = default_manifest("one") create_manifest(tmpdir, m1, "blueprint.py", readme_fname="nope.md") with pytest.raises(cm.ManifestError): cm.create_manifest(tmpdir)