Current section

Files

Jump to
yamerl testsuite data examples invoice.pattern
Raw

testsuite/data/examples/invoice.pattern

%% vim:ft=erlang:
%% TEST
{setup,
fun() ->
application:start(yamerl)
end,
[
?_assertMatch(
[
[
{"invoice",34843},
{"date","2001-01-23"},
{"bill-to",
[
{"given","Chris"},
{"family","Dumars"},
{"address",
[
{"lines","458 Walkman Dr.\nSuite #292\n"},
{"city","Royal Oak"},
{"state","MI"},
{"postal",48046}]}]},
{"ship-to",
[
{"given","Chris"},
{"family","Dumars"},
{"address",
[
{"lines","458 Walkman Dr.\nSuite #292\n"},
{"city","Royal Oak"},
{"state","MI"},
{"postal",48046}]}]},
{"product",
[
[
{"sku","BL394D"},
{"quantity",4},
{"description","Basketball"},
{"price",450.0}],
[
{"sku","BL4438H"},
{"quantity",1},
{"description","Super Hoop"},
{"price",2392.0}]]},
{"tax",251.42},
{"total",4443.52},
{"comments",
"Late afternoon is best. "
"Backup contact is Nancy Billsmer @ 338-4338."}]
],
yamerl_constr:file("${FILENAME}", [{detailed_constr, false}])
),
?_assertMatch(
[
{yamerl_doc,{yamerl_map,yamerl_node_map,
"tag:yaml.org,2002:map",
[{line,2},{column,1}],
[
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,2},{column,1}],
"invoice"},
{yamerl_int,yamerl_node_int,"tag:yaml.org,2002:int",
[{line,2},{column,10}],
34843}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,3},{column,1}],
"date"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,3},{column,10}],
"2001-01-23"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,4},{column,1}],
"bill-to"},
{yamerl_map,yamerl_node_map,"tag:yaml.org,2002:map",
[{line,5},{column,5}],
[
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,5},{column,5}],
"given"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,5},{column,14}],
"Chris"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,6},{column,5}],
"family"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,6},{column,14}],
"Dumars"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,7},{column,5}],
"address"},
{yamerl_map,yamerl_node_map,"tag:yaml.org,2002:map",
[{line,8},{column,9}],
[
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,8},{column,9}],
"lines"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,8},{column,16}],
"458 Walkman Dr.\nSuite #292\n"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,11},{column,9}],
"city"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,11},{column,19}],
"Royal Oak"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,12},{column,9}],
"state"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,12},{column,19}],
"MI"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,13},{column,9}],
"postal"},
{yamerl_int,yamerl_node_int,"tag:yaml.org,2002:int",
[{line,13},{column,19}],
48046}}]}}]}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,14},{column,1}],
"ship-to"},
{yamerl_map,yamerl_node_map,"tag:yaml.org,2002:map",
[{line,5},{column,5}],
[
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,5},{column,5}],
"given"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,5},{column,14}],
"Chris"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,6},{column,5}],
"family"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,6},{column,14}],
"Dumars"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,7},{column,5}],
"address"},
{yamerl_map,yamerl_node_map,"tag:yaml.org,2002:map",
[{line,8},{column,9}],
[
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,8},{column,9}],
"lines"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,8},{column,16}],
"458 Walkman Dr.\nSuite #292\n"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,11},{column,9}],
"city"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,11},{column,19}],
"Royal Oak"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,12},{column,9}],
"state"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,12},{column,19}],
"MI"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,13},{column,9}],
"postal"},
{yamerl_int,yamerl_node_int,"tag:yaml.org,2002:int",
[{line,13},{column,19}],
48046}}]}}]}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,15},{column,1}],
"product"},
{yamerl_seq,yamerl_node_seq,"tag:yaml.org,2002:seq",
[{line,16},{column,5}],
[
{yamerl_map,yamerl_node_map,"tag:yaml.org,2002:map",
[{line,16},{column,7}],
[
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,16},{column,7}],
"sku"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,16},{column,21}],
"BL394D"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,17},{column,7}],
"quantity"},
{yamerl_int,yamerl_node_int,"tag:yaml.org,2002:int",
[{line,17},{column,21}],
4}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,18},{column,7}],
"description"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,18},{column,21}],
"Basketball"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,19},{column,7}],
"price"},
{yamerl_float,yamerl_node_float,
"tag:yaml.org,2002:float",
[{line,19},{column,21}],
450.0}}]},
{yamerl_map,yamerl_node_map,"tag:yaml.org,2002:map",
[{line,20},{column,7}],
[
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,20},{column,7}],
"sku"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,20},{column,21}],
"BL4438H"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,21},{column,7}],
"quantity"},
{yamerl_int,yamerl_node_int,"tag:yaml.org,2002:int",
[{line,21},{column,21}],
1}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,22},{column,7}],
"description"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,22},{column,21}],
"Super Hoop"}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,23},{column,7}],
"price"},
{yamerl_float,yamerl_node_float,
"tag:yaml.org,2002:float",
[{line,23},{column,21}],
2392.0}}]}],
2}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,24},{column,1}],
"tax"},
{yamerl_float,yamerl_node_float,"tag:yaml.org,2002:float",
[{line,24},{column,8}],
251.42}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,25},{column,1}],
"total"},
{yamerl_float,yamerl_node_float,"tag:yaml.org,2002:float",
[{line,25},{column,8}],
4443.52}},
{
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,26},{column,1}],
"comments"},
{yamerl_str,yamerl_node_str,"tag:yaml.org,2002:str",
[{line,27},{column,5}],
"Late afternoon is best. "
"Backup contact is Nancy Billsmer @ 338-4338."}}]}}
],
yamerl_constr:file("${FILENAME}", [{detailed_constr, true}])
)
]
}