141 lines
2.4 KiB
Python
141 lines
2.4 KiB
Python
from pytchat.processors.superchat.calculator import SuperchatCalculator
|
|
|
|
get_item = SuperchatCalculator()._get_item
|
|
|
|
dict_test = {
|
|
'root':{
|
|
'node0' : 'value0',
|
|
'node1' : 'value1',
|
|
'node2' : {
|
|
'node2-0' : 'value2-0'
|
|
},
|
|
|
|
'node3' : [
|
|
{'node3-0' : 'value3-0'},
|
|
{'node3-1' :
|
|
{'node3-1-0' : 'value3-1-0'}
|
|
}
|
|
],
|
|
'node4' : [],
|
|
'node5' : [
|
|
[
|
|
{'node5-1-0' : 'value5-1-0'},
|
|
{'node5-1-1' : 'value5-1-1'},
|
|
],
|
|
{'node5-0' : 'value5-0'},
|
|
|
|
]
|
|
}
|
|
}
|
|
|
|
items_test0 = [
|
|
'root',
|
|
'node1'
|
|
]
|
|
|
|
|
|
items_test_not_found0 = [
|
|
'root',
|
|
'other_data'
|
|
]
|
|
|
|
|
|
items_test_nest = [
|
|
'root',
|
|
'node2',
|
|
'node2-0'
|
|
]
|
|
|
|
items_test_list0 = [
|
|
'root',
|
|
'node3',
|
|
1,
|
|
'node3-1'
|
|
]
|
|
|
|
items_test_list1 = [
|
|
'root',
|
|
'node3',
|
|
1,
|
|
'node3-1',
|
|
'node3-1-0'
|
|
]
|
|
|
|
items_test_list2 = [
|
|
'root',
|
|
'node4',
|
|
None
|
|
]
|
|
|
|
items_test_list3 = [
|
|
'root',
|
|
'node4'
|
|
]
|
|
|
|
items_test_list_nest = [
|
|
'root',
|
|
'node5',
|
|
0,
|
|
1,
|
|
'node5-1-1'
|
|
]
|
|
|
|
items_test_list_nest_not_found1 = [
|
|
'root',
|
|
'node5',
|
|
0,
|
|
1,
|
|
'node5-1-1',
|
|
'nodez'
|
|
]
|
|
|
|
items_test_not_found1 = [
|
|
'root',
|
|
'node3',
|
|
2,
|
|
'node3-1',
|
|
'node3-1-0'
|
|
]
|
|
|
|
items_test_not_found2 = [
|
|
'root',
|
|
'node3',
|
|
2,
|
|
'node3-1',
|
|
'node3-1-0',
|
|
'nodex'
|
|
]
|
|
def test_get_items_0():
|
|
assert get_item(dict_test, items_test0) == 'value1'
|
|
|
|
def test_get_items_1():
|
|
assert get_item(dict_test, items_test_not_found0) is None
|
|
|
|
def test_get_items_2():
|
|
assert get_item(dict_test, items_test_nest) == 'value2-0'
|
|
|
|
def test_get_items_3():
|
|
assert get_item(
|
|
dict_test, items_test_list0) == {'node3-1-0' : 'value3-1-0'}
|
|
|
|
def test_get_items_4():
|
|
assert get_item(dict_test, items_test_list1) == 'value3-1-0'
|
|
|
|
def test_get_items_5():
|
|
assert get_item(dict_test, items_test_not_found1) == None
|
|
|
|
def test_get_items_6():
|
|
assert get_item(dict_test, items_test_not_found2) == None
|
|
|
|
def test_get_items_7():
|
|
assert get_item(dict_test, items_test_list2) == None
|
|
|
|
def test_get_items_8():
|
|
assert get_item(dict_test, items_test_list_nest) == 'value5-1-1'
|
|
|
|
def test_get_items_9():
|
|
assert get_item(dict_test, items_test_list_nest_not_found1) == None
|
|
|
|
def test_get_items_10():
|
|
assert get_item(dict_test, items_test_list3) == []
|