def test_builder_simple_with_multi_meta_field(): manifest = build( BASE_MANIFEST, authors("some", "guy"), license("MIT"), description("description"), keywords("awesome", "package"), links(website="www", repository="github"), validate(), ) expected = assoc( BASE_MANIFEST, "meta", { "license": "MIT", "authors": ["some", "guy"], "description": "description", "keywords": ["awesome", "package"], "links": { "website": "www", "repository": "github" }, }, ) assert manifest == expected
def amend_license(manifest: Manifest) -> Optional[Callable[..., Manifest]]: try: license = manifest["meta"]["license"] except KeyError: flag = parse_bool_flag("No license found, would you like to add one?") else: flag = parse_bool_flag( f"License found ({license}). Would you like to change it?") if flag: new_license = input("Enter your new license: ") return b.license(new_license) return None
def test_builder_with_init_manifest(owned_package, dummy_ipfs_backend): root, expected_manifest, compiler_output = owned_package ipfs_backend = get_ipfs_backend() manifest = build( init_manifest(package_name="owned", version="1.0.0"), authors("Piper Merriam <*****@*****.**>"), description( "Reusable contracts which implement a privileged 'owner' model for authorization." ), keywords("authorization"), license("MIT"), links(documentation= "ipfs://QmUYcVzTfSwJoigggMxeo2g5STWAgJdisQsqcXHws7b1FW"), pin_source("Owned", compiler_output, ipfs_backend, root), validate(), ) assert manifest == expected_manifest
build( {}, package_name("_invalid_package_name"), manifest_version("2"), version("1.0.0"), validate(), ) @pytest.mark.parametrize( "fn,value", ( (authors("some", "guy"), { "authors": ["some", "guy"] }), (license("MIT"), { "license": "MIT" }), (description("This is a package."), { "description": "This is a package." }), (keywords("awesome", "package"), { "keywords": ["awesome", "package"] }), ( links(documentation="ipfs..", website="www"), { "links": { "documentation": "ipfs..", "website": "www" }
def gen_license() -> Optional[Callable[..., Manifest]]: flag = parse_bool_flag("Would you like to add a license to your package?") if flag: license = input("Enter your license: ") return b.license(license) return None