예제 #1
0
def test_multiple_datasets():
    parser = _get_command_line_parser(['Dummy'], [],
                                      ['valid-dataset', 'other-valid-dataset'])
    result = parser.parse_args([
        'run', 'ex1', 'Dummy', '--datasets', 'valid-dataset',
        'other-valid-dataset'
    ])
    assert_equals(['valid-dataset', 'other-valid-dataset'], result.datasets)
예제 #2
0
def test_allow_zero_limit():
    parser = _get_command_line_parser(['DemoDetector'], [], [])
    assert_equals(
        0,
        parser.parse_args([
            'publish', 'ex2', 'DemoDetector', '-s', 'site', '-u', 'user',
            '--limit', '0'
        ]).limit)
예제 #3
0
def test_extends_java_options_on_multiple_occurences():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    result = parser.parse_args([
        'run', 'ex1', 'valid-detector', '--java-options', 'Xmx6144M', 'd64',
        '--java-options',
        'agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005'
    ])
    assert_equals([
        'Xmx6144M', 'd64',
        'agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005'
    ], result.java_options)
예제 #4
0
def test_overrides_default_values(get_default_mock):
    get_default_mock.side_effect = lambda key, default: [
        'Xmx6144M', 'd64'
    ] if key == 'java-options' else default
    parser = _get_command_line_parser(['valid-detector'], [], [])

    result = parser.parse_args([
        'run', 'ex1', 'valid-detector', '--java-options',
        'agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005'
    ])
    assert_equals(
        ['agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005'],
        result.java_options)
예제 #5
0
def test_run_fails_without_experiment():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    assert_raises(SystemExit, parser.parse_args, ['run', 'valid-detector'])
예제 #6
0
def test_run_fails_without_detector():
    parser = _get_command_line_parser([], [], [])
    assert_raises(SystemExit, parser.parse_args, ['run', 'ex1'])
예제 #7
0
def test_checkout():
    parser = _get_command_line_parser([], [], [])
    result = parser.parse_args(['checkout'])
    assert result.task == 'checkout'
예제 #8
0
def test_timeout_default_none():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    result = parser.parse_args(['run', 'ex1', 'valid-detector'])
    assert result.timeout is None
예제 #9
0
def test_java_options_default_empty():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    result = parser.parse_args(['run', 'ex1', 'valid-detector'])
    assert_equals([], result.java_options)
예제 #10
0
def test_run_ignore_empty_list_fails():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    assert_raises(SystemExit, parser.parse_args,
                  ['run', 'ex1', 'valid-detector', '--skip'])
예제 #11
0
def test_fails_for_invalid_dataset():
    parser = _get_command_line_parser(['valid-detector'], [],
                                      ['valid-dataset'])
    assert_raises(
        SystemExit, parser.parse_args,
        ['run', 'ex1', 'valid-detector', '--datasets', 'invalid-dataset'])
예제 #12
0
def test_setup_check():
    parser = _get_command_line_parser([], [], [])
    result = parser.parse_args(['check', 'setup'])
    assert_equals('check', result.task)
    assert_equals('setup', result.sub_task)
예제 #13
0
def test_fails_without_publish_subtask():
    parser = _get_command_line_parser([], [], [])
    assert_raises(SystemExit, parser.parse_args, ['publish'])
예제 #14
0
def test_invalid_mode():
    parser = _get_command_line_parser([], [], [])
    assert_raises(SystemExit, parser.parse_args, ['invalid'])
예제 #15
0
def test_release_default():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    result = parser.parse_args(['run', 'ex1', 'valid-detector'])
    assert_equals(Detector.DEFAULT_RELEASE, result.requested_release)
예제 #16
0
def test_release():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    result = parser.parse_args(
        ['run', 'ex1', 'valid-detector', '--tag', 'FSE17'])
    assert_equals('fse17', result.requested_release)
예제 #17
0
def test_run_valid():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    result = parser.parse_args(['run', 'ex1', 'valid-detector'])
    assert result.detector == 'valid-detector'
예제 #18
0
def test_run_ignore_default():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    result = parser.parse_args(['run', 'ex1', 'valid-detector'])
    assert result.black_list == []
예제 #19
0
def test_detect_only():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    white_list = ['a', 'b', 'c']
    result = parser.parse_args(['run', 'ex1', 'valid-detector', '--only'] +
                               white_list)
    assert result.white_list == white_list
예제 #20
0
def test_script_is_case_insensitive():
    parser = _get_command_line_parser([], ['GENERAL'], [])
    parser.parse_args(['stats', 'general'])
예제 #21
0
def test_run_ignore():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    black_list = ['a', 'b', 'c']
    result = parser.parse_args(['run', 'ex1', 'valid-detector', '--skip'] +
                               black_list)
    assert result.black_list == black_list
예제 #22
0
def test_fails_on_negative_limit():
    parser = _get_command_line_parser(['DemoDetector'], [], [])
    assert_raises(
        SystemExit, parser.parse_args,
        ['publish', 'ex2', 'DemoDetector', '-s', 'site', '--limit', '-1'])
예제 #23
0
def test_run_timeout():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    value = '100'
    result = parser.parse_args(
        ['run', 'ex1', 'valid-detector', '--timeout', value])
    assert result.timeout == int(value)
예제 #24
0
def test_requires_review_site_username():
    parser = _get_command_line_parser(['DemoDetector'], [], [])
    assert_raises(SystemExit, parser.parse_args,
                  ['publish', 'ex2', 'DemoDetector', '-s'])
예제 #25
0
def test_timeout_non_int_fails():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    assert_raises(SystemExit, parser.parse_args,
                  ['run', 'ex1', 'valid-detector', '--timeout', 'string'])
예제 #26
0
def test_java_options():
    parser = _get_command_line_parser(['valid-detector'], [], [])
    result = parser.parse_args(
        ['run', 'ex1', 'valid-detector', '--java-options', 'Xmx6144M', 'd64'])
    assert_equals(['Xmx6144M', 'd64'], result.java_options)