Пример #1
0
def test_perform_indexing_whitelist(initialized_db, set_secscan_config):
    app.config["SECURITY_SCANNER_V4_NAMESPACE_WHITELIST"] = ["devtable"]
    expected_manifests = (Manifest.select().join(Repository).join(User).where(
        User.username == "devtable"))

    secscan = V4SecurityScanner(app, instance_keys, storage)
    secscan._secscan_api = mock.Mock()
    secscan._secscan_api.state.return_value = {"state": "abc"}
    secscan._secscan_api.index.return_value = (
        {
            "err": None,
            "state": IndexReportState.Index_Finished
        },
        "abc",
    )

    next_token = secscan.perform_indexing()

    assert secscan._secscan_api.index.call_count == expected_manifests.count()
    for mss in ManifestSecurityStatus.select():
        assert mss.repository.namespace_user.username == "devtable"
    assert ManifestSecurityStatus.select().count() == expected_manifests.count(
    )
    assert (
        Manifest.get_by_id(next_token.min_id -
                           1).repository.namespace_user.username == "devtable")
Пример #2
0
def test_perform_indexing_whitelist(initialized_db):
    app.config["SECURITY_SCANNER_V4_NAMESPACE_WHITELIST"] = ["devtable"]
    secscan = V4SecurityScanner(app, instance_keys, storage)

    next_token = secscan.perform_indexing()

    assert (
        Manifest.get_by_id(next_token.min_id -
                           1).repository.namespace_user.username == "devtable")