예제 #1
0
def test_packages_json_schema(mocker, lsstsw_dir):
    """Validate the schema of the 'packages' json sub-document."""
    # mock git.Repo in postqa.lsstsw so that a repo's active branch is master
    # and doesn't attempt to actually query the repo in the filesystem.
    mocker.patch('postqa.lsstsw.git.Repo')
    postqa.lsstsw.git.Repo.return_value.active_branch.name = 'master'

    lsstsw = Lsstsw(lsstsw_dir)
    job_json = lsstsw.json

    schema = load_squash_packages_schema()
    validate(job_json['packages'], schema)
예제 #2
0
def test_packages_json_schema(mocker, lsstsw_dir):
    """Validate the schema of the 'packages' json sub-document."""
    # mock git.Repo in postqa.lsstsw so that a repo's active branch is master
    # and doesn't attempt to actually query the repo in the filesystem.
    mocker.patch('postqa.lsstsw.git.Repo')
    postqa.lsstsw.git.Repo.return_value.active_branch.name = 'master'

    lsstsw = Lsstsw(lsstsw_dir)
    job_json = lsstsw.json

    schema = load_squash_packages_schema()
    validate(job_json['packages'], schema)
예제 #3
0
def test_uri_validation(mocker, lsstsw_dir):
    mocker.patch('postqa.lsstsw.git.Repo')
    postqa.lsstsw.git.Repo.return_value.active_branch.name = 'master'

    lsstsw = Lsstsw(lsstsw_dir)
    job_json = lsstsw.json

    job_json['packages'][0]['git_url'] = 'blah'
    print(job_json['packages'])

    schema = load_squash_packages_schema()

    with pytest.raises(ValidationError):
        validate(job_json['packages'], schema)
예제 #4
0
def test_uri_validation(mocker, lsstsw_dir):
    mocker.patch('postqa.lsstsw.git.Repo')
    postqa.lsstsw.git.Repo.return_value.active_branch.name = 'master'

    lsstsw = Lsstsw(lsstsw_dir)
    job_json = lsstsw.json

    job_json['packages'][0]['git_url'] = 'blah'
    print(job_json['packages'])

    schema = load_squash_packages_schema()

    with pytest.raises(ValidationError):
        validate(job_json['packages'], schema)
예제 #5
0
def test_null_value_validation(job_json, schema):
    """Ensure schema validation does not allow values to be null."""
    job_json['measurements'][0]['value'] = None
    with pytest.raises(ValidationError):
        validate(job_json['measurements'], schema)
예제 #6
0
def test_missing_metric_validation(job_json, schema):
    """Ensure schema validation picks up on missing 'metric'."""
    del job_json['measurements'][0]['metric']
    with pytest.raises(ValidationError):
        validate(job_json['measurements'], schema)
예제 #7
0
def test_measurements_schema(job_json, schema):
    """Validate the schema of `measurements` json sub-document."""
    validate(job_json['measurements'], schema)