Example #1
0
def test_thyme__get_mode():
    argv = 'date 12345656'.split()
    dt = Thyme(parser.parse_args(argv))
    assert dt._get_mode(dt._kwargs) == DatetimeMode

    argv = ['stamp', '10-10-2010']
    stamp = Thyme(parser.parse_args(argv))
    assert stamp._get_mode(stamp._kwargs) == TimestampMode
Example #2
0
def test_history_mode_execute(mock_list, mock_search):
    argv = ['history']
    args = parser.parse_args(argv)
    hm = HistoryMode(args)
    assert hm.execute().result == 'boo\nbah\n'

    argv = ['history', 'boo']
    args = parser.parse_args(argv)
    hm = HistoryMode(args)
    assert hm.execute().result == 'boo'
Example #3
0
def test_random_mode_invalid_limit():
    argv = 'random float -l-100000'
    args = parser.parse_args(argv.split())
    rm = RandomMode(args)
    res = rm.execute()
    assert isinstance(res, InvalidResult)
    assert res.errors[0] == 'Limit must be greater than 0.'

    argv = 'random float -l90.09'
    args = parser.parse_args(argv.split())
    rm = RandomMode(args)
    res = rm.execute()
    assert isinstance(res, InvalidResult)
    assert res.errors[0] == 'Limit must be an integer.'
Example #4
0
def test_timestamp_mode_bad_kwargs():
    argv = 'stamp 34kjk3j4523k'.split()
    args = parser.parse_args(argv)

    timestamp_mode = TimestampMode(args)

    assert isinstance(timestamp_mode.execute(), InvalidResult)
Example #5
0
def test_history_mode_init():
    argv = 'history'
    args = parser.parse_args(argv.split())
    hm = HistoryMode(args)

    assert hm._kwargs.search is None
    assert hm._kwargs.command == 'history'
    assert isinstance(hm.history, History)
Example #6
0
def test_file_mode_init(args, expected):
    args = args.split(' ')
    args = parser.parse_args(args)
    fm = FileMode(args)

    assert fm.command == expected[0]
    assert fm._kwargs.filetype == expected[1]
    assert fm._kwargs.name == expected[2]
Example #7
0
def test_timestamp_mode_good_kwargs():
    argv = ['stamp', 'feb 25 1990']
    args = parser.parse_args(argv)
    timestamp_mode = TimestampMode(args)

    assert isinstance(timestamp_mode.execute(), ValidResult)

    assert timestamp_mode.execute().result == return_stamp
Example #8
0
def test_datetime_mode_bad_kwargs():
    argv = ['date', '89dsljklse12']
    args = parser.parse_args(argv)

    timestamp_mode = DatetimeMode(args)

    res = timestamp_mode.execute()
    assert isinstance(res, InvalidResult)
Example #9
0
def test_random_mode_uuid():
    argv = 'random uuid'
    args = parser.parse_args(argv.split())
    rm = RandomMode(args)
    res = rm.execute()

    assert isinstance(res, ValidResult)
    assert len(str(res.result)) == 36
    assert '-' in str(res)
Example #10
0
def test_random_mode_secret():
    argv = ['random', 'secret', '-l 100']
    args = parser.parse_args(argv)
    rm = RandomMode(args)
    res = rm.execute()

    assert isinstance(res, ValidResult)
    assert isinstance(res.result, str)
    assert len(res.result) == 100
Example #11
0
def test_random_mode_float():
    argv = 'random float -l10000'
    args = parser.parse_args(argv.split())
    rm = RandomMode(args)
    res = rm.execute()

    assert isinstance(res, ValidResult)
    assert isinstance(res.result, float)
    assert res.result <= 10000
    assert '.' in str(res.result)
Example #12
0
def test_datetime_mode_good_kwargs_w_format():
    argv = ['date', '-fYYYY MMM DD', '635904000']
    args = parser.parse_args(argv)

    timestamp_mode = DatetimeMode(args)

    res = timestamp_mode.execute()
    assert isinstance(res, ValidResult)

    assert timestamp_mode.execute().result == '1990 Feb 25'
Example #13
0
def test_convert_mode_init(argv):
    args = parser.parse_args(argv.split())
    cm = ConvertMode(args)
    assert cm._kwargs.command == 'convert'
Example #14
0
def test_str_representation(string):
    args = parser.parse_args(['convert', string])
    cm = ConvertMode(args)
    assert str(cm) == 'convert 10kb'
Example #15
0
def test_bad_execute(argv):
    args = parser.parse_args(argv.split())
    cm = ConvertMode(args)
    assert isinstance(cm.execute(), InvalidResult)
Example #16
0
def test_good_execute(string):
    args = parser.parse_args(['convert', string])
    cm = ConvertMode(args)
    assert isinstance(cm.execute(), ValidResult)
Example #17
0
def test_random_mode_str_representation(argv, expected):
    args = argv.split()
    parsed = parser.parse_args(args)
    rm = RandomMode(parsed)
    assert str(rm) == expected
Example #18
0
def test_random_mode_init():
    argv = 'random uuid'
    args = parser.parse_args(argv.split())
    rm = RandomMode(args)
    assert rm._kwargs.type == 'uuid'
Example #19
0
def test_execute_returns_path(m, mock_cwd, args, fname):
    args = args.split(' ')
    args = parser.parse_args(args)
    fm = FileMode(args)
    res = fm.execute()
    assert os.path.join('/a/b/c', fname) in res.result
Example #20
0
def test_timestamp_str_representation(args, expected):
    parsed = parser.parse_args(args)
    timestamp_mode = TimestampMode(parsed)
    assert str(timestamp_mode) == expected
Example #21
0
def test_datetime_mode_invalid_format():
    argv = ['date', 'dsfasdfads']
    args = parser.parse_args(argv)
    timestamp_mode = DatetimeMode(args)
    res = timestamp_mode.execute()
    assert isinstance(res, InvalidResult)
Example #22
0
def test_thyme_init():
    argv = 'date 12345656'.split()
    dt = Thyme(parser.parse_args(argv))
    assert dt._kwargs
Example #23
0
def test_thyme_run():
    argv = 'date 12345656'.split()
    dt = Thyme(parser.parse_args(argv))
    assert dt.run() is None
Example #24
0
def test_str_represenation(argv, stringed):
    hm = HistoryMode(parser.parse_args(argv))
    assert str(hm) == stringed
Example #25
0
def test_datetime_mode_invalid_input():
    argv = 'date 567890 --format=dsfd'.split()
    args = parser.parse_args(argv)
    dtm = DatetimeMode(args)
    with pytest.raises(ValueError):
        assert dtm._execute()
Example #26
0
def test_file_mode_cli(args):
    args = args.split(' ')
    try:
        parser.parse_args(args)
    except SystemExit:
        pytest.fail("Should not raise a SystemExit exception.")