コード例 #1
0
def check_weight_for_word_in_keywords_tagging(context, word, where):
    """Check that the given word and its weight can be found in the tagging report."""
    selector = S3Interface.selector_to_key(where)
    assert selector in [
        "package_name", "repository_description", "description"
    ]

    details = get_details_node(context)
    word_dict = check_and_get_attribute(details, selector)

    check_attribute_presence(word_dict, word)
    assert float(word_dict[word]) > 0.0
コード例 #2
0
def read_core_data_from_bucket(context, selector, package, version, ecosystem,
                               bucket):
    """Read the component toplevel metadata."""
    if selector == "component toplevel":
        key = S3Interface.component_key(ecosystem, package, version)
    else:
        metadata = S3Interface.selector_to_key(selector)
        key = S3Interface.component_analysis_key(ecosystem, package, version,
                                                 metadata)

    try:
        s3_data = context.s3interface.read_object(bucket, key)
        assert s3_data is not None
        context.s3_data = s3_data
    except Exception as e:
        m = "Can not read {key} for the E/P/V {ecosystem} {package} {version} from bucket {bucket}"\
            .format(key=key, ecosystem=ecosystem, package=package, version=version, bucket=bucket)
        context.s3_data = None
        raise Exception(m) from e
コード例 #3
0
def read_core_package_data_from_bucket(context, selector, package, ecosystem,
                                       bucket):
    """Read the selected metadata for the package."""
    # At this moment, the following selectors can be used:
    # package toplevel
    # GitHub details
    # keywords tagging
    # libraries io
    if selector == "package toplevel":
        key = S3Interface.package_key(ecosystem, package)
    else:
        metadata = S3Interface.selector_to_key(selector)
        key = S3Interface.package_analysis_key(ecosystem, package, metadata)

    try:
        s3_data = context.s3interface.read_object(bucket, key)
        assert s3_data is not None
        context.s3_data = s3_data
    except Exception as e:
        m = "Can not read {key} for the E/P {ecosystem} {package} from bucket {bucket}"\
            .format(key=key, ecosystem=ecosystem, package=package, bucket=bucket)
        context.s3_data = None
        raise Exception(m) from e