File:  [parser3project] / parser3 / tests / 341.html
Revision 1.5: download - view: text, annotated - select for diffs - revision graph
Wed Dec 30 10:18:22 2020 UTC (5 years, 7 months ago) by moko
Branches: MAIN
CVS tags: release_3_4_6, HEAD
tests for ^nameless_table.hash[] added (related to feature #1138)

@main[]

I. named

$id[id]
$price[price]
$t[^table::create{id	price
1	6.50
2	70.00		more data
3	60.85
_default	0
}]

$n[^table::create{name
id
price}]

^core[]

II. nameless

$id[0]
$price[1]
$t[^table::create[nameless]{1	6.50
2	70.00		more data
3	60.85
_default	0
}]

$n[^table::create{name
0
1}]

^core[]

@core[]

Code coverage tests:

^try-catch{^t.hash[$id][ $.type[wrong] ]}
^try-catch{^t.hash[$id][ $.type[ $.not_string[] ] ]}
^try-catch{^t.hash[$id][ $.wrong[option] ]}
^try-catch{^t.hash[$id][$price][ not hash ]}
^try-catch{^t.hash[$id][ $.wrong[] ][ $.type[string] ]}
^try-catch{^t.hash[$id][$n][ $.type[string] ]}
^try-catch{^t.hash[$id]{code}[ $.type[string] ]}
^try-catch{^t.hash[ups;$price]}
^try-catch{^t.hash[$id;ups]}

Valid calls tests:

1. ^json:string[^t.hash[$id]]
2. ^json:string[^t.hash[$id][ $.type[table] ]]
3. ^json:string[^t.hash[$id][$price]]
4. ^json:string[^t.hash{$id}[$price][ $.distinct(true) ]]
5. ^json:string[^t.hash[$id][$n]]
6. ^json:string[^t.hash{$id}[$n][ $.distinct(true) ]]

New functionality tests:

n1. ^json:string[^t.hash{=$t.$id=}{$t.$id - $t.$price}]
n2. ^json:string[^t.hash[$id]{$t.$id - $t.$price}]

n3. ^json:string[^t.hash{$id}{code}[ $.distinct(true) ]]
n4. ^json:string[^t.hash[$id]{ $h[$.key[$t.$price]] $h }]

n5. ^json:string[^t.hash[$id;]]
n6. ^json:string[^t.hash[$id;; $.type[string] ]]

@try-catch[jCode]
^try{$jCode}{
        $exception.handled(true)
        Type: $exception.type,
        Source: $exception.source,
        Comment: $exception.comment
}

E-mail: