def test_builder_with_standard_token_manifest(standard_token_package,
                                              dummy_ipfs_backend, monkeypatch):
    root, expected_manifest, compiler_output = standard_token_package
    ipfs_backend = get_ipfs_backend()

    monkeypatch.chdir(root)
    manifest = build(
        {},
        package_name("standard-token"),
        manifest_version("ethpm/3"),
        version("1.0.0"),
        pin_source("StandardToken", compiler_output, ipfs_backend),
        pin_source("Token", compiler_output, ipfs_backend),
        contract_type("StandardToken",
                      compiler_output,
                      abi=True,
                      devdoc=True,
                      source_id=True),
        contract_type("Token",
                      compiler_output,
                      abi=True,
                      devdoc=True,
                      userdoc=True,
                      source_id=True),
        validate(),
    )
    assert manifest == expected_manifest
Exemple #2
0
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
Exemple #3
0
def build_pinned_sources(
        contract_types: Iterable[str], solc_output: Dict[str, Any],
        contracts_dir: Path) -> Iterable[Callable[..., Manifest]]:
    ipfs_backend = get_ipfs_backend()
    return (b.pin_source(ctype, solc_output, ipfs_backend, contracts_dir)
            for ctype in contract_types)