コード例 #1
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_resolve_expression(patch):
    patch.object(Resolver, 'expression')
    item = {'$OBJECT': 'expression', 'expression': '==', 'values': []}
    result = Resolver.resolve(item, 'data')
    Resolver.expression.assert_called_with('data', item['expression'],
                                           item['values'])
    assert result == Resolver.expression()
コード例 #2
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_object_method(patch):
    patch.object(Resolver, 'method')
    patch.object(Resolver, 'handside', return_value='hand')
    item = {
        '$OBJECT': 'method',
        'method': 'method',
        'left': 'left',
        'right': 'right'
    }
    result = Resolver.object(item, 'data')
    Resolver.method.assert_called_with('method', 'hand', 'hand')
    assert result == Resolver.method()
コード例 #3
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_expression(patch):
    patch.object(Resolver, 'values', return_value=[1])
    patch.object(Resolver, 'stringify', return_value='1')
    result = Resolver.expression('data', '{} == 1', 'values')
    Resolver.values.assert_called_with('values', data='data')
    Resolver.stringify.assert_called_with(1)
    assert result
コード例 #4
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_values():
    values = [{
        '$OBJECT': 'path',
        'paths': ['one']
    }, {
        '$OBJECT': 'path',
        'paths': ['two']
    }]
    assert Resolver.values(values, {'one': 1, 'two': 2}) == [1, 2]
コード例 #5
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_object_str_str():
    items = [[{
        '$OBJECT': 'string',
        'string': 'example'
    }, {
        '$OBJECT': 'string',
        'string': 'data'
    }]]
    assert dict(Resolver.dict(items, {})) == {'example': 'data'}
コード例 #6
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_object_path_path():
    items = [[{
        '$OBJECT': 'path',
        'paths': ['a']
    }, {
        '$OBJECT': 'path',
        'paths': ['b']
    }]]
    data = {'a': 'example', 'b': 'data'}
    assert dict(Resolver.dict(items, data)) == {'example': 'data'}
コード例 #7
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolve_many():
    result = Resolver.resolve(
        {
            '$OBJECT': 'string',
            'string': '{}',
            'values': [{
                '$OBJECT': 'path',
                'paths': ['foo', 'bar']
            }]
        }, {'foo': {
            'bar': 'data'
        }})

    assert result == 'data'
コード例 #8
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_path_list():
    path = ['a', '1', 'b']
    data = {'a': [None, {'b': 'value'}]}
    assert Resolver.path(path, data) == 'value'
コード例 #9
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_path():
    path = ['a', 'b', 'c']
    data = {'a': {'b': {'c': 'value'}}}
    assert Resolver.path(path, data) == 'value'
コード例 #10
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_handside(patch):
    patch.object(Resolver, 'object')
    result = Resolver.handside('item', 'data')
    Resolver.object.assert_called_with('item', 'data')
    assert result == Resolver.object()
コード例 #11
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_object_file_values(patch):
    patch.object(Resolver, 'file')
    item = {'$OBJECT': 'file', 'string': 'filename', 'values': ['values']}
    result = Resolver.object(item, 'data')
    Resolver.file.assert_called_with(item['string'], 'data', values=['values'])
    assert result == Resolver.file()
コード例 #12
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_list_booleans(patch):
    patch.object(Resolver, 'resolve', return_value=True)
    result = Resolver.list(['items'], {})
    Resolver.resolve.assert_called_with('items', {})
    assert result == [True]
コード例 #13
0
def test_resolve_method(method, left, right, result):
    assert Resolver.method(method, left, right) == result
コード例 #14
0
def test_resolve_dict(dictionary, data, result):
    assert Resolver.dictionary(dictionary, data) == result
コード例 #15
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_string():
    assert Resolver.string('hello', {}) == 'hello'
コード例 #16
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_resolve_list(patch):
    patch.object(Resolver, 'list')
    result = Resolver.resolve([], 'data')
    Resolver.list.assert_called_with([], 'data')
    assert result == Resolver.list()
コード例 #17
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_resolve_object(patch):
    patch.object(Resolver, 'object')
    result = Resolver.resolve({}, 'data')
    Resolver.object.assert_called_with({}, 'data')
    assert result == Resolver.object()
コード例 #18
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_resolve(patch):
    assert Resolver.resolve('whatever', 'data') == 'whatever'
コード例 #19
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_path_key_error():
    assert Resolver.path(['a', 'b'], {}) is None
コード例 #20
0
def test_resolve_path(path, data, result):
    assert Resolver.path(path, data) == result
コード例 #21
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_dictionary(patch):
    patch.object(Resolver, 'resolve')
    result = Resolver.dictionary({'key': 'value'}, 'data')
    Resolver.resolve.assert_called_with('value', 'data')
    assert result == {'key': Resolver.resolve()}
コード例 #22
0
def test_resolve_resolve(obj, data, result):
    assert Resolver.resolve(obj, data) == result
コード例 #23
0
def test_resolve_list(items_list, data, result):
    assert Resolver.values(items_list, data=data) == result
コード例 #24
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_list(patch):
    patch.object(Resolver, 'resolve', return_value='done')
    result = Resolver.list(['items'], {})
    Resolver.resolve.assert_called_with('items', {})
    assert result == 'done'
コード例 #25
0
def test_stringify(value, result):
    assert Resolver.stringify(value) == result
コード例 #26
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_file():
    assert Resolver.file('filename', {}) == 'filename'
コード例 #27
0
def test_resolve_path_undefined():
    assert Resolver.path('a.b', {}) is None
コード例 #28
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_file_values(patch):
    patch.object(Resolver, 'values', return_value=['a'])
    result = Resolver.file('{}.py', {}, values=['values'])
    Resolver.values.assert_called_with(['values'], {})
    assert result == 'a.py'
コード例 #29
0
def test_resolve_obj_regexp():
    result = Resolver.object({'$OBJECT': 'regexp', 'regexp': 'abc'}, None)
    assert result.pattern == 'abc'
コード例 #30
0
ファイル: resolver.py プロジェクト: riccardomc/storyscript
def test_resolver_argument(patch):
    patch.object(Resolver, 'object')
    result = Resolver.argument('argument', {})
    Resolver.object.assert_called_with('argument', {})
    assert result == Resolver.object()