aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/test/lux/target/ruby.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/test/lux/target/ruby.lux')
-rw-r--r--stdlib/source/test/lux/target/ruby.lux1178
1 files changed, 589 insertions, 589 deletions
diff --git a/stdlib/source/test/lux/target/ruby.lux b/stdlib/source/test/lux/target/ruby.lux
index 2774aa58a..ccbb01bd1 100644
--- a/stdlib/source/test/lux/target/ruby.lux
+++ b/stdlib/source/test/lux/target/ruby.lux
@@ -65,23 +65,23 @@
int random.int
string (random.upper_case 5)]
(all _.and
- (_.cover [/.nil]
- (..nil /.nil))
- (_.cover [/.bool]
- (expression (|>> (as Bit) (bit#= bool))
- (/.bool bool)))
- (_.cover [/.int]
- (expression (|>> (as Int) (i.= int))
- (/.int int)))
- (_.cover [/.float]
- (expression (|>> (as Frac) (f.= float))
- (/.float float)))
- (_.cover [/.string]
- (expression (|>> (as Text) (text#= string))
- (/.string string)))
- (_.cover [/.symbol]
- (expression (|>> (as Text) (text#= string))
- (/.do "id2name" (list) {.#None} (/.symbol string))))
+ (_.coverage [/.nil]
+ (..nil /.nil))
+ (_.coverage [/.bool]
+ (expression (|>> (as Bit) (bit#= bool))
+ (/.bool bool)))
+ (_.coverage [/.int]
+ (expression (|>> (as Int) (i.= int))
+ (/.int int)))
+ (_.coverage [/.float]
+ (expression (|>> (as Frac) (f.= float))
+ (/.float float)))
+ (_.coverage [/.string]
+ (expression (|>> (as Text) (text#= string))
+ (/.string string)))
+ (_.coverage [/.symbol]
+ (expression (|>> (as Text) (text#= string))
+ (/.do "id2name" (list) {.#None} (/.symbol string))))
)))
(def: test|bool
@@ -91,17 +91,17 @@
right random.bit]
(`` (all _.and
(~~ (template [</> <lux>]
- [(_.cover [</>]
- (let [expected (<lux> left right)]
- (expression (|>> (as Bit) (bit#= expected))
- (</> (/.bool left) (/.bool right)))))]
+ [(_.coverage [</>]
+ (let [expected (<lux> left right)]
+ (expression (|>> (as Bit) (bit#= expected))
+ (</> (/.bool left) (/.bool right)))))]
[/.or .or]
[/.and .and]
))
- (_.cover [/.not]
- (expression (|>> (as Bit) (bit#= (not left)))
- (/.not (/.bool left))))
+ (_.coverage [/.not]
+ (expression (|>> (as Bit) (bit#= (not left)))
+ (/.not (/.bool left))))
))))
(def: test|float
@@ -112,10 +112,10 @@
subject random.safe_frac]
(`` (all _.and
(~~ (template [</> <lux> <pre>]
- [(_.cover [</>]
- (let [expected (<lux> (<pre> parameter) (<pre> subject))]
- (expression (|>> (as Frac) (f.= expected))
- (</> (/.float (<pre> parameter)) (/.float (<pre> subject))))))]
+ [(_.coverage [</>]
+ (let [expected (<lux> (<pre> parameter) (<pre> subject))]
+ (expression (|>> (as Frac) (f.= expected))
+ (</> (/.float (<pre> parameter)) (/.float (<pre> subject))))))]
[/.+ f.+ |>]
[/.- f.- |>]
@@ -125,10 +125,10 @@
[/.pow f.pow f.abs]
))
(~~ (template [</> <lux>]
- [(_.cover [</>]
- (let [expected (<lux> parameter subject)]
- (expression (|>> (as Bit) (bit#= expected))
- (</> (/.float parameter) (/.float subject)))))]
+ [(_.coverage [</>]
+ (let [expected (<lux> parameter subject)]
+ (expression (|>> (as Bit) (bit#= expected))
+ (</> (/.float parameter) (/.float subject)))))]
[/.< f.<]
[/.<= f.<=]
@@ -152,31 +152,31 @@
shift (# ! each (n.% 16) random.nat)]
(`` (all _.and
(~~ (template [</> <lux>]
- [(_.cover [</>]
- (let [expected (<lux> left right)]
- (expression (|>> (as Frac) f.int (i.= expected))
- (</> (/.int left) (/.int right)))))]
+ [(_.coverage [</>]
+ (let [expected (<lux> left right)]
+ (expression (|>> (as Frac) f.int (i.= expected))
+ (</> (/.int left) (/.int right)))))]
[/.bit_or i64.or]
[/.bit_xor i64.xor]
[/.bit_and i64.and]
))
- (_.cover [/.bit_not]
- (expression (|>> (as Int) (i.= (i64.not left)))
- (/.bit_not (/.int left))))
- (_.cover [/.opposite]
- (expression (|>> (as Int) (i.= (i.* -1 left)))
- (/.opposite (/.int left))))
- (_.cover [/.bit_shl]
- (let [expected (i64.left_shifted shift i16)]
- (expression (|>> (as Frac) f.int (i.= expected))
- (/.bit_shl (/.int (.int shift))
- (/.int i16)))))
- (_.cover [/.bit_shr]
- (let [expected (i.right_shifted shift i16)]
- (expression (|>> (as Frac) f.int (i.= expected))
- (/.bit_shr (/.int (.int shift))
- (/.int i16)))))
+ (_.coverage [/.bit_not]
+ (expression (|>> (as Int) (i.= (i64.not left)))
+ (/.bit_not (/.int left))))
+ (_.coverage [/.opposite]
+ (expression (|>> (as Int) (i.= (i.* -1 left)))
+ (/.opposite (/.int left))))
+ (_.coverage [/.bit_shl]
+ (let [expected (i64.left_shifted shift i16)]
+ (expression (|>> (as Frac) f.int (i.= expected))
+ (/.bit_shl (/.int (.int shift))
+ (/.int i16)))))
+ (_.coverage [/.bit_shr]
+ (let [expected (i.right_shifted shift i16)]
+ (expression (|>> (as Frac) f.int (i.= expected))
+ (/.bit_shr (/.int (.int shift))
+ (/.int i16)))))
))))
(def: test|array
@@ -193,19 +193,19 @@
.let [to (/.int (.int (n.+ plus from)))
from (/.int (.int from))]]
(all _.and
- (_.cover [/.array /.item]
- (and (expression (|>> (as Frac) (f.= expected))
- (/.item (/.int (.int index))
- (/.array (list#each /.float items))))
- (expression (|>> (as Bit))
- (|> (/.array (list#each /.float items))
- (/.item (/.int (.int size)))
- (/.= /.nil)))))
- (_.cover [/.array_range]
- (expression (|>> (as Int) (i.= (.int (++ plus))))
- (|> (/.array (list#each /.float items))
- (/.array_range from to)
- (/.the "length"))))
+ (_.coverage [/.array /.item]
+ (and (expression (|>> (as Frac) (f.= expected))
+ (/.item (/.int (.int index))
+ (/.array (list#each /.float items))))
+ (expression (|>> (as Bit))
+ (|> (/.array (list#each /.float items))
+ (/.item (/.int (.int size)))
+ (/.= /.nil)))))
+ (_.coverage [/.array_range]
+ (expression (|>> (as Int) (i.= (.int (++ plus))))
+ (|> (/.array (list#each /.float items))
+ (/.array_range from to)
+ (/.the "length"))))
)))
(def: test|hash
@@ -218,13 +218,13 @@
.let [field (/.string field)
dummy (/.string dummy)]]
(all _.and
- (_.cover [/.hash]
- (and (expression (|>> (as Frac) (f.= expected))
- (/.item field (/.hash (list [field (/.float expected)]))))
- (expression (|>> (as Bit))
- (|> (/.hash (list [field (/.float expected)]))
- (/.item dummy)
- (/.= /.nil)))))
+ (_.coverage [/.hash]
+ (and (expression (|>> (as Frac) (f.= expected))
+ (/.item field (/.hash (list [field (/.float expected)]))))
+ (expression (|>> (as Bit))
+ (|> (/.hash (list [field (/.float expected)]))
+ (/.item dummy)
+ (/.= /.nil)))))
)))
(def: test|object
@@ -250,80 +250,80 @@
.let [double (/.function $method/0 (list $arg/0)
(/.return (/.+ $arg/0 $arg/0)))]]
(all _.and
- (_.cover [/.the]
- (expression (|>> (as Int) (i.= (.int size)))
- (|> (/.array (list#each /.float items))
- (/.the "length"))))
- (_.cover [/.do]
- (expression (let [expected (|> items
- (list.item index)
- (maybe.else f.not_a_number))]
- (|>> (as Frac) (f.= expected)))
- (|> (/.array (list#each /.float items))
- (/.do "at" (list (/.int (.int index))) {.#None}))))
- (_.cover [/.class]
- (expression (|>> (as Frac) (f.= (f.+ single single)))
- (|> (all /.then
- (/.set (list $class) (/.class [/.#parameters (list)
- /.#body double]))
- (/.return (|> $class
- (/.new (list) {.#None})
- (/.do (/.code $method/0) (list (/.float single)) {.#None}))))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.new /.initialize]
- (expression (|>> (as Frac) (f.= single))
- (|> (all /.then
- (/.set (list $class) (/.class [/.#parameters (list)
- /.#body (all /.then
- (/.function /.initialize (list $arg/0)
- (/.set (list $state) $arg/0))
- (/.function $method/0 (list)
- (/.return $state))
- )]))
- (/.return (|> $class
- (/.new (list (/.float single)) {.#None})
- (/.do (/.code $method/0) (list) {.#None}))))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.alias_method/2]
- (expression (|>> (as Frac) (f.= (f.+ single single)))
- (|> (all /.then
- (/.set (list $class) (/.class [/.#parameters (list)
- /.#body (all /.then
- double
- (/.statement (/.alias_method/2 (/.string (/.code $method/1))
- (/.string (/.code $method/0)))))]))
- (/.return (|> $class
- (/.new (list) {.#None})
- (/.do (/.code $method/1) (list (/.float single)) {.#None}))))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.the]
+ (expression (|>> (as Int) (i.= (.int size)))
+ (|> (/.array (list#each /.float items))
+ (/.the "length"))))
+ (_.coverage [/.do]
+ (expression (let [expected (|> items
+ (list.item index)
+ (maybe.else f.not_a_number))]
+ (|>> (as Frac) (f.= expected)))
+ (|> (/.array (list#each /.float items))
+ (/.do "at" (list (/.int (.int index))) {.#None}))))
+ (_.coverage [/.class]
+ (expression (|>> (as Frac) (f.= (f.+ single single)))
+ (|> (all /.then
+ (/.set (list $class) (/.class [/.#parameters (list)
+ /.#body double]))
+ (/.return (|> $class
+ (/.new (list) {.#None})
+ (/.do (/.code $method/0) (list (/.float single)) {.#None}))))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.new /.initialize]
+ (expression (|>> (as Frac) (f.= single))
+ (|> (all /.then
+ (/.set (list $class) (/.class [/.#parameters (list)
+ /.#body (all /.then
+ (/.function /.initialize (list $arg/0)
+ (/.set (list $state) $arg/0))
+ (/.function $method/0 (list)
+ (/.return $state))
+ )]))
+ (/.return (|> $class
+ (/.new (list (/.float single)) {.#None})
+ (/.do (/.code $method/0) (list) {.#None}))))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.alias_method/2]
+ (expression (|>> (as Frac) (f.= (f.+ single single)))
+ (|> (all /.then
+ (/.set (list $class) (/.class [/.#parameters (list)
+ /.#body (all /.then
+ double
+ (/.statement (/.alias_method/2 (/.string (/.code $method/1))
+ (/.string (/.code $method/0)))))]))
+ (/.return (|> $class
+ (/.new (list) {.#None})
+ (/.do (/.code $method/1) (list (/.float single)) {.#None}))))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
(_.for [/.module]
(all _.and
- (_.cover [/.include/1]
- (expression (|>> (as Frac) (f.= (f.+ single single)))
- (|> (all /.then
- (/.set (list $class) (/.module [/.#parameters (list)
- /.#body double]))
- (/.set (list $sub_class) (/.class [/.#parameters (list)
- /.#body (/.statement (/.include/1 $class))]))
- (/.return (|> $sub_class
- (/.new (list) {.#None})
- (/.do (/.code $method/0) (list (/.float single)) {.#None}))))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.extend/1]
- (expression (|>> (as Frac) (f.= (f.+ single single)))
- (|> (all /.then
- (/.set (list $class) (/.module [/.#parameters (list)
- /.#body double]))
- (/.set (list $sub_class) (/.class [/.#parameters (list)
- /.#body (/.statement (/.extend/1 $class))]))
- (/.return (|> $sub_class
- (/.do (/.code $method/0) (list (/.float single)) {.#None}))))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.include/1]
+ (expression (|>> (as Frac) (f.= (f.+ single single)))
+ (|> (all /.then
+ (/.set (list $class) (/.module [/.#parameters (list)
+ /.#body double]))
+ (/.set (list $sub_class) (/.class [/.#parameters (list)
+ /.#body (/.statement (/.include/1 $class))]))
+ (/.return (|> $sub_class
+ (/.new (list) {.#None})
+ (/.do (/.code $method/0) (list (/.float single)) {.#None}))))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.extend/1]
+ (expression (|>> (as Frac) (f.= (f.+ single single)))
+ (|> (all /.then
+ (/.set (list $class) (/.module [/.#parameters (list)
+ /.#body double]))
+ (/.set (list $sub_class) (/.class [/.#parameters (list)
+ /.#body (/.statement (/.extend/1 $class))]))
+ (/.return (|> $sub_class
+ (/.do (/.code $method/0) (list (/.float single)) {.#None}))))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
))
)))
@@ -339,61 +339,61 @@
(all _.and
(_.for [/.stdout]
(all _.and
- (_.cover [/.print/1]
- (expression (|>> (as Text) (text#= expected))
- (|> (all /.then
- (/.statement (/.require/1 (/.string "stringio")))
- (/.set (list $old) /.stdout)
- (/.set (list $new) (/.new (list) {.#None} (/.manual "StringIO")))
- (/.set (list /.stdout) $new)
- (/.statement (/.print/1 (/.string left)))
- (/.statement (/.print/1 (/.string right)))
- (/.set (list /.stdout) $old)
- (/.return (/.the "string" $new)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.print/2]
- (expression (|>> (as Text) (text#= expected))
- (|> (all /.then
- (/.statement (/.require/1 (/.string "stringio")))
- (/.set (list $old) /.stdout)
- (/.set (list $new) (/.new (list) {.#None} (/.manual "StringIO")))
- (/.set (list /.stdout) $new)
- (/.statement (/.print/2 (/.string left) (/.string right)))
- (/.set (list /.stdout) $old)
- (/.return (/.the "string" $new)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.print/1]
+ (expression (|>> (as Text) (text#= expected))
+ (|> (all /.then
+ (/.statement (/.require/1 (/.string "stringio")))
+ (/.set (list $old) /.stdout)
+ (/.set (list $new) (/.new (list) {.#None} (/.manual "StringIO")))
+ (/.set (list /.stdout) $new)
+ (/.statement (/.print/1 (/.string left)))
+ (/.statement (/.print/1 (/.string right)))
+ (/.set (list /.stdout) $old)
+ (/.return (/.the "string" $new)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.print/2]
+ (expression (|>> (as Text) (text#= expected))
+ (|> (all /.then
+ (/.statement (/.require/1 (/.string "stringio")))
+ (/.set (list $old) /.stdout)
+ (/.set (list $new) (/.new (list) {.#None} (/.manual "StringIO")))
+ (/.set (list /.stdout) $new)
+ (/.statement (/.print/2 (/.string left) (/.string right)))
+ (/.set (list /.stdout) $old)
+ (/.return (/.the "string" $new)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
))
(_.for [/.stdin]
(all _.and
- (_.cover [/.gets/0]
- (expression (|>> (as Text) (text#= (format left text.\n)))
- (|> (all /.then
- (/.statement (/.require/1 (/.string "stringio")))
- (/.set (list $old) /.stdin)
- (/.set (list /.stdin) (/.new (list (/.string (format left text.\n))) {.#None}
- (/.manual "StringIO")))
- (/.set (list $it) /.gets/0)
- (/.set (list /.stdin) $old)
- (/.return $it))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.last_string_read]
- (expression (|>> (as Text) (text#= (format right text.\n)))
- (|> (all /.then
- (/.statement (/.require/1 (/.string "stringio")))
- (/.set (list $old) /.stdin)
- (/.set (list /.stdin) (/.new (list (/.string (format right text.\n))) {.#None}
- (/.manual "StringIO")))
- (/.set (list $it) /.gets/0)
- (/.set (list /.stdin) $old)
- (/.return /.last_string_read))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.last_line_number_read]
- (expression (|>> (as Nat) (n.= 2))
- /.last_line_number_read))
+ (_.coverage [/.gets/0]
+ (expression (|>> (as Text) (text#= (format left text.\n)))
+ (|> (all /.then
+ (/.statement (/.require/1 (/.string "stringio")))
+ (/.set (list $old) /.stdin)
+ (/.set (list /.stdin) (/.new (list (/.string (format left text.\n))) {.#None}
+ (/.manual "StringIO")))
+ (/.set (list $it) /.gets/0)
+ (/.set (list /.stdin) $old)
+ (/.return $it))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.last_string_read]
+ (expression (|>> (as Text) (text#= (format right text.\n)))
+ (|> (all /.then
+ (/.statement (/.require/1 (/.string "stringio")))
+ (/.set (list $old) /.stdin)
+ (/.set (list /.stdin) (/.new (list (/.string (format right text.\n))) {.#None}
+ (/.manual "StringIO")))
+ (/.set (list $it) /.gets/0)
+ (/.set (list /.stdin) $old)
+ (/.return /.last_string_read))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.last_line_number_read]
+ (expression (|>> (as Nat) (n.= 2))
+ /.last_line_number_read))
))
)))
@@ -417,16 +417,16 @@
..test|hash
..test|object
..test|io
- (_.cover [/.?]
- (let [expected (if test then else)]
- (expression (|>> (as Frac) (f.= expected))
- (/.? (/.bool test)
- (/.float then)
- (/.float else)))))
- (_.cover [/.comment]
- (expression (|>> (as Frac) (f.= then))
- (/.comment comment
- (/.float then))))
+ (_.coverage [/.?]
+ (let [expected (if test then else)]
+ (expression (|>> (as Frac) (f.= expected))
+ (/.? (/.bool test)
+ (/.float then)
+ (/.float else)))))
+ (_.coverage [/.comment]
+ (expression (|>> (as Frac) (f.= then))
+ (/.comment comment
+ (/.float then))))
)))
(def: test|global
@@ -436,51 +436,51 @@
$global (# ! each /.global (random.lower_case 10))
pattern (# ! each /.string (random.lower_case 11))]
(all _.and
- (_.cover [/.global]
- (expression (|>> (as Text) (text#= "global-variable"))
- (|> (all /.then
- (/.set (list $global) (/.float float/0))
- (/.return (/.defined?/1 $global)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.script_name]
- (expression (let [file (format (# file.default separator) packager.main_file)]
- (|>> (as Text)
- (text.ends_with? file)))
- /.script_name))
- (_.cover [/.input_record_separator]
- (expression (|>> (as Text)
- (text#= text.\n))
- /.input_record_separator))
- (_.cover [/.output_record_separator]
- (..nil /.output_record_separator))
- (_.cover [/.process_id]
- (expression (|>> (as Nat) (n.= 0) not)
- /.process_id))
- (_.cover [/.case_insensitivity_flag]
- (expression (|>> (as Bit) (bit#= false))
- /.case_insensitivity_flag))
- (_.cover [/.command_line_arguments]
- (expression (|>> (as Int) (i.= +0))
- (/.the "length" /.command_line_arguments)))
- (_.cover [/.last_string_matched]
- (expression (|>> (as Bit))
- (|> (all /.then
- (/.statement
- (|> (/.manual "Regexp")
- (/.new (list pattern) {.#None})
- (/.do "match" (list pattern) {.#None})))
- (/.return (/.= pattern /.last_string_matched)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.last_regexp_match]
- (expression (|>> (as Bit))
- (|> (/.return (|> (/.manual "Regexp")
- (/.new (list pattern) {.#None})
- (/.do "match" (list pattern) {.#None})
- (/.= /.last_regexp_match)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.global]
+ (expression (|>> (as Text) (text#= "global-variable"))
+ (|> (all /.then
+ (/.set (list $global) (/.float float/0))
+ (/.return (/.defined?/1 $global)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.script_name]
+ (expression (let [file (format (# file.default separator) packager.main_file)]
+ (|>> (as Text)
+ (text.ends_with? file)))
+ /.script_name))
+ (_.coverage [/.input_record_separator]
+ (expression (|>> (as Text)
+ (text#= text.\n))
+ /.input_record_separator))
+ (_.coverage [/.output_record_separator]
+ (..nil /.output_record_separator))
+ (_.coverage [/.process_id]
+ (expression (|>> (as Nat) (n.= 0) not)
+ /.process_id))
+ (_.coverage [/.case_insensitivity_flag]
+ (expression (|>> (as Bit) (bit#= false))
+ /.case_insensitivity_flag))
+ (_.coverage [/.command_line_arguments]
+ (expression (|>> (as Int) (i.= +0))
+ (/.the "length" /.command_line_arguments)))
+ (_.coverage [/.last_string_matched]
+ (expression (|>> (as Bit))
+ (|> (all /.then
+ (/.statement
+ (|> (/.manual "Regexp")
+ (/.new (list pattern) {.#None})
+ (/.do "match" (list pattern) {.#None})))
+ (/.return (/.= pattern /.last_string_matched)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.last_regexp_match]
+ (expression (|>> (as Bit))
+ (|> (/.return (|> (/.manual "Regexp")
+ (/.new (list pattern) {.#None})
+ (/.do "match" (list pattern) {.#None})
+ (/.= /.last_regexp_match)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
)))
(def: test|local_var
@@ -489,18 +489,18 @@
[float/0 random.safe_frac
$foreign (# ! each /.local (random.lower_case 10))]
(all _.and
- (_.cover [/.local]
- (expression (|>> (as Frac) (f.= (f.+ float/0 float/0)))
- (|> (/.return (/.+ $foreign $foreign))
- [(list $foreign)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.float float/0))))))
- (_.cover [/.set]
- (expression (|>> (as Frac) (f.= (f.+ float/0 float/0)))
- (|> (all /.then
- (/.set (list $foreign) (/.float float/0))
- (/.return (/.+ $foreign $foreign)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.local]
+ (expression (|>> (as Frac) (f.= (f.+ float/0 float/0)))
+ (|> (/.return (/.+ $foreign $foreign))
+ [(list $foreign)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.float float/0))))))
+ (_.coverage [/.set]
+ (expression (|>> (as Frac) (f.= (f.+ float/0 float/0)))
+ (|> (all /.then
+ (/.set (list $foreign) (/.float float/0))
+ (/.return (/.+ $foreign $foreign)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
)))
(def: test|instance_var
@@ -517,62 +517,62 @@
$object (# ! each (|>> %.nat (format "object_") /.local)
random.nat)]
(all _.and
- (_.cover [/.instance]
- (expression (|>> (as Frac) (f.= float/0))
- (|> (all /.then
- (/.set (list $class) (/.class [/.#parameters (list)
- /.#body (all /.then
- (/.function /.initialize (list)
- (/.set (list $instance) (/.float float/0)))
- (/.function $method (list)
- (/.return $instance))
- )]))
- (/.return (|> $class
- (/.new (list) {.#None})
- (/.do (/.code $method) (list) {.#None}))))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.attr_reader/*]
- (expression (|>> (as Frac) (f.= float/0))
- (|> (all /.then
- (/.set (list $class) (/.class [/.#parameters (list)
- /.#body (all /.then
- (/.attr_reader/* (list instance))
- (/.function /.initialize (list)
- (/.set (list $instance) (/.float float/0)))
- )]))
- (/.return (|> $class
- (/.new (list) {.#None})
- (/.the instance))))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.attr_writer/*]
- (expression (|>> (as Frac) (f.= float/0))
- (|> (all /.then
- (/.set (list $class) (/.class [/.#parameters (list)
- /.#body (all /.then
- (/.attr_writer/* (list instance))
- (/.function $method (list)
- (/.return $instance))
- )]))
- (/.set (list $object) (|> $class
- (/.new (list) {.#None})))
- (/.set (list (/.the instance $object)) (/.float float/0))
- (/.return (|> $object
- (/.do (/.code $method) (list) {.#None}))))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.attr_accessor/*]
- (expression (|>> (as Frac) (f.= float/0))
- (|> (all /.then
- (/.set (list $class) (/.class [/.#parameters (list)
- /.#body (/.attr_accessor/* (list instance))]))
- (/.set (list $object) (|> $class
- (/.new (list) {.#None})))
- (/.set (list (/.the instance $object)) (/.float float/0))
- (/.return (/.the instance $object)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.instance]
+ (expression (|>> (as Frac) (f.= float/0))
+ (|> (all /.then
+ (/.set (list $class) (/.class [/.#parameters (list)
+ /.#body (all /.then
+ (/.function /.initialize (list)
+ (/.set (list $instance) (/.float float/0)))
+ (/.function $method (list)
+ (/.return $instance))
+ )]))
+ (/.return (|> $class
+ (/.new (list) {.#None})
+ (/.do (/.code $method) (list) {.#None}))))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.attr_reader/*]
+ (expression (|>> (as Frac) (f.= float/0))
+ (|> (all /.then
+ (/.set (list $class) (/.class [/.#parameters (list)
+ /.#body (all /.then
+ (/.attr_reader/* (list instance))
+ (/.function /.initialize (list)
+ (/.set (list $instance) (/.float float/0)))
+ )]))
+ (/.return (|> $class
+ (/.new (list) {.#None})
+ (/.the instance))))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.attr_writer/*]
+ (expression (|>> (as Frac) (f.= float/0))
+ (|> (all /.then
+ (/.set (list $class) (/.class [/.#parameters (list)
+ /.#body (all /.then
+ (/.attr_writer/* (list instance))
+ (/.function $method (list)
+ (/.return $instance))
+ )]))
+ (/.set (list $object) (|> $class
+ (/.new (list) {.#None})))
+ (/.set (list (/.the instance $object)) (/.float float/0))
+ (/.return (|> $object
+ (/.do (/.code $method) (list) {.#None}))))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.attr_accessor/*]
+ (expression (|>> (as Frac) (f.= float/0))
+ (|> (all /.then
+ (/.set (list $class) (/.class [/.#parameters (list)
+ /.#body (/.attr_accessor/* (list instance))]))
+ (/.set (list $object) (|> $class
+ (/.new (list) {.#None})))
+ (/.set (list (/.the instance $object)) (/.float float/0))
+ (/.return (/.the instance $object)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
)))
(def: test|static_var
@@ -589,16 +589,16 @@
$class (# ! each (|>> %.nat (format "class_") /.local)
random.nat)]
(all _.and
- (_.cover [/.static /.class_variable_set /.class_variable_get]
- (expression (|>> (as Int) (i.= int/0))
- (|> (all /.then
- (/.set (list $class) (/.class [/.#parameters (list)
- /.#body (/.function $method (list)
- (/.return (/.int +0)))]))
- (/.statement (/.class_variable_set $static (/.int int/0) $class))
- (/.return (/.class_variable_get $static $class)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.static /.class_variable_set /.class_variable_get]
+ (expression (|>> (as Int) (i.= int/0))
+ (|> (all /.then
+ (/.set (list $class) (/.class [/.#parameters (list)
+ /.#body (/.function $method (list)
+ (/.return (/.int +0)))]))
+ (/.statement (/.class_variable_set $static (/.int int/0) $class))
+ (/.return (/.class_variable_get $static $class)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
)))
(def: test|variadic
@@ -615,22 +615,22 @@
(all _.and
(<| (_.for [/.LVar*])
(all _.and
- (_.cover [/.variadic]
- (expression (|>> (as Int) .nat (n.= arity))
- (|> (/.return (/.the "length" $inputs))
- [(list (/.variadic $inputs))] (/.lambda {.#None})
- (/.apply_lambda/* vals))))
- (_.cover [/.splat]
- (expression (|>> (as Int) .nat (n.= arity))
- (|> (/.return (/.the "length" (/.array (list (/.splat $inputs)))))
- [(list (/.variadic $inputs))] (/.lambda {.#None})
- (/.apply_lambda/* vals))))))
+ (_.coverage [/.variadic]
+ (expression (|>> (as Int) .nat (n.= arity))
+ (|> (/.return (/.the "length" $inputs))
+ [(list (/.variadic $inputs))] (/.lambda {.#None})
+ (/.apply_lambda/* vals))))
+ (_.coverage [/.splat]
+ (expression (|>> (as Int) .nat (n.= arity))
+ (|> (/.return (/.the "length" (/.array (list (/.splat $inputs)))))
+ [(list (/.variadic $inputs))] (/.lambda {.#None})
+ (/.apply_lambda/* vals))))))
(<| (_.for [/.LVar**])
- (_.cover [/.variadic_kv /.double_splat]
- (expression (|>> (as Int) .nat (n.= arity))
- (|> (/.return (/.the "length" $inputs))
- [(list (/.variadic_kv $inputs))] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.double_splat (/.hash (list.zipped_2 keys vals)))))))))
+ (_.coverage [/.variadic_kv /.double_splat]
+ (expression (|>> (as Int) .nat (n.= arity))
+ (|> (/.return (/.the "length" $inputs))
+ [(list (/.variadic_kv $inputs))] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.double_splat (/.hash (list.zipped_2 keys vals)))))))))
)))
(def: test|var
@@ -641,24 +641,24 @@
$constant (# ! each /.constant (random.lower_case 10))]
(all _.and
- (_.cover [/.defined?/1]
- (and (expression (|>> (as Bit))
- (|> (/.defined?/1 $foreign)
- (/.= /.nil)))
- (expression (|>> (as Text) (text#= "local-variable"))
- (|> (all /.then
- (/.set (list $foreign) (/.float float/0))
- (/.return (/.defined?/1 $foreign)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list))))))
+ (_.coverage [/.defined?/1]
+ (and (expression (|>> (as Bit))
+ (|> (/.defined?/1 $foreign)
+ (/.= /.nil)))
+ (expression (|>> (as Text) (text#= "local-variable"))
+ (|> (all /.then
+ (/.set (list $foreign) (/.float float/0))
+ (/.return (/.defined?/1 $foreign)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list))))))
(_.for [/.CVar]
- (_.cover [/.constant]
- (expression (|>> (as Text) (text#= "constant"))
- (|> (all /.then
- (/.set (list $constant) (/.float float/0))
- (/.return (/.defined?/1 $constant)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list))))))
+ (_.coverage [/.constant]
+ (expression (|>> (as Text) (text#= "constant"))
+ (|> (all /.then
+ (/.set (list $constant) (/.float float/0))
+ (/.return (/.defined?/1 $constant)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list))))))
(_.for [/.GVar]
..test|global)
(_.for [/.LVar]
@@ -679,24 +679,24 @@
(all _.and
(<| (_.for [/.Var])
..test|var)
- (_.cover [/.Access]
- (and (expression (|>> (as Frac) (f.= (f.+ float/0 float/0)))
- (let [@ (/.item (/.int +0) $foreign)]
- (|> (all /.then
- (/.set (list $foreign) (/.array (list $foreign)))
- (/.set (list @) (/.+ @ @))
- (/.return @))
- [(list $foreign)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.float float/0))))))
- (expression (|>> (as Frac) (f.= (f.+ float/0 float/0)))
- (let [@ (/.item field $foreign)]
- (|> (all /.then
- (/.set (list $foreign) (/.hash (list [field $foreign])))
- (/.set (list @) (/.+ @ @))
- (/.return @))
- [(list $foreign)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.float float/0))))))
- ))
+ (_.coverage [/.Access]
+ (and (expression (|>> (as Frac) (f.= (f.+ float/0 float/0)))
+ (let [@ (/.item (/.int +0) $foreign)]
+ (|> (all /.then
+ (/.set (list $foreign) (/.array (list $foreign)))
+ (/.set (list @) (/.+ @ @))
+ (/.return @))
+ [(list $foreign)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.float float/0))))))
+ (expression (|>> (as Frac) (f.= (f.+ float/0 float/0)))
+ (let [@ (/.item field $foreign)]
+ (|> (all /.then
+ (/.set (list $foreign) (/.hash (list [field $foreign])))
+ (/.set (list @) (/.+ @ @))
+ (/.return @))
+ [(list $foreign)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.float float/0))))))
+ ))
)))
(def: test|expression
@@ -729,54 +729,54 @@
$inner_index (/.local "inner_index")
$outer_index (/.local "outer_index")]]
(all _.and
- (_.cover [/.break]
- (let [expected (i.* (.int expected_inner_iterations) input)]
- (expression (|>> (as Frac) f.int (i.= expected))
- (|> (all /.then
- (/.set (list $inner_index) (/.int +0))
- (/.set (list $output) (/.int +0))
- (/.while (/.< (/.int (.int full_inner_iterations)) $inner_index)
- (all /.then
- (/.when (/.= (/.int (.int expected_inner_iterations)) $inner_index)
- /.break)
- (/.set (list $output) (/.+ $input $output))
- (/.set (list $inner_index) (/.+ (/.int +1) $inner_index))
- ))
- (/.return $output))
- [(list $input)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.int input)))))))
- (_.cover [/.next]
- (let [expected (i.* (.int (n.- expected_inner_iterations full_inner_iterations)) input)]
- (expression (|>> (as Frac) f.int (i.= expected))
- (|> (all /.then
- (/.set (list $inner_index) (/.int +0))
- (/.set (list $output) (/.int +0))
- (/.while (/.< (/.int (.int full_inner_iterations)) $inner_index)
- (all /.then
- (/.set (list $inner_index) (/.+ (/.int +1) $inner_index))
- (/.when (/.<= (/.int (.int expected_inner_iterations)) $inner_index)
- /.next)
- (/.set (list $output) (/.+ $input $output))
- ))
- (/.return $output))
- [(list $input)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.int input)))))))
- (_.cover [/.redo]
- (let [expected (i.* (.int (n.- expected_inner_iterations full_inner_iterations)) input)]
- (expression (|>> (as Frac) f.int (i.= expected))
- (|> (all /.then
- (/.set (list $inner_index) (/.int +0))
- (/.set (list $output) (/.int +0))
- (/.while (/.< (/.int (.int full_inner_iterations)) $inner_index)
- (all /.then
- (/.set (list $inner_index) (/.+ (/.int +1) $inner_index))
- (/.when (/.<= (/.int (.int expected_inner_iterations)) $inner_index)
- /.redo)
- (/.set (list $output) (/.+ $input $output))
- ))
- (/.return $output))
- [(list $input)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.int input)))))))
+ (_.coverage [/.break]
+ (let [expected (i.* (.int expected_inner_iterations) input)]
+ (expression (|>> (as Frac) f.int (i.= expected))
+ (|> (all /.then
+ (/.set (list $inner_index) (/.int +0))
+ (/.set (list $output) (/.int +0))
+ (/.while (/.< (/.int (.int full_inner_iterations)) $inner_index)
+ (all /.then
+ (/.when (/.= (/.int (.int expected_inner_iterations)) $inner_index)
+ /.break)
+ (/.set (list $output) (/.+ $input $output))
+ (/.set (list $inner_index) (/.+ (/.int +1) $inner_index))
+ ))
+ (/.return $output))
+ [(list $input)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.int input)))))))
+ (_.coverage [/.next]
+ (let [expected (i.* (.int (n.- expected_inner_iterations full_inner_iterations)) input)]
+ (expression (|>> (as Frac) f.int (i.= expected))
+ (|> (all /.then
+ (/.set (list $inner_index) (/.int +0))
+ (/.set (list $output) (/.int +0))
+ (/.while (/.< (/.int (.int full_inner_iterations)) $inner_index)
+ (all /.then
+ (/.set (list $inner_index) (/.+ (/.int +1) $inner_index))
+ (/.when (/.<= (/.int (.int expected_inner_iterations)) $inner_index)
+ /.next)
+ (/.set (list $output) (/.+ $input $output))
+ ))
+ (/.return $output))
+ [(list $input)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.int input)))))))
+ (_.coverage [/.redo]
+ (let [expected (i.* (.int (n.- expected_inner_iterations full_inner_iterations)) input)]
+ (expression (|>> (as Frac) f.int (i.= expected))
+ (|> (all /.then
+ (/.set (list $inner_index) (/.int +0))
+ (/.set (list $output) (/.int +0))
+ (/.while (/.< (/.int (.int full_inner_iterations)) $inner_index)
+ (all /.then
+ (/.set (list $inner_index) (/.+ (/.int +1) $inner_index))
+ (/.when (/.<= (/.int (.int expected_inner_iterations)) $inner_index)
+ /.redo)
+ (/.set (list $output) (/.+ $input $output))
+ ))
+ (/.return $output))
+ [(list $input)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.int input)))))))
)))
(def: test|loop
@@ -789,28 +789,28 @@
$index (/.local "index")
expected (i.* (.int iterations) input)]]
(all _.and
- (_.cover [/.while]
- (expression (|>> (as Int) (i.= expected))
- (|> (all /.then
- (/.set (list $index) (/.int +0))
- (/.set (list $output) (/.int +0))
- (/.while (/.< (/.int (.int iterations)) $index)
- (all /.then
- (/.set (list $output) (/.+ $input $output))
- (/.set (list $index) (/.+ (/.int +1) $index))
- ))
- (/.return $output))
- [(list $input)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.int input))))))
- (_.cover [/.for_in]
- (expression (|>> (as Int) (i.= expected))
- (|> (all /.then
- (/.set (list $output) (/.int +0))
- (/.for_in $index (/.array (list.repeated iterations (/.int input)))
- (/.set (list $output) (/.+ $index $output)))
- (/.return $output))
- [(list $input)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.int input))))))
+ (_.coverage [/.while]
+ (expression (|>> (as Int) (i.= expected))
+ (|> (all /.then
+ (/.set (list $index) (/.int +0))
+ (/.set (list $output) (/.int +0))
+ (/.while (/.< (/.int (.int iterations)) $index)
+ (all /.then
+ (/.set (list $output) (/.+ $input $output))
+ (/.set (list $index) (/.+ (/.int +1) $index))
+ ))
+ (/.return $output))
+ [(list $input)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.int input))))))
+ (_.coverage [/.for_in]
+ (expression (|>> (as Int) (i.= expected))
+ (|> (all /.then
+ (/.set (list $output) (/.int +0))
+ (/.for_in $index (/.array (list.repeated iterations (/.int input)))
+ (/.set (list $output) (/.+ $index $output)))
+ (/.return $output))
+ [(list $input)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.int input))))))
..test|label
)))
@@ -834,71 +834,71 @@
.let [expected_tag (/.int expected_tag)
dummy_tag (/.int dummy_tag)]]
(all _.and
- (_.cover [/.begin]
- (expression (|>> (as Frac) (f.= expected))
- (|> (/.begin (/.return (/.float expected))
- (list [(list) $ex (/.return (/.float dummy))]))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.Rescue /.throw/1]
- (expression (|>> (as Frac) (f.= expected))
- (|> (/.begin (all /.then
- (/.throw/1 (/.string error))
- (/.return (/.float dummy)))
- (list [(list) $ex (/.return (/.float expected))]))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.raise]
- (expression (|>> (as Frac) (f.= expected))
- (|> (/.begin (all /.then
- (/.statement (/.raise (/.string error)))
- (/.return (/.float dummy)))
- (list [(list) $ex (/.return (/.float expected))]))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.catch /.throw/2]
- (and (expression (|>> (as Frac) (f.= expected))
- (<| (/.apply_lambda/* (list))
- (/.lambda {.#None}) [(list)]
- /.return
- (/.catch expected_tag) [(list)]
- (/.throw/2 expected_tag (/.float expected))))
- (expression (|>> (as Frac) (f.= expected))
- (<| (/.apply_lambda/* (list))
- (/.lambda {.#None}) [(list)]
- /.return
- (/.catch expected_tag) [(list)]
- /.statement (/.catch dummy_tag) [(list)]
- (/.throw/2 expected_tag (/.float expected))))
- (expression (|>> (as Frac) (f.= expected))
- (<| (/.apply_lambda/* (list))
- (/.lambda {.#None}) [(list)]
- /.return
- (/.catch dummy_tag) [(list)]
- /.statement (/.catch expected_tag) [(list)]
- (/.throw/2 expected_tag (/.float expected))))))
- (_.cover [/.latest_error_message]
- (expression (|>> (as Text) (text#= error))
- (|> (/.begin (all /.then
- (/.statement (/.raise (/.string error)))
- (/.return (/.float dummy)))
- (list [(list) $ex (/.return (/.the "message" /.latest_error_message))]))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.latest_error_location]
- (and (|> (/.return /.latest_error_location)
+ (_.coverage [/.begin]
+ (expression (|>> (as Frac) (f.= expected))
+ (|> (/.begin (/.return (/.float expected))
+ (list [(list) $ex (/.return (/.float dummy))]))
[(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list))
- ..nil)
- (expression (|>> (as Bit) (bit#= true))
- (|> (/.begin (all /.then
- (/.statement (/.raise (/.string error)))
- (/.return (/.float dummy)))
- (list [(list) $ex (/.return (all /.and
- (/.do "kind_of?" (list (is /.CVar (/.manual "Array"))) {.#None} /.latest_error_location)
- (/.> (/.int +0) (/.the "length" /.latest_error_location))))]))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list))))))
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.Rescue /.throw/1]
+ (expression (|>> (as Frac) (f.= expected))
+ (|> (/.begin (all /.then
+ (/.throw/1 (/.string error))
+ (/.return (/.float dummy)))
+ (list [(list) $ex (/.return (/.float expected))]))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.raise]
+ (expression (|>> (as Frac) (f.= expected))
+ (|> (/.begin (all /.then
+ (/.statement (/.raise (/.string error)))
+ (/.return (/.float dummy)))
+ (list [(list) $ex (/.return (/.float expected))]))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.catch /.throw/2]
+ (and (expression (|>> (as Frac) (f.= expected))
+ (<| (/.apply_lambda/* (list))
+ (/.lambda {.#None}) [(list)]
+ /.return
+ (/.catch expected_tag) [(list)]
+ (/.throw/2 expected_tag (/.float expected))))
+ (expression (|>> (as Frac) (f.= expected))
+ (<| (/.apply_lambda/* (list))
+ (/.lambda {.#None}) [(list)]
+ /.return
+ (/.catch expected_tag) [(list)]
+ /.statement (/.catch dummy_tag) [(list)]
+ (/.throw/2 expected_tag (/.float expected))))
+ (expression (|>> (as Frac) (f.= expected))
+ (<| (/.apply_lambda/* (list))
+ (/.lambda {.#None}) [(list)]
+ /.return
+ (/.catch dummy_tag) [(list)]
+ /.statement (/.catch expected_tag) [(list)]
+ (/.throw/2 expected_tag (/.float expected))))))
+ (_.coverage [/.latest_error_message]
+ (expression (|>> (as Text) (text#= error))
+ (|> (/.begin (all /.then
+ (/.statement (/.raise (/.string error)))
+ (/.return (/.float dummy)))
+ (list [(list) $ex (/.return (/.the "message" /.latest_error_message))]))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.latest_error_location]
+ (and (|> (/.return /.latest_error_location)
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list))
+ ..nil)
+ (expression (|>> (as Bit) (bit#= true))
+ (|> (/.begin (all /.then
+ (/.statement (/.raise (/.string error)))
+ (/.return (/.float dummy)))
+ (list [(list) $ex (/.return (all /.and
+ (/.do "kind_of?" (list (is /.CVar (/.manual "Array"))) {.#None} /.latest_error_location)
+ (/.> (/.int +0) (/.the "length" /.latest_error_location))))]))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list))))))
)))
(def: test|function
@@ -916,40 +916,40 @@
$arg/1 (# ! each /.local (random.lower_case 11))
$arg/2 (# ! each /.local (random.lower_case 12))]
(all _.and
- (_.cover [/.lambda /.return]
- (and (expression (|>> (as Frac) (f.= float/0))
- (|> (/.return (/.float float/0))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list))))
- (expression (|>> (as Frac) f.nat (n.= iterations))
- (|> (/.return (/.? (/.< (/.int (.int iterations)) $arg/0)
- (/.apply_lambda/* (list (/.+ (/.int +1) $arg/0)) $self)
- $arg/0))
- [(list $arg/0)] (/.lambda {.#Some $self})
- (/.apply_lambda/* (list (/.int +0)))))))
- (_.cover [/.apply_lambda/*]
- (expression (|>> (as Frac) (f.= (all f.+ float/0 float/1 float/2)))
- (|> (/.return (all /.+ $arg/0 $arg/1 $arg/2))
- [(list $arg/0 $arg/1 $arg/2)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.float float/0) (/.float float/1) (/.float float/2))))))
- (_.cover [/.function]
- (expression (|>> (as Frac) f.nat (n.= iterations))
- (|> (all /.then
- (/.function $self (list $arg/0)
- (/.return (/.? (/.< (/.int (.int iterations)) $arg/0)
- (/.apply/* (list (/.+ (/.int +1) $arg/0)) {.#None} $self)
- $arg/0)))
- (/.return (/.apply/* (list (/.int +0)) {.#None} $self)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.apply/*]
- (expression (|>> (as Frac) (f.= (all f.+ float/0 float/1 float/2)))
- (|> (all /.then
- (/.function $self (list $arg/0 $arg/1 $arg/2)
- (/.return (all /.+ $arg/0 $arg/1 $arg/2)))
- (/.return (/.apply/* (list (/.float float/0) (/.float float/1) (/.float float/2)) {.#None} $self)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.lambda /.return]
+ (and (expression (|>> (as Frac) (f.= float/0))
+ (|> (/.return (/.float float/0))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list))))
+ (expression (|>> (as Frac) f.nat (n.= iterations))
+ (|> (/.return (/.? (/.< (/.int (.int iterations)) $arg/0)
+ (/.apply_lambda/* (list (/.+ (/.int +1) $arg/0)) $self)
+ $arg/0))
+ [(list $arg/0)] (/.lambda {.#Some $self})
+ (/.apply_lambda/* (list (/.int +0)))))))
+ (_.coverage [/.apply_lambda/*]
+ (expression (|>> (as Frac) (f.= (all f.+ float/0 float/1 float/2)))
+ (|> (/.return (all /.+ $arg/0 $arg/1 $arg/2))
+ [(list $arg/0 $arg/1 $arg/2)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.float float/0) (/.float float/1) (/.float float/2))))))
+ (_.coverage [/.function]
+ (expression (|>> (as Frac) f.nat (n.= iterations))
+ (|> (all /.then
+ (/.function $self (list $arg/0)
+ (/.return (/.? (/.< (/.int (.int iterations)) $arg/0)
+ (/.apply/* (list (/.+ (/.int +1) $arg/0)) {.#None} $self)
+ $arg/0)))
+ (/.return (/.apply/* (list (/.int +0)) {.#None} $self)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.apply/*]
+ (expression (|>> (as Frac) (f.= (all f.+ float/0 float/1 float/2)))
+ (|> (all /.then
+ (/.function $self (list $arg/0 $arg/1 $arg/2)
+ (/.return (all /.+ $arg/0 $arg/1 $arg/2)))
+ (/.return (/.apply/* (list (/.float float/0) (/.float float/1) (/.float float/2)) {.#None} $self)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
)))
(def: test|branching
@@ -969,21 +969,21 @@
$arg/2 (/.local arg/2)]
??? random.bit]
(all _.and
- (_.cover [/.if]
- (expression (|>> (as Frac) (f.= (if ??? float/0 float/1)))
- (|> (/.if (/.bool ???)
- (/.return (/.float float/0))
- (/.return (/.float float/1)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
- (_.cover [/.when]
- (expression (|>> (as Frac) (f.= (if ??? float/0 float/1)))
- (|> (all /.then
- (/.when (/.bool ???)
- (/.return (/.float float/0)))
- (/.return (/.float float/1)))
- [(list)] (/.lambda {.#None})
- (/.apply_lambda/* (list)))))
+ (_.coverage [/.if]
+ (expression (|>> (as Frac) (f.= (if ??? float/0 float/1)))
+ (|> (/.if (/.bool ???)
+ (/.return (/.float float/0))
+ (/.return (/.float float/1)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
+ (_.coverage [/.when]
+ (expression (|>> (as Frac) (f.= (if ??? float/0 float/1)))
+ (|> (all /.then
+ (/.when (/.bool ???)
+ (/.return (/.float float/0)))
+ (/.return (/.float float/1)))
+ [(list)] (/.lambda {.#None})
+ (/.apply_lambda/* (list)))))
)))
(def: test|statement
@@ -998,29 +998,29 @@
expected (# ! each (|>> %.int (text.replaced "+" ""))
random.int)]
(all _.and
- (_.cover [/.statement]
- (expression (|>> (as Frac) (f.= float/0))
- (|> (all /.then
- (/.statement (/.+ $arg/0 $arg/0))
- (/.return $arg/0))
- [(list $arg/0)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.float float/0))))))
- (_.cover [/.then]
- (expression (|>> (as Frac) (f.= float/0))
- (|> (all /.then
- (/.return $arg/0)
- (/.return $arg/1))
- [(list $arg/0 $arg/1)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.float float/0) (/.float float/1))))))
- (_.cover [/.require/1]
- (let [$JSON (is /.CVar (/.manual "JSON"))]
- (expression (|>> (as Text) (text#= expected))
- (|> (all /.then
- (/.statement (/.require/1 (/.string "json")))
- (/.return (let [json (/.do "parse" (list $arg/0) {.#None} $JSON)]
- (/.do "generate" (list json) {.#None} $JSON))))
- [(list $arg/0)] (/.lambda {.#None})
- (/.apply_lambda/* (list (/.string expected)))))))
+ (_.coverage [/.statement]
+ (expression (|>> (as Frac) (f.= float/0))
+ (|> (all /.then
+ (/.statement (/.+ $arg/0 $arg/0))
+ (/.return $arg/0))
+ [(list $arg/0)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.float float/0))))))
+ (_.coverage [/.then]
+ (expression (|>> (as Frac) (f.= float/0))
+ (|> (all /.then
+ (/.return $arg/0)
+ (/.return $arg/1))
+ [(list $arg/0 $arg/1)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.float float/0) (/.float float/1))))))
+ (_.coverage [/.require/1]
+ (let [$JSON (is /.CVar (/.manual "JSON"))]
+ (expression (|>> (as Text) (text#= expected))
+ (|> (all /.then
+ (/.statement (/.require/1 (/.string "json")))
+ (/.return (let [json (/.do "parse" (list $arg/0) {.#None} $JSON)]
+ (/.do "generate" (list json) {.#None} $JSON))))
+ [(list $arg/0)] (/.lambda {.#None})
+ (/.apply_lambda/* (list (/.string expected)))))))
..test|exception
..test|branching
..test|loop
@@ -1051,10 +1051,10 @@
(_.for [/.equivalence]
($equivalence.spec /.equivalence ..random_expression))
- (_.cover [/.code /.manual]
- (|> (/.manual (/.code expected))
- (is /.Expression)
- (/#= expected)))
+ (_.coverage [/.code /.manual]
+ (|> (/.manual (/.code expected))
+ (is /.Expression)
+ (/#= expected)))
(_.for [/.Expression]
..test|expression)
(_.for [/.Statement]