def test_get_java_versions(): """Test basic behavior of function get_versions_for_maven_package.""" package_versions = get_versions_for_maven_package("tomcat:catalina") assert package_versions is not None # good old version 4.0.4 should be reported assert "4.0.4" in package_versions package_versions = get_versions_for_maven_package( "it is hard to specify package that does not exist:foobar" ) assert package_versions is not None # we expect empty list there assert not package_versions package_versions = get_versions_for_maven_package("there's missing comma") assert package_versions is not None # we expect empty list there assert not package_versions package_versions = get_versions_for_ep("maven", "junit:junit") assert package_versions is not None assert "4.12" in package_versions
def server_create_analysis(ecosystem, package, version, api_flow=True, force=False, force_graph_sync=False): """Create bayesianApiFlow handling analyses for specified EPV. :param ecosystem: ecosystem for which the flow should be run :param package: package for which should be flow run :param version: package version :param force: force run flow even specified EPV exists :param force_graph_sync: force synchronization to graph :return: dispatcher ID handling flow """ # Dont try ingestion for private packages if get_versions_for_ep(ecosystem, package): logger.info("Unknown flow for {} {}".format(ecosystem, package)) args = { 'ecosystem': ecosystem, 'name': package, 'version': version, 'force': force, 'force_graph_sync': force_graph_sync } if api_flow: return server_run_flow('bayesianApiFlow', args) else: return server_run_flow('bayesianFlow', args) else: logger.info("Private package detected {} {}".format(ecosystem, package)) return None
def get_affected_versions(affected, ecosystem): """Get all affected versions for given package.""" all_versions = get_versions_for_ep(ECOSYSTEM_MAPPING[ecosystem], affected.name) affected_versions = set() for version in all_versions: if affected.affects(affected.name, version=version): affected_versions.add(version) return affected_versions
def test_get_golang_versions(): """Test basic behavior of function get_versions_for_golang_package.""" versions = get_versions_for_golang_package("github.com/grafana/grafana") assert versions is not None versions = get_versions_for_golang_package("some_junk_name") assert versions is None versions = get_versions_for_ep("golang", "github.com/grafana/grafana") assert versions is not None assert "6.1.6" in versions
def test_get_versions_for_ep_no_package(): """Test get_versions_for_ep for no package provided.""" with pytest.raises(ValueError): get_versions_for_ep("maven", None) with pytest.raises(ValueError): get_versions_for_ep("npm", None) with pytest.raises(ValueError): get_versions_for_ep("pypi", None)
def test_get_python_versions(): """Test basic behavior of function get_versions_for_pypi_package.""" package_versions = get_versions_for_pypi_package("numpy") assert package_versions is not None # good old version 1.3.0 should be reported assert "1.3.0" in package_versions package_versions = get_versions_for_pypi_package( "it is hard to specify package that does not exist") assert package_versions is not None # we expect empty list there assert not package_versions package_versions = get_versions_for_ep("pypi", "flask") assert package_versions is not None assert "1.0.2" in package_versions
def test_get_versions_for_npm_package(): """Test basic behavior of the function get_versions_for_npm_package.""" package_versions = get_versions_for_npm_package("array") assert package_versions is not None # good old version 0.4.0 should be reported assert "0.4.0" in package_versions package_versions = get_versions_for_npm_package( "it is hard to specify package that does not exist") assert package_versions is not None # we expect empty list there assert not package_versions package_versions = get_versions_for_ep("npm", "uuid") assert package_versions is not None assert "3.3.2" in package_versions
def test_get_versions_for_ep_no_ecosystem(): """Test get_versions_for_ep for no ecosystem provided.""" with pytest.raises(ValueError): get_versions_for_ep(None, "cds-parsers")
def test_get_versions_for_ep_bad_ecosystem(): """Test get_versions_for_ep for unsupported ecosystem.""" with pytest.raises(ValueError): get_versions_for_ep("cobol", "cds-parsers")