|
|
|
|
@ -9,6 +9,7 @@ from core.app.segments import (
|
|
|
|
|
StringVariable,
|
|
|
|
|
factory,
|
|
|
|
|
)
|
|
|
|
|
from core.app.segments.variables import ArrayVariable, ObjectVariable
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_string_variable():
|
|
|
|
|
@ -89,3 +90,47 @@ def test_build_a_blank_string():
|
|
|
|
|
)
|
|
|
|
|
assert isinstance(result, StringVariable)
|
|
|
|
|
assert result.value == ''
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_object_variable_to_object():
|
|
|
|
|
var = ObjectVariable(
|
|
|
|
|
name='object',
|
|
|
|
|
value={
|
|
|
|
|
'key1': ObjectVariable(
|
|
|
|
|
name='object',
|
|
|
|
|
value={
|
|
|
|
|
'key2': StringVariable(name='key2', value='value2'),
|
|
|
|
|
},
|
|
|
|
|
),
|
|
|
|
|
'key2': ArrayVariable(
|
|
|
|
|
name='array',
|
|
|
|
|
value=[
|
|
|
|
|
StringVariable(name='key5_1', value='value5_1'),
|
|
|
|
|
IntegerVariable(name='key5_2', value=42),
|
|
|
|
|
ObjectVariable(name='key5_3', value={}),
|
|
|
|
|
],
|
|
|
|
|
),
|
|
|
|
|
},
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
assert var.to_object() == {
|
|
|
|
|
'key1': {
|
|
|
|
|
'key2': 'value2',
|
|
|
|
|
},
|
|
|
|
|
'key2': [
|
|
|
|
|
'value5_1',
|
|
|
|
|
42,
|
|
|
|
|
{},
|
|
|
|
|
],
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def test_variable_to_object():
|
|
|
|
|
var = StringVariable(name='text', value='text')
|
|
|
|
|
assert var.to_object() == 'text'
|
|
|
|
|
var = IntegerVariable(name='integer', value=42)
|
|
|
|
|
assert var.to_object() == 42
|
|
|
|
|
var = FloatVariable(name='float', value=3.14)
|
|
|
|
|
assert var.to_object() == 3.14
|
|
|
|
|
var = SecretVariable(name='secret', value='secret_value')
|
|
|
|
|
assert var.to_object() == 'secret_value'
|
|
|
|
|
|