From 008bd92cd4093a134092dd21bc6d36bdf6f4721d Mon Sep 17 00:00:00 2001 From: Nadrieril Date: Mon, 8 Apr 2019 17:26:59 +0200 Subject: Move spec tests into the relevant files --- dhall/tests/common/mod.rs | 176 ---------------------- dhall/tests/normalization.rs | 339 ------------------------------------------- dhall/tests/parser.rs | 7 - dhall/tests/typecheck.rs | 302 -------------------------------------- 4 files changed, 824 deletions(-) delete mode 100644 dhall/tests/common/mod.rs delete mode 100644 dhall/tests/normalization.rs delete mode 100644 dhall/tests/parser.rs delete mode 100644 dhall/tests/typecheck.rs (limited to 'dhall/tests') diff --git a/dhall/tests/common/mod.rs b/dhall/tests/common/mod.rs deleted file mode 100644 index 5f16d2c..0000000 --- a/dhall/tests/common/mod.rs +++ /dev/null @@ -1,176 +0,0 @@ -use pretty_assertions::assert_eq as assert_eq_pretty; - -macro_rules! assert_eq_display { - ($left:expr, $right:expr) => {{ - match (&$left, &$right) { - (left_val, right_val) => { - if !(*left_val == *right_val) { - panic!( - r#"assertion failed: `(left == right)` - left: `{}`, -right: `{}`"#, - left_val, right_val - ) - } - } - } - }}; -} - -#[macro_export] -macro_rules! make_spec_test { - ($type:ident, $name:ident, $path:expr) => { - #[test] - #[allow(non_snake_case)] - fn $name() { - use crate::common::*; - run_test($path, Feature::$type); - } - }; -} - -use dhall::*; -use dhall_core::*; -use std::path::PathBuf; - -#[allow(dead_code)] -pub enum Feature { - ParserSuccess, - ParserFailure, - Normalization, - TypecheckSuccess, - TypecheckFailure, - TypeInferenceSuccess, - TypeInferenceFailure, -} - -// Deprecated -fn read_dhall_file<'i>(file_path: &str) -> Result, ImportError> { - dhall::load_dhall_file(&PathBuf::from(file_path), true) -} - -fn load_from_file_str<'i>( - file_path: &str, -) -> Result { - dhall::expr::Parsed::load_from_file(&PathBuf::from(file_path)) -} - -fn load_from_binary_file_str<'i>( - file_path: &str, -) -> Result { - dhall::expr::Parsed::load_from_binary_file(&PathBuf::from(file_path)) -} - -pub fn run_test(base_path: &str, feature: Feature) { - use self::Feature::*; - let base_path_prefix = match feature { - ParserSuccess => "parser/success/", - ParserFailure => "parser/failure/", - Normalization => "normalization/success/", - TypecheckSuccess => "typecheck/success/", - TypecheckFailure => "typecheck/failure/", - TypeInferenceSuccess => "type-inference/success/", - TypeInferenceFailure => "type-inference/failure/", - }; - let base_path = - "../dhall-lang/tests/".to_owned() + base_path_prefix + base_path; - match feature { - ParserSuccess => { - let expr_file_path = base_path.clone() + "A.dhall"; - let expected_file_path = base_path + "B.dhallb"; - let expr = load_from_file_str(&expr_file_path) - .map_err(|e| println!("{}", e)) - .unwrap(); - - let expected = load_from_binary_file_str(&expected_file_path) - .map_err(|e| println!("{}", e)) - .unwrap(); - - assert_eq_pretty!(expr, expected); - - // Round-trip pretty-printer - let expr = - dhall::expr::Parsed::load_from_str(&expr.to_string()).unwrap(); - assert_eq!(expr, expected); - } - ParserFailure => { - let file_path = base_path + ".dhall"; - let err = load_from_file_str(&file_path).unwrap_err(); - match err { - ImportError::ParseError(_) => {} - e => panic!("Expected parse error, got: {:?}", e), - } - } - Normalization => { - let expr_file_path = base_path.clone() + "A.dhall"; - let expected_file_path = base_path + "B.dhall"; - let expr = load_from_file_str(&expr_file_path) - .unwrap() - .resolve() - .unwrap() - .skip_typecheck() - .normalize(); - let expected = load_from_file_str(&expected_file_path) - .unwrap() - .resolve() - .unwrap() - .skip_typecheck() - .normalize(); - - assert_eq_display!(expr, expected); - } - TypecheckFailure => { - let file_path = base_path + ".dhall"; - load_from_file_str(&file_path) - .unwrap() - .skip_resolve() - .unwrap() - .typecheck() - .unwrap_err(); - } - TypecheckSuccess => { - // Many tests stack overflow in debug mode - std::thread::Builder::new() - .stack_size(4 * 1024 * 1024) - .spawn(|| { - let expr_file_path = base_path.clone() + "A.dhall"; - let expected_file_path = base_path + "B.dhall"; - let expr = rc(read_dhall_file(&expr_file_path).unwrap()); - let expected = - rc(read_dhall_file(&expected_file_path).unwrap()); - typecheck::type_of(dhall::subexpr!(expr: expected)) - .unwrap(); - }) - .unwrap() - .join() - .unwrap(); - } - TypeInferenceFailure => { - let file_path = base_path + ".dhall"; - load_from_file_str(&file_path) - .unwrap() - .skip_resolve() - .unwrap() - .typecheck() - .unwrap_err(); - } - TypeInferenceSuccess => { - let expr_file_path = base_path.clone() + "A.dhall"; - let expected_file_path = base_path + "B.dhall"; - let expr = load_from_file_str(&expr_file_path) - .unwrap() - .skip_resolve() - .unwrap() - .typecheck() - .unwrap(); - let ty = expr.get_type().as_normalized().unwrap(); - let expected = load_from_file_str(&expected_file_path) - .unwrap() - .skip_resolve() - .unwrap() - .skip_typecheck() - .skip_normalize(); - assert_eq_display!(ty, &expected); - } - } -} diff --git a/dhall/tests/normalization.rs b/dhall/tests/normalization.rs deleted file mode 100644 index a36a6ac..0000000 --- a/dhall/tests/normalization.rs +++ /dev/null @@ -1,339 +0,0 @@ -#![feature(proc_macro_hygiene)] -#![feature(custom_inner_attributes)] -#![rustfmt::skip] -mod common; - -macro_rules! norm { - ($name:ident, $path:expr) => { - make_spec_test!(Normalization, $name, $path); - }; -} - -norm!(spec_normalization_success_haskell_tutorial_access_0, "haskell-tutorial/access/0"); -// norm!(spec_normalization_success_haskell_tutorial_access_1, "haskell-tutorial/access/1"); -// norm!(spec_normalization_success_haskell_tutorial_combineTypes_0, "haskell-tutorial/combineTypes/0"); -// norm!(spec_normalization_success_haskell_tutorial_combineTypes_1, "haskell-tutorial/combineTypes/1"); -// norm!(spec_normalization_success_haskell_tutorial_prefer_0, "haskell-tutorial/prefer/0"); -norm!(spec_normalization_success_haskell_tutorial_projection_0, "haskell-tutorial/projection/0"); - - -norm!(spec_normalization_success_prelude_Bool_and_0, "prelude/Bool/and/0"); -norm!(spec_normalization_success_prelude_Bool_and_1, "prelude/Bool/and/1"); -norm!(spec_normalization_success_prelude_Bool_build_0, "prelude/Bool/build/0"); -norm!(spec_normalization_success_prelude_Bool_build_1, "prelude/Bool/build/1"); -norm!(spec_normalization_success_prelude_Bool_even_0, "prelude/Bool/even/0"); -norm!(spec_normalization_success_prelude_Bool_even_1, "prelude/Bool/even/1"); -norm!(spec_normalization_success_prelude_Bool_even_2, "prelude/Bool/even/2"); -norm!(spec_normalization_success_prelude_Bool_even_3, "prelude/Bool/even/3"); -norm!(spec_normalization_success_prelude_Bool_fold_0, "prelude/Bool/fold/0"); -norm!(spec_normalization_success_prelude_Bool_fold_1, "prelude/Bool/fold/1"); -norm!(spec_normalization_success_prelude_Bool_not_0, "prelude/Bool/not/0"); -norm!(spec_normalization_success_prelude_Bool_not_1, "prelude/Bool/not/1"); -norm!(spec_normalization_success_prelude_Bool_odd_0, "prelude/Bool/odd/0"); -norm!(spec_normalization_success_prelude_Bool_odd_1, "prelude/Bool/odd/1"); -norm!(spec_normalization_success_prelude_Bool_odd_2, "prelude/Bool/odd/2"); -norm!(spec_normalization_success_prelude_Bool_odd_3, "prelude/Bool/odd/3"); -norm!(spec_normalization_success_prelude_Bool_or_0, "prelude/Bool/or/0"); -norm!(spec_normalization_success_prelude_Bool_or_1, "prelude/Bool/or/1"); -norm!(spec_normalization_success_prelude_Bool_show_0, "prelude/Bool/show/0"); -norm!(spec_normalization_success_prelude_Bool_show_1, "prelude/Bool/show/1"); -// norm!(spec_normalization_success_prelude_Double_show_0, "prelude/Double/show/0"); -// norm!(spec_normalization_success_prelude_Double_show_1, "prelude/Double/show/1"); -// norm!(spec_normalization_success_prelude_Integer_show_0, "prelude/Integer/show/0"); -// norm!(spec_normalization_success_prelude_Integer_show_1, "prelude/Integer/show/1"); -// norm!(spec_normalization_success_prelude_Integer_toDouble_0, "prelude/Integer/toDouble/0"); -// norm!(spec_normalization_success_prelude_Integer_toDouble_1, "prelude/Integer/toDouble/1"); -norm!(spec_normalization_success_prelude_List_all_0, "prelude/List/all/0"); -norm!(spec_normalization_success_prelude_List_all_1, "prelude/List/all/1"); -norm!(spec_normalization_success_prelude_List_any_0, "prelude/List/any/0"); -norm!(spec_normalization_success_prelude_List_any_1, "prelude/List/any/1"); -norm!(spec_normalization_success_prelude_List_build_0, "prelude/List/build/0"); -norm!(spec_normalization_success_prelude_List_build_1, "prelude/List/build/1"); -norm!(spec_normalization_success_prelude_List_concat_0, "prelude/List/concat/0"); -norm!(spec_normalization_success_prelude_List_concat_1, "prelude/List/concat/1"); -norm!(spec_normalization_success_prelude_List_concatMap_0, "prelude/List/concatMap/0"); -norm!(spec_normalization_success_prelude_List_concatMap_1, "prelude/List/concatMap/1"); -norm!(spec_normalization_success_prelude_List_filter_0, "prelude/List/filter/0"); -norm!(spec_normalization_success_prelude_List_filter_1, "prelude/List/filter/1"); -norm!(spec_normalization_success_prelude_List_fold_0, "prelude/List/fold/0"); -norm!(spec_normalization_success_prelude_List_fold_1, "prelude/List/fold/1"); -norm!(spec_normalization_success_prelude_List_fold_2, "prelude/List/fold/2"); -norm!(spec_normalization_success_prelude_List_generate_0, "prelude/List/generate/0"); -norm!(spec_normalization_success_prelude_List_generate_1, "prelude/List/generate/1"); -norm!(spec_normalization_success_prelude_List_head_0, "prelude/List/head/0"); -norm!(spec_normalization_success_prelude_List_head_1, "prelude/List/head/1"); -norm!(spec_normalization_success_prelude_List_indexed_0, "prelude/List/indexed/0"); -norm!(spec_normalization_success_prelude_List_indexed_1, "prelude/List/indexed/1"); -norm!(spec_normalization_success_prelude_List_iterate_0, "prelude/List/iterate/0"); -norm!(spec_normalization_success_prelude_List_iterate_1, "prelude/List/iterate/1"); -norm!(spec_normalization_success_prelude_List_last_0, "prelude/List/last/0"); -norm!(spec_normalization_success_prelude_List_last_1, "prelude/List/last/1"); -norm!(spec_normalization_success_prelude_List_length_0, "prelude/List/length/0"); -norm!(spec_normalization_success_prelude_List_length_1, "prelude/List/length/1"); -norm!(spec_normalization_success_prelude_List_map_0, "prelude/List/map/0"); -norm!(spec_normalization_success_prelude_List_map_1, "prelude/List/map/1"); -norm!(spec_normalization_success_prelude_List_null_0, "prelude/List/null/0"); -norm!(spec_normalization_success_prelude_List_null_1, "prelude/List/null/1"); -norm!(spec_normalization_success_prelude_List_replicate_0, "prelude/List/replicate/0"); -norm!(spec_normalization_success_prelude_List_replicate_1, "prelude/List/replicate/1"); -norm!(spec_normalization_success_prelude_List_reverse_0, "prelude/List/reverse/0"); -norm!(spec_normalization_success_prelude_List_reverse_1, "prelude/List/reverse/1"); -norm!(spec_normalization_success_prelude_List_shifted_0, "prelude/List/shifted/0"); -norm!(spec_normalization_success_prelude_List_shifted_1, "prelude/List/shifted/1"); -norm!(spec_normalization_success_prelude_List_unzip_0, "prelude/List/unzip/0"); -norm!(spec_normalization_success_prelude_List_unzip_1, "prelude/List/unzip/1"); -norm!(spec_normalization_success_prelude_Natural_build_0, "prelude/Natural/build/0"); -norm!(spec_normalization_success_prelude_Natural_build_1, "prelude/Natural/build/1"); -norm!(spec_normalization_success_prelude_Natural_enumerate_0, "prelude/Natural/enumerate/0"); -norm!(spec_normalization_success_prelude_Natural_enumerate_1, "prelude/Natural/enumerate/1"); -norm!(spec_normalization_success_prelude_Natural_even_0, "prelude/Natural/even/0"); -norm!(spec_normalization_success_prelude_Natural_even_1, "prelude/Natural/even/1"); -norm!(spec_normalization_success_prelude_Natural_fold_0, "prelude/Natural/fold/0"); -norm!(spec_normalization_success_prelude_Natural_fold_1, "prelude/Natural/fold/1"); -norm!(spec_normalization_success_prelude_Natural_fold_2, "prelude/Natural/fold/2"); -norm!(spec_normalization_success_prelude_Natural_isZero_0, "prelude/Natural/isZero/0"); -norm!(spec_normalization_success_prelude_Natural_isZero_1, "prelude/Natural/isZero/1"); -norm!(spec_normalization_success_prelude_Natural_odd_0, "prelude/Natural/odd/0"); -norm!(spec_normalization_success_prelude_Natural_odd_1, "prelude/Natural/odd/1"); -norm!(spec_normalization_success_prelude_Natural_product_0, "prelude/Natural/product/0"); -norm!(spec_normalization_success_prelude_Natural_product_1, "prelude/Natural/product/1"); -norm!(spec_normalization_success_prelude_Natural_show_0, "prelude/Natural/show/0"); -norm!(spec_normalization_success_prelude_Natural_show_1, "prelude/Natural/show/1"); -norm!(spec_normalization_success_prelude_Natural_sum_0, "prelude/Natural/sum/0"); -norm!(spec_normalization_success_prelude_Natural_sum_1, "prelude/Natural/sum/1"); -// norm!(spec_normalization_success_prelude_Natural_toDouble_0, "prelude/Natural/toDouble/0"); -// norm!(spec_normalization_success_prelude_Natural_toDouble_1, "prelude/Natural/toDouble/1"); -norm!(spec_normalization_success_prelude_Natural_toInteger_0, "prelude/Natural/toInteger/0"); -norm!(spec_normalization_success_prelude_Natural_toInteger_1, "prelude/Natural/toInteger/1"); -norm!(spec_normalization_success_prelude_Optional_all_0, "prelude/Optional/all/0"); -norm!(spec_normalization_success_prelude_Optional_all_1, "prelude/Optional/all/1"); -norm!(spec_normalization_success_prelude_Optional_any_0, "prelude/Optional/any/0"); -norm!(spec_normalization_success_prelude_Optional_any_1, "prelude/Optional/any/1"); -norm!(spec_normalization_success_prelude_Optional_build_0, "prelude/Optional/build/0"); -norm!(spec_normalization_success_prelude_Optional_build_1, "prelude/Optional/build/1"); -norm!(spec_normalization_success_prelude_Optional_concat_0, "prelude/Optional/concat/0"); -norm!(spec_normalization_success_prelude_Optional_concat_1, "prelude/Optional/concat/1"); -norm!(spec_normalization_success_prelude_Optional_concat_2, "prelude/Optional/concat/2"); -norm!(spec_normalization_success_prelude_Optional_filter_0, "prelude/Optional/filter/0"); -norm!(spec_normalization_success_prelude_Optional_filter_1, "prelude/Optional/filter/1"); -norm!(spec_normalization_success_prelude_Optional_fold_0, "prelude/Optional/fold/0"); -norm!(spec_normalization_success_prelude_Optional_fold_1, "prelude/Optional/fold/1"); -norm!(spec_normalization_success_prelude_Optional_head_0, "prelude/Optional/head/0"); -norm!(spec_normalization_success_prelude_Optional_head_1, "prelude/Optional/head/1"); -norm!(spec_normalization_success_prelude_Optional_head_2, "prelude/Optional/head/2"); -norm!(spec_normalization_success_prelude_Optional_last_0, "prelude/Optional/last/0"); -norm!(spec_normalization_success_prelude_Optional_last_1, "prelude/Optional/last/1"); -norm!(spec_normalization_success_prelude_Optional_last_2, "prelude/Optional/last/2"); -norm!(spec_normalization_success_prelude_Optional_length_0, "prelude/Optional/length/0"); -norm!(spec_normalization_success_prelude_Optional_length_1, "prelude/Optional/length/1"); -norm!(spec_normalization_success_prelude_Optional_map_0, "prelude/Optional/map/0"); -norm!(spec_normalization_success_prelude_Optional_map_1, "prelude/Optional/map/1"); -norm!(spec_normalization_success_prelude_Optional_null_0, "prelude/Optional/null/0"); -norm!(spec_normalization_success_prelude_Optional_null_1, "prelude/Optional/null/1"); -norm!(spec_normalization_success_prelude_Optional_toList_0, "prelude/Optional/toList/0"); -norm!(spec_normalization_success_prelude_Optional_toList_1, "prelude/Optional/toList/1"); -norm!(spec_normalization_success_prelude_Optional_unzip_0, "prelude/Optional/unzip/0"); -norm!(spec_normalization_success_prelude_Optional_unzip_1, "prelude/Optional/unzip/1"); -norm!(spec_normalization_success_prelude_Text_concat_0, "prelude/Text/concat/0"); -norm!(spec_normalization_success_prelude_Text_concat_1, "prelude/Text/concat/1"); -// norm!(spec_normalization_success_prelude_Text_concatMap_0, "prelude/Text/concatMap/0"); -norm!(spec_normalization_success_prelude_Text_concatMap_1, "prelude/Text/concatMap/1"); -// norm!(spec_normalization_success_prelude_Text_concatMapSep_0, "prelude/Text/concatMapSep/0"); -// norm!(spec_normalization_success_prelude_Text_concatMapSep_1, "prelude/Text/concatMapSep/1"); -// norm!(spec_normalization_success_prelude_Text_concatSep_0, "prelude/Text/concatSep/0"); -// norm!(spec_normalization_success_prelude_Text_concatSep_1, "prelude/Text/concatSep/1"); -// norm!(spec_normalization_success_prelude_Text_show_0, "prelude/Text/show/0"); -// norm!(spec_normalization_success_prelude_Text_show_1, "prelude/Text/show/1"); - - - -// norm!(spec_normalization_success_remoteSystems, "remoteSystems"); -// norm!(spec_normalization_success_simple_doubleShow, "simple/doubleShow"); -// norm!(spec_normalization_success_simple_integerShow, "simple/integerShow"); -// norm!(spec_normalization_success_simple_integerToDouble, "simple/integerToDouble"); -// norm!(spec_normalization_success_simple_letlet, "simple/letlet"); -norm!(spec_normalization_success_simple_listBuild, "simple/listBuild"); -norm!(spec_normalization_success_simple_multiLine, "simple/multiLine"); -norm!(spec_normalization_success_simple_naturalBuild, "simple/naturalBuild"); -norm!(spec_normalization_success_simple_naturalPlus, "simple/naturalPlus"); -norm!(spec_normalization_success_simple_naturalShow, "simple/naturalShow"); -norm!(spec_normalization_success_simple_naturalToInteger, "simple/naturalToInteger"); -norm!(spec_normalization_success_simple_optionalBuild, "simple/optionalBuild"); -norm!(spec_normalization_success_simple_optionalBuildFold, "simple/optionalBuildFold"); -norm!(spec_normalization_success_simple_optionalFold, "simple/optionalFold"); -// norm!(spec_normalization_success_simple_sortOperator, "simple/sortOperator"); -// norm!(spec_normalization_success_simplifications_and, "simplifications/and"); -// norm!(spec_normalization_success_simplifications_eq, "simplifications/eq"); -// norm!(spec_normalization_success_simplifications_ifThenElse, "simplifications/ifThenElse"); -// norm!(spec_normalization_success_simplifications_ne, "simplifications/ne"); -// norm!(spec_normalization_success_simplifications_or, "simplifications/or"); - - -norm!(spec_normalization_success_unit_Bool, "unit/Bool"); -norm!(spec_normalization_success_unit_Double, "unit/Double"); -norm!(spec_normalization_success_unit_DoubleLiteral, "unit/DoubleLiteral"); -norm!(spec_normalization_success_unit_DoubleShow, "unit/DoubleShow"); -// norm!(spec_normalization_success_unit_DoubleShowValue, "unit/DoubleShowValue"); -norm!(spec_normalization_success_unit_FunctionApplicationCapture, "unit/FunctionApplicationCapture"); -norm!(spec_normalization_success_unit_FunctionApplicationNoSubstitute, "unit/FunctionApplicationNoSubstitute"); -norm!(spec_normalization_success_unit_FunctionApplicationNormalizeArguments, "unit/FunctionApplicationNormalizeArguments"); -norm!(spec_normalization_success_unit_FunctionApplicationSubstitute, "unit/FunctionApplicationSubstitute"); -norm!(spec_normalization_success_unit_FunctionNormalizeArguments, "unit/FunctionNormalizeArguments"); -norm!(spec_normalization_success_unit_FunctionTypeNormalizeArguments, "unit/FunctionTypeNormalizeArguments"); -// norm!(spec_normalization_success_unit_IfAlternativesIdentical, "unit/IfAlternativesIdentical"); -norm!(spec_normalization_success_unit_IfFalse, "unit/IfFalse"); -norm!(spec_normalization_success_unit_IfNormalizePredicateAndBranches, "unit/IfNormalizePredicateAndBranches"); -// norm!(spec_normalization_success_unit_IfTrivial, "unit/IfTrivial"); -norm!(spec_normalization_success_unit_IfTrue, "unit/IfTrue"); -norm!(spec_normalization_success_unit_Integer, "unit/Integer"); -norm!(spec_normalization_success_unit_IntegerNegative, "unit/IntegerNegative"); -norm!(spec_normalization_success_unit_IntegerPositive, "unit/IntegerPositive"); -// norm!(spec_normalization_success_unit_IntegerShow_12, "unit/IntegerShow-12"); -// norm!(spec_normalization_success_unit_IntegerShow12, "unit/IntegerShow12"); -norm!(spec_normalization_success_unit_IntegerShow, "unit/IntegerShow"); -// norm!(spec_normalization_success_unit_IntegerToDouble_12, "unit/IntegerToDouble-12"); -// norm!(spec_normalization_success_unit_IntegerToDouble12, "unit/IntegerToDouble12"); -norm!(spec_normalization_success_unit_IntegerToDouble, "unit/IntegerToDouble"); -norm!(spec_normalization_success_unit_Kind, "unit/Kind"); -norm!(spec_normalization_success_unit_Let, "unit/Let"); -norm!(spec_normalization_success_unit_LetWithType, "unit/LetWithType"); -norm!(spec_normalization_success_unit_List, "unit/List"); -norm!(spec_normalization_success_unit_ListBuild, "unit/ListBuild"); -norm!(spec_normalization_success_unit_ListBuildFoldFusion, "unit/ListBuildFoldFusion"); -norm!(spec_normalization_success_unit_ListBuildImplementation, "unit/ListBuildImplementation"); -norm!(spec_normalization_success_unit_ListFold, "unit/ListFold"); -norm!(spec_normalization_success_unit_ListFoldEmpty, "unit/ListFoldEmpty"); -norm!(spec_normalization_success_unit_ListFoldOne, "unit/ListFoldOne"); -norm!(spec_normalization_success_unit_ListHead, "unit/ListHead"); -norm!(spec_normalization_success_unit_ListHeadEmpty, "unit/ListHeadEmpty"); -norm!(spec_normalization_success_unit_ListHeadOne, "unit/ListHeadOne"); -norm!(spec_normalization_success_unit_ListIndexed, "unit/ListIndexed"); -norm!(spec_normalization_success_unit_ListIndexedEmpty, "unit/ListIndexedEmpty"); -norm!(spec_normalization_success_unit_ListIndexedOne, "unit/ListIndexedOne"); -norm!(spec_normalization_success_unit_ListLast, "unit/ListLast"); -norm!(spec_normalization_success_unit_ListLastEmpty, "unit/ListLastEmpty"); -norm!(spec_normalization_success_unit_ListLastOne, "unit/ListLastOne"); -norm!(spec_normalization_success_unit_ListLength, "unit/ListLength"); -norm!(spec_normalization_success_unit_ListLengthEmpty, "unit/ListLengthEmpty"); -norm!(spec_normalization_success_unit_ListLengthOne, "unit/ListLengthOne"); -norm!(spec_normalization_success_unit_ListNormalizeElements, "unit/ListNormalizeElements"); -norm!(spec_normalization_success_unit_ListNormalizeTypeAnnotation, "unit/ListNormalizeTypeAnnotation"); -norm!(spec_normalization_success_unit_ListReverse, "unit/ListReverse"); -norm!(spec_normalization_success_unit_ListReverseEmpty, "unit/ListReverseEmpty"); -norm!(spec_normalization_success_unit_ListReverseTwo, "unit/ListReverseTwo"); -// norm!(spec_normalization_success_unit_Merge, "unit/Merge"); -norm!(spec_normalization_success_unit_MergeNormalizeArguments, "unit/MergeNormalizeArguments"); -norm!(spec_normalization_success_unit_MergeWithType, "unit/MergeWithType"); -norm!(spec_normalization_success_unit_MergeWithTypeNormalizeArguments, "unit/MergeWithTypeNormalizeArguments"); -norm!(spec_normalization_success_unit_Natural, "unit/Natural"); -norm!(spec_normalization_success_unit_NaturalBuild, "unit/NaturalBuild"); -norm!(spec_normalization_success_unit_NaturalBuildFoldFusion, "unit/NaturalBuildFoldFusion"); -norm!(spec_normalization_success_unit_NaturalBuildImplementation, "unit/NaturalBuildImplementation"); -norm!(spec_normalization_success_unit_NaturalEven, "unit/NaturalEven"); -norm!(spec_normalization_success_unit_NaturalEvenOne, "unit/NaturalEvenOne"); -norm!(spec_normalization_success_unit_NaturalEvenZero, "unit/NaturalEvenZero"); -norm!(spec_normalization_success_unit_NaturalFold, "unit/NaturalFold"); -norm!(spec_normalization_success_unit_NaturalFoldOne, "unit/NaturalFoldOne"); -norm!(spec_normalization_success_unit_NaturalFoldZero, "unit/NaturalFoldZero"); -norm!(spec_normalization_success_unit_NaturalIsZero, "unit/NaturalIsZero"); -norm!(spec_normalization_success_unit_NaturalIsZeroOne, "unit/NaturalIsZeroOne"); -norm!(spec_normalization_success_unit_NaturalIsZeroZero, "unit/NaturalIsZeroZero"); -norm!(spec_normalization_success_unit_NaturalLiteral, "unit/NaturalLiteral"); -norm!(spec_normalization_success_unit_NaturalOdd, "unit/NaturalOdd"); -norm!(spec_normalization_success_unit_NaturalOddOne, "unit/NaturalOddOne"); -norm!(spec_normalization_success_unit_NaturalOddZero, "unit/NaturalOddZero"); -norm!(spec_normalization_success_unit_NaturalShow, "unit/NaturalShow"); -norm!(spec_normalization_success_unit_NaturalShowOne, "unit/NaturalShowOne"); -norm!(spec_normalization_success_unit_NaturalToInteger, "unit/NaturalToInteger"); -norm!(spec_normalization_success_unit_NaturalToIntegerOne, "unit/NaturalToIntegerOne"); -norm!(spec_normalization_success_unit_None, "unit/None"); -norm!(spec_normalization_success_unit_NoneNatural, "unit/NoneNatural"); -// norm!(spec_normalization_success_unit_OperatorAndEquivalentArguments, "unit/OperatorAndEquivalentArguments"); -// norm!(spec_normalization_success_unit_OperatorAndLhsFalse, "unit/OperatorAndLhsFalse"); -// norm!(spec_normalization_success_unit_OperatorAndLhsTrue, "unit/OperatorAndLhsTrue"); -// norm!(spec_normalization_success_unit_OperatorAndNormalizeArguments, "unit/OperatorAndNormalizeArguments"); -// norm!(spec_normalization_success_unit_OperatorAndRhsFalse, "unit/OperatorAndRhsFalse"); -// norm!(spec_normalization_success_unit_OperatorAndRhsTrue, "unit/OperatorAndRhsTrue"); -// norm!(spec_normalization_success_unit_OperatorEqualEquivalentArguments, "unit/OperatorEqualEquivalentArguments"); -// norm!(spec_normalization_success_unit_OperatorEqualLhsTrue, "unit/OperatorEqualLhsTrue"); -// norm!(spec_normalization_success_unit_OperatorEqualNormalizeArguments, "unit/OperatorEqualNormalizeArguments"); -// norm!(spec_normalization_success_unit_OperatorEqualRhsTrue, "unit/OperatorEqualRhsTrue"); -norm!(spec_normalization_success_unit_OperatorListConcatenateLhsEmpty, "unit/OperatorListConcatenateLhsEmpty"); -norm!(spec_normalization_success_unit_OperatorListConcatenateListList, "unit/OperatorListConcatenateListList"); -norm!(spec_normalization_success_unit_OperatorListConcatenateNormalizeArguments, "unit/OperatorListConcatenateNormalizeArguments"); -norm!(spec_normalization_success_unit_OperatorListConcatenateRhsEmpty, "unit/OperatorListConcatenateRhsEmpty"); -// norm!(spec_normalization_success_unit_OperatorNotEqualEquivalentArguments, "unit/OperatorNotEqualEquivalentArguments"); -// norm!(spec_normalization_success_unit_OperatorNotEqualLhsFalse, "unit/OperatorNotEqualLhsFalse"); -// norm!(spec_normalization_success_unit_OperatorNotEqualNormalizeArguments, "unit/OperatorNotEqualNormalizeArguments"); -// norm!(spec_normalization_success_unit_OperatorNotEqualRhsFalse, "unit/OperatorNotEqualRhsFalse"); -// norm!(spec_normalization_success_unit_OperatorOrEquivalentArguments, "unit/OperatorOrEquivalentArguments"); -// norm!(spec_normalization_success_unit_OperatorOrLhsFalse, "unit/OperatorOrLhsFalse"); -// norm!(spec_normalization_success_unit_OperatorOrLhsTrue, "unit/OperatorOrLhsTrue"); -// norm!(spec_normalization_success_unit_OperatorOrNormalizeArguments, "unit/OperatorOrNormalizeArguments"); -// norm!(spec_normalization_success_unit_OperatorOrRhsFalse, "unit/OperatorOrRhsFalse"); -// norm!(spec_normalization_success_unit_OperatorOrRhsTrue, "unit/OperatorOrRhsTrue"); -// norm!(spec_normalization_success_unit_OperatorPlusLhsZero, "unit/OperatorPlusLhsZero"); -// norm!(spec_normalization_success_unit_OperatorPlusNormalizeArguments, "unit/OperatorPlusNormalizeArguments"); -norm!(spec_normalization_success_unit_OperatorPlusOneAndOne, "unit/OperatorPlusOneAndOne"); -// norm!(spec_normalization_success_unit_OperatorPlusRhsZero, "unit/OperatorPlusRhsZero"); -// norm!(spec_normalization_success_unit_OperatorTextConcatenateLhsEmpty, "unit/OperatorTextConcatenateLhsEmpty"); -// norm!(spec_normalization_success_unit_OperatorTextConcatenateNormalizeArguments, "unit/OperatorTextConcatenateNormalizeArguments"); -// norm!(spec_normalization_success_unit_OperatorTextConcatenateRhsEmpty, "unit/OperatorTextConcatenateRhsEmpty"); -norm!(spec_normalization_success_unit_OperatorTextConcatenateTextText, "unit/OperatorTextConcatenateTextText"); -// norm!(spec_normalization_success_unit_OperatorTimesLhsOne, "unit/OperatorTimesLhsOne"); -// norm!(spec_normalization_success_unit_OperatorTimesLhsZero, "unit/OperatorTimesLhsZero"); -// norm!(spec_normalization_success_unit_OperatorTimesNormalizeArguments, "unit/OperatorTimesNormalizeArguments"); -// norm!(spec_normalization_success_unit_OperatorTimesRhsOne, "unit/OperatorTimesRhsOne"); -// norm!(spec_normalization_success_unit_OperatorTimesRhsZero, "unit/OperatorTimesRhsZero"); -norm!(spec_normalization_success_unit_OperatorTimesTwoAndTwo, "unit/OperatorTimesTwoAndTwo"); -norm!(spec_normalization_success_unit_Optional, "unit/Optional"); -norm!(spec_normalization_success_unit_OptionalBuild, "unit/OptionalBuild"); -norm!(spec_normalization_success_unit_OptionalBuildFoldFusion, "unit/OptionalBuildFoldFusion"); -norm!(spec_normalization_success_unit_OptionalBuildImplementation, "unit/OptionalBuildImplementation"); -norm!(spec_normalization_success_unit_OptionalFold, "unit/OptionalFold"); -norm!(spec_normalization_success_unit_OptionalFoldNone, "unit/OptionalFoldNone"); -norm!(spec_normalization_success_unit_OptionalFoldSome, "unit/OptionalFoldSome"); -norm!(spec_normalization_success_unit_Record, "unit/Record"); -norm!(spec_normalization_success_unit_RecordEmpty, "unit/RecordEmpty"); -norm!(spec_normalization_success_unit_RecordProjection, "unit/RecordProjection"); -norm!(spec_normalization_success_unit_RecordProjectionEmpty, "unit/RecordProjectionEmpty"); -norm!(spec_normalization_success_unit_RecordProjectionNormalizeArguments, "unit/RecordProjectionNormalizeArguments"); -norm!(spec_normalization_success_unit_RecordSelection, "unit/RecordSelection"); -norm!(spec_normalization_success_unit_RecordSelectionNormalizeArguments, "unit/RecordSelectionNormalizeArguments"); -norm!(spec_normalization_success_unit_RecordType, "unit/RecordType"); -norm!(spec_normalization_success_unit_RecordTypeEmpty, "unit/RecordTypeEmpty"); -// norm!(spec_normalization_success_unit_RecursiveRecordMergeCollision, "unit/RecursiveRecordMergeCollision"); -// norm!(spec_normalization_success_unit_RecursiveRecordMergeLhsEmpty, "unit/RecursiveRecordMergeLhsEmpty"); -// norm!(spec_normalization_success_unit_RecursiveRecordMergeNoCollision, "unit/RecursiveRecordMergeNoCollision"); -// norm!(spec_normalization_success_unit_RecursiveRecordMergeNormalizeArguments, "unit/RecursiveRecordMergeNormalizeArguments"); -// norm!(spec_normalization_success_unit_RecursiveRecordMergeRhsEmpty, "unit/RecursiveRecordMergeRhsEmpty"); -// norm!(spec_normalization_success_unit_RecursiveRecordTypeMergeCollision, "unit/RecursiveRecordTypeMergeCollision"); -// norm!(spec_normalization_success_unit_RecursiveRecordTypeMergeLhsEmpty, "unit/RecursiveRecordTypeMergeLhsEmpty"); -// norm!(spec_normalization_success_unit_RecursiveRecordTypeMergeNoCollision, "unit/RecursiveRecordTypeMergeNoCollision"); -// norm!(spec_normalization_success_unit_RecursiveRecordTypeMergeNormalizeArguments, "unit/RecursiveRecordTypeMergeNormalizeArguments"); -// norm!(spec_normalization_success_unit_RecursiveRecordTypeMergeRhsEmpty, "unit/RecursiveRecordTypeMergeRhsEmpty"); -// norm!(spec_normalization_success_unit_RightBiasedRecordMergeCollision, "unit/RightBiasedRecordMergeCollision"); -// norm!(spec_normalization_success_unit_RightBiasedRecordMergeLhsEmpty, "unit/RightBiasedRecordMergeLhsEmpty"); -// norm!(spec_normalization_success_unit_RightBiasedRecordMergeNoCollision, "unit/RightBiasedRecordMergeNoCollision"); -// norm!(spec_normalization_success_unit_RightBiasedRecordMergeNormalizeArguments, "unit/RightBiasedRecordMergeNormalizeArguments"); -// norm!(spec_normalization_success_unit_RightBiasedRecordMergeRhsEmpty, "unit/RightBiasedRecordMergeRhsEmpty"); -norm!(spec_normalization_success_unit_SomeNormalizeArguments, "unit/SomeNormalizeArguments"); -norm!(spec_normalization_success_unit_Sort, "unit/Sort"); -norm!(spec_normalization_success_unit_Text, "unit/Text"); -// norm!(spec_normalization_success_unit_TextInterpolate, "unit/TextInterpolate"); -norm!(spec_normalization_success_unit_TextLiteral, "unit/TextLiteral"); -norm!(spec_normalization_success_unit_TextNormalizeInterpolations, "unit/TextNormalizeInterpolations"); -norm!(spec_normalization_success_unit_TextShow, "unit/TextShow"); -// norm!(spec_normalization_success_unit_TextShowAllEscapes, "unit/TextShowAllEscapes"); -norm!(spec_normalization_success_unit_True, "unit/True"); -norm!(spec_normalization_success_unit_Type, "unit/Type"); -norm!(spec_normalization_success_unit_TypeAnnotation, "unit/TypeAnnotation"); -// norm!(spec_normalization_success_unit_UnionNormalizeAlternatives, "unit/UnionNormalizeAlternatives"); -norm!(spec_normalization_success_unit_UnionNormalizeArguments, "unit/UnionNormalizeArguments"); -// norm!(spec_normalization_success_unit_UnionProjectConstructor, "unit/UnionProjectConstructor"); -norm!(spec_normalization_success_unit_UnionProjectConstructorNormalizeArguments, "unit/UnionProjectConstructorNormalizeArguments"); -// norm!(spec_normalization_success_unit_UnionSortAlternatives, "unit/UnionSortAlternatives"); -// norm!(spec_normalization_success_unit_UnionType, "unit/UnionType"); -norm!(spec_normalization_success_unit_UnionTypeEmpty, "unit/UnionTypeEmpty"); -// norm!(spec_normalization_success_unit_UnionTypeNormalizeArguments, "unit/UnionTypeNormalizeArguments"); -norm!(spec_normalization_success_unit_Variable, "unit/Variable"); diff --git a/dhall/tests/parser.rs b/dhall/tests/parser.rs deleted file mode 100644 index 3969dc9..0000000 --- a/dhall/tests/parser.rs +++ /dev/null @@ -1,7 +0,0 @@ -#![feature(proc_macro_hygiene)] -#![feature(custom_inner_attributes)] -#![rustfmt::skip] -mod common; - -// See ../build.rs -include!(concat!(env!("OUT_DIR"), "/parser_tests.rs")); diff --git a/dhall/tests/typecheck.rs b/dhall/tests/typecheck.rs deleted file mode 100644 index 8d72313..0000000 --- a/dhall/tests/typecheck.rs +++ /dev/null @@ -1,302 +0,0 @@ -#![feature(proc_macro_hygiene)] -#![feature(custom_inner_attributes)] -#![rustfmt::skip] -mod common; - -macro_rules! tc_success { - ($name:ident, $path:expr) => { - make_spec_test!(TypecheckSuccess, $name, $path); - }; -} -// macro_rules! tc_failure { -// ($name:ident, $path:expr) => { -// make_spec_test!(TypecheckFailure, $name, $path); -// }; -// } - -macro_rules! ti_success { - ($name:ident, $path:expr) => { - make_spec_test!(TypeInferenceSuccess, $name, $path); - }; -} -// macro_rules! ti_failure { -// ($name:ident, $path:expr) => { -// make_spec_test!(TypeInferenceFailure, $name, $path); -// }; -// } - -// tc_success!(spec_typecheck_success_accessEncodedType, "accessEncodedType"); -// tc_success!(spec_typecheck_success_accessType, "accessType"); -tc_success!(spec_typecheck_success_prelude_Bool_and_0, "prelude/Bool/and/0"); -tc_success!(spec_typecheck_success_prelude_Bool_and_1, "prelude/Bool/and/1"); -tc_success!(spec_typecheck_success_prelude_Bool_build_0, "prelude/Bool/build/0"); -tc_success!(spec_typecheck_success_prelude_Bool_build_1, "prelude/Bool/build/1"); -tc_success!(spec_typecheck_success_prelude_Bool_even_0, "prelude/Bool/even/0"); -tc_success!(spec_typecheck_success_prelude_Bool_even_1, "prelude/Bool/even/1"); -tc_success!(spec_typecheck_success_prelude_Bool_even_2, "prelude/Bool/even/2"); -tc_success!(spec_typecheck_success_prelude_Bool_even_3, "prelude/Bool/even/3"); -tc_success!(spec_typecheck_success_prelude_Bool_fold_0, "prelude/Bool/fold/0"); -tc_success!(spec_typecheck_success_prelude_Bool_fold_1, "prelude/Bool/fold/1"); -tc_success!(spec_typecheck_success_prelude_Bool_not_0, "prelude/Bool/not/0"); -tc_success!(spec_typecheck_success_prelude_Bool_not_1, "prelude/Bool/not/1"); -tc_success!(spec_typecheck_success_prelude_Bool_odd_0, "prelude/Bool/odd/0"); -tc_success!(spec_typecheck_success_prelude_Bool_odd_1, "prelude/Bool/odd/1"); -tc_success!(spec_typecheck_success_prelude_Bool_odd_2, "prelude/Bool/odd/2"); -tc_success!(spec_typecheck_success_prelude_Bool_odd_3, "prelude/Bool/odd/3"); -tc_success!(spec_typecheck_success_prelude_Bool_or_0, "prelude/Bool/or/0"); -tc_success!(spec_typecheck_success_prelude_Bool_or_1, "prelude/Bool/or/1"); -tc_success!(spec_typecheck_success_prelude_Bool_show_0, "prelude/Bool/show/0"); -tc_success!(spec_typecheck_success_prelude_Bool_show_1, "prelude/Bool/show/1"); -// tc_success!(spec_typecheck_success_prelude_Double_show_0, "prelude/Double/show/0"); -// tc_success!(spec_typecheck_success_prelude_Double_show_1, "prelude/Double/show/1"); -// tc_success!(spec_typecheck_success_prelude_Integer_show_0, "prelude/Integer/show/0"); -// tc_success!(spec_typecheck_success_prelude_Integer_show_1, "prelude/Integer/show/1"); -// tc_success!(spec_typecheck_success_prelude_Integer_toDouble_0, "prelude/Integer/toDouble/0"); -// tc_success!(spec_typecheck_success_prelude_Integer_toDouble_1, "prelude/Integer/toDouble/1"); -tc_success!(spec_typecheck_success_prelude_List_all_0, "prelude/List/all/0"); -tc_success!(spec_typecheck_success_prelude_List_all_1, "prelude/List/all/1"); -tc_success!(spec_typecheck_success_prelude_List_any_0, "prelude/List/any/0"); -tc_success!(spec_typecheck_success_prelude_List_any_1, "prelude/List/any/1"); -tc_success!(spec_typecheck_success_prelude_List_build_0, "prelude/List/build/0"); -tc_success!(spec_typecheck_success_prelude_List_build_1, "prelude/List/build/1"); -tc_success!(spec_typecheck_success_prelude_List_concat_0, "prelude/List/concat/0"); -tc_success!(spec_typecheck_success_prelude_List_concat_1, "prelude/List/concat/1"); -tc_success!(spec_typecheck_success_prelude_List_concatMap_0, "prelude/List/concatMap/0"); -tc_success!(spec_typecheck_success_prelude_List_concatMap_1, "prelude/List/concatMap/1"); -tc_success!(spec_typecheck_success_prelude_List_filter_0, "prelude/List/filter/0"); -tc_success!(spec_typecheck_success_prelude_List_filter_1, "prelude/List/filter/1"); -tc_success!(spec_typecheck_success_prelude_List_fold_0, "prelude/List/fold/0"); -tc_success!(spec_typecheck_success_prelude_List_fold_1, "prelude/List/fold/1"); -tc_success!(spec_typecheck_success_prelude_List_fold_2, "prelude/List/fold/2"); -tc_success!(spec_typecheck_success_prelude_List_generate_0, "prelude/List/generate/0"); -tc_success!(spec_typecheck_success_prelude_List_generate_1, "prelude/List/generate/1"); -tc_success!(spec_typecheck_success_prelude_List_head_0, "prelude/List/head/0"); -tc_success!(spec_typecheck_success_prelude_List_head_1, "prelude/List/head/1"); -tc_success!(spec_typecheck_success_prelude_List_indexed_0, "prelude/List/indexed/0"); -tc_success!(spec_typecheck_success_prelude_List_indexed_1, "prelude/List/indexed/1"); -tc_success!(spec_typecheck_success_prelude_List_iterate_0, "prelude/List/iterate/0"); -tc_success!(spec_typecheck_success_prelude_List_iterate_1, "prelude/List/iterate/1"); -tc_success!(spec_typecheck_success_prelude_List_last_0, "prelude/List/last/0"); -tc_success!(spec_typecheck_success_prelude_List_last_1, "prelude/List/last/1"); -tc_success!(spec_typecheck_success_prelude_List_length_0, "prelude/List/length/0"); -tc_success!(spec_typecheck_success_prelude_List_length_1, "prelude/List/length/1"); -tc_success!(spec_typecheck_success_prelude_List_map_0, "prelude/List/map/0"); -tc_success!(spec_typecheck_success_prelude_List_map_1, "prelude/List/map/1"); -tc_success!(spec_typecheck_success_prelude_List_null_0, "prelude/List/null/0"); -tc_success!(spec_typecheck_success_prelude_List_null_1, "prelude/List/null/1"); -tc_success!(spec_typecheck_success_prelude_List_replicate_0, "prelude/List/replicate/0"); -tc_success!(spec_typecheck_success_prelude_List_replicate_1, "prelude/List/replicate/1"); -tc_success!(spec_typecheck_success_prelude_List_reverse_0, "prelude/List/reverse/0"); -tc_success!(spec_typecheck_success_prelude_List_reverse_1, "prelude/List/reverse/1"); -tc_success!(spec_typecheck_success_prelude_List_shifted_0, "prelude/List/shifted/0"); -tc_success!(spec_typecheck_success_prelude_List_shifted_1, "prelude/List/shifted/1"); -tc_success!(spec_typecheck_success_prelude_List_unzip_0, "prelude/List/unzip/0"); -tc_success!(spec_typecheck_success_prelude_List_unzip_1, "prelude/List/unzip/1"); -tc_success!(spec_typecheck_success_prelude_Monoid_00, "prelude/Monoid/00"); -tc_success!(spec_typecheck_success_prelude_Monoid_01, "prelude/Monoid/01"); -tc_success!(spec_typecheck_success_prelude_Monoid_02, "prelude/Monoid/02"); -tc_success!(spec_typecheck_success_prelude_Monoid_03, "prelude/Monoid/03"); -tc_success!(spec_typecheck_success_prelude_Monoid_04, "prelude/Monoid/04"); -tc_success!(spec_typecheck_success_prelude_Monoid_05, "prelude/Monoid/05"); -tc_success!(spec_typecheck_success_prelude_Monoid_06, "prelude/Monoid/06"); -tc_success!(spec_typecheck_success_prelude_Monoid_07, "prelude/Monoid/07"); -tc_success!(spec_typecheck_success_prelude_Monoid_08, "prelude/Monoid/08"); -tc_success!(spec_typecheck_success_prelude_Monoid_09, "prelude/Monoid/09"); -tc_success!(spec_typecheck_success_prelude_Monoid_10, "prelude/Monoid/10"); -tc_success!(spec_typecheck_success_prelude_Natural_build_0, "prelude/Natural/build/0"); -tc_success!(spec_typecheck_success_prelude_Natural_build_1, "prelude/Natural/build/1"); -tc_success!(spec_typecheck_success_prelude_Natural_enumerate_0, "prelude/Natural/enumerate/0"); -tc_success!(spec_typecheck_success_prelude_Natural_enumerate_1, "prelude/Natural/enumerate/1"); -tc_success!(spec_typecheck_success_prelude_Natural_even_0, "prelude/Natural/even/0"); -tc_success!(spec_typecheck_success_prelude_Natural_even_1, "prelude/Natural/even/1"); -tc_success!(spec_typecheck_success_prelude_Natural_fold_0, "prelude/Natural/fold/0"); -tc_success!(spec_typecheck_success_prelude_Natural_fold_1, "prelude/Natural/fold/1"); -tc_success!(spec_typecheck_success_prelude_Natural_fold_2, "prelude/Natural/fold/2"); -tc_success!(spec_typecheck_success_prelude_Natural_isZero_0, "prelude/Natural/isZero/0"); -tc_success!(spec_typecheck_success_prelude_Natural_isZero_1, "prelude/Natural/isZero/1"); -tc_success!(spec_typecheck_success_prelude_Natural_odd_0, "prelude/Natural/odd/0"); -tc_success!(spec_typecheck_success_prelude_Natural_odd_1, "prelude/Natural/odd/1"); -tc_success!(spec_typecheck_success_prelude_Natural_product_0, "prelude/Natural/product/0"); -tc_success!(spec_typecheck_success_prelude_Natural_product_1, "prelude/Natural/product/1"); -// tc_success!(spec_typecheck_success_prelude_Natural_show_0, "prelude/Natural/show/0"); -// tc_success!(spec_typecheck_success_prelude_Natural_show_1, "prelude/Natural/show/1"); -tc_success!(spec_typecheck_success_prelude_Natural_sum_0, "prelude/Natural/sum/0"); -tc_success!(spec_typecheck_success_prelude_Natural_sum_1, "prelude/Natural/sum/1"); -// tc_success!(spec_typecheck_success_prelude_Natural_toDouble_0, "prelude/Natural/toDouble/0"); -// tc_success!(spec_typecheck_success_prelude_Natural_toDouble_1, "prelude/Natural/toDouble/1"); -// tc_success!(spec_typecheck_success_prelude_Natural_toInteger_0, "prelude/Natural/toInteger/0"); -// tc_success!(spec_typecheck_success_prelude_Natural_toInteger_1, "prelude/Natural/toInteger/1"); -tc_success!(spec_typecheck_success_prelude_Optional_all_0, "prelude/Optional/all/0"); -tc_success!(spec_typecheck_success_prelude_Optional_all_1, "prelude/Optional/all/1"); -tc_success!(spec_typecheck_success_prelude_Optional_any_0, "prelude/Optional/any/0"); -tc_success!(spec_typecheck_success_prelude_Optional_any_1, "prelude/Optional/any/1"); -// tc_success!(spec_typecheck_success_prelude_Optional_build_0, "prelude/Optional/build/0"); -// tc_success!(spec_typecheck_success_prelude_Optional_build_1, "prelude/Optional/build/1"); -tc_success!(spec_typecheck_success_prelude_Optional_concat_0, "prelude/Optional/concat/0"); -tc_success!(spec_typecheck_success_prelude_Optional_concat_1, "prelude/Optional/concat/1"); -tc_success!(spec_typecheck_success_prelude_Optional_concat_2, "prelude/Optional/concat/2"); -// tc_success!(spec_typecheck_success_prelude_Optional_filter_0, "prelude/Optional/filter/0"); -// tc_success!(spec_typecheck_success_prelude_Optional_filter_1, "prelude/Optional/filter/1"); -tc_success!(spec_typecheck_success_prelude_Optional_fold_0, "prelude/Optional/fold/0"); -tc_success!(spec_typecheck_success_prelude_Optional_fold_1, "prelude/Optional/fold/1"); -tc_success!(spec_typecheck_success_prelude_Optional_head_0, "prelude/Optional/head/0"); -tc_success!(spec_typecheck_success_prelude_Optional_head_1, "prelude/Optional/head/1"); -tc_success!(spec_typecheck_success_prelude_Optional_head_2, "prelude/Optional/head/2"); -tc_success!(spec_typecheck_success_prelude_Optional_last_0, "prelude/Optional/last/0"); -tc_success!(spec_typecheck_success_prelude_Optional_last_1, "prelude/Optional/last/1"); -tc_success!(spec_typecheck_success_prelude_Optional_last_2, "prelude/Optional/last/2"); -tc_success!(spec_typecheck_success_prelude_Optional_length_0, "prelude/Optional/length/0"); -tc_success!(spec_typecheck_success_prelude_Optional_length_1, "prelude/Optional/length/1"); -tc_success!(spec_typecheck_success_prelude_Optional_map_0, "prelude/Optional/map/0"); -tc_success!(spec_typecheck_success_prelude_Optional_map_1, "prelude/Optional/map/1"); -tc_success!(spec_typecheck_success_prelude_Optional_null_0, "prelude/Optional/null/0"); -tc_success!(spec_typecheck_success_prelude_Optional_null_1, "prelude/Optional/null/1"); -tc_success!(spec_typecheck_success_prelude_Optional_toList_0, "prelude/Optional/toList/0"); -tc_success!(spec_typecheck_success_prelude_Optional_toList_1, "prelude/Optional/toList/1"); -tc_success!(spec_typecheck_success_prelude_Optional_unzip_0, "prelude/Optional/unzip/0"); -tc_success!(spec_typecheck_success_prelude_Optional_unzip_1, "prelude/Optional/unzip/1"); -tc_success!(spec_typecheck_success_prelude_Text_concat_0, "prelude/Text/concat/0"); -tc_success!(spec_typecheck_success_prelude_Text_concat_1, "prelude/Text/concat/1"); -// tc_success!(spec_typecheck_success_prelude_Text_concatMap_0, "prelude/Text/concatMap/0"); -// tc_success!(spec_typecheck_success_prelude_Text_concatMap_1, "prelude/Text/concatMap/1"); -// tc_success!(spec_typecheck_success_prelude_Text_concatMapSep_0, "prelude/Text/concatMapSep/0"); -// tc_success!(spec_typecheck_success_prelude_Text_concatMapSep_1, "prelude/Text/concatMapSep/1"); -// tc_success!(spec_typecheck_success_prelude_Text_concatSep_0, "prelude/Text/concatSep/0"); -// tc_success!(spec_typecheck_success_prelude_Text_concatSep_1, "prelude/Text/concatSep/1"); -// tc_success!(spec_typecheck_success_recordOfRecordOfTypes, "recordOfRecordOfTypes"); -// tc_success!(spec_typecheck_success_recordOfTypes, "recordOfTypes"); -// tc_success!(spec_typecheck_success_simple_access_0, "simple/access/0"); -// tc_success!(spec_typecheck_success_simple_access_1, "simple/access/1"); -// tc_success!(spec_typecheck_success_simple_alternativesAreTypes, "simple/alternativesAreTypes"); -// tc_success!(spec_typecheck_success_simple_anonymousFunctionsInTypes, "simple/anonymousFunctionsInTypes"); -// tc_success!(spec_typecheck_success_simple_fieldsAreTypes, "simple/fieldsAreTypes"); -// tc_success!(spec_typecheck_success_simple_kindParameter, "simple/kindParameter"); -// tc_success!(spec_typecheck_success_simple_mergeEquivalence, "simple/mergeEquivalence"); -// tc_success!(spec_typecheck_success_simple_mixedFieldAccess, "simple/mixedFieldAccess"); -// tc_success!(spec_typecheck_success_simple_unionsOfTypes, "simple/unionsOfTypes"); - -// tc_failure!(spec_typecheck_failure_combineMixedRecords, "combineMixedRecords"); -// tc_failure!(spec_typecheck_failure_duplicateFields, "duplicateFields"); -// tc_failure!(spec_typecheck_failure_hurkensParadox, "hurkensParadox"); - -// ti_success!(spec_typeinference_success_simple_alternativesAreTypes, "simple/alternativesAreTypes"); -// ti_success!(spec_typeinference_success_simple_kindParameter, "simple/kindParameter"); -ti_success!(spec_typeinference_success_unit_Bool, "unit/Bool"); -ti_success!(spec_typeinference_success_unit_Double, "unit/Double"); -ti_success!(spec_typeinference_success_unit_DoubleLiteral, "unit/DoubleLiteral"); -// ti_success!(spec_typeinference_success_unit_DoubleShow, "unit/DoubleShow"); -ti_success!(spec_typeinference_success_unit_False, "unit/False"); -ti_success!(spec_typeinference_success_unit_Function, "unit/Function"); -ti_success!(spec_typeinference_success_unit_FunctionApplication, "unit/FunctionApplication"); -ti_success!(spec_typeinference_success_unit_FunctionNamedArg, "unit/FunctionNamedArg"); -// ti_success!(spec_typeinference_success_unit_FunctionTypeKindKind, "unit/FunctionTypeKindKind"); -// ti_success!(spec_typeinference_success_unit_FunctionTypeKindTerm, "unit/FunctionTypeKindTerm"); -// ti_success!(spec_typeinference_success_unit_FunctionTypeKindType, "unit/FunctionTypeKindType"); -ti_success!(spec_typeinference_success_unit_FunctionTypeTermTerm, "unit/FunctionTypeTermTerm"); -ti_success!(spec_typeinference_success_unit_FunctionTypeTypeTerm, "unit/FunctionTypeTypeTerm"); -ti_success!(spec_typeinference_success_unit_FunctionTypeTypeType, "unit/FunctionTypeTypeType"); -ti_success!(spec_typeinference_success_unit_FunctionTypeUsingArgument, "unit/FunctionTypeUsingArgument"); -ti_success!(spec_typeinference_success_unit_If, "unit/If"); -ti_success!(spec_typeinference_success_unit_IfNormalizeArguments, "unit/IfNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_Integer, "unit/Integer"); -ti_success!(spec_typeinference_success_unit_IntegerLiteral, "unit/IntegerLiteral"); -// ti_success!(spec_typeinference_success_unit_IntegerShow, "unit/IntegerShow"); -// ti_success!(spec_typeinference_success_unit_IntegerToDouble, "unit/IntegerToDouble"); -// ti_success!(spec_typeinference_success_unit_Kind, "unit/Kind"); -ti_success!(spec_typeinference_success_unit_Let, "unit/Let"); -// ti_success!(spec_typeinference_success_unit_LetNestedTypeSynonym, "unit/LetNestedTypeSynonym"); -// ti_success!(spec_typeinference_success_unit_LetTypeSynonym, "unit/LetTypeSynonym"); -ti_success!(spec_typeinference_success_unit_LetWithAnnotation, "unit/LetWithAnnotation"); -ti_success!(spec_typeinference_success_unit_List, "unit/List"); -ti_success!(spec_typeinference_success_unit_ListBuild, "unit/ListBuild"); -ti_success!(spec_typeinference_success_unit_ListFold, "unit/ListFold"); -ti_success!(spec_typeinference_success_unit_ListHead, "unit/ListHead"); -ti_success!(spec_typeinference_success_unit_ListIndexed, "unit/ListIndexed"); -ti_success!(spec_typeinference_success_unit_ListLast, "unit/ListLast"); -ti_success!(spec_typeinference_success_unit_ListLength, "unit/ListLength"); -ti_success!(spec_typeinference_success_unit_ListLiteralEmpty, "unit/ListLiteralEmpty"); -ti_success!(spec_typeinference_success_unit_ListLiteralNormalizeArguments, "unit/ListLiteralNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_ListLiteralOne, "unit/ListLiteralOne"); -ti_success!(spec_typeinference_success_unit_ListReverse, "unit/ListReverse"); -// ti_success!(spec_typeinference_success_unit_MergeEmptyUnion, "unit/MergeEmptyUnion"); -// ti_success!(spec_typeinference_success_unit_MergeOne, "unit/MergeOne"); -// ti_success!(spec_typeinference_success_unit_MergeOneWithAnnotation, "unit/MergeOneWithAnnotation"); -ti_success!(spec_typeinference_success_unit_Natural, "unit/Natural"); -ti_success!(spec_typeinference_success_unit_NaturalBuild, "unit/NaturalBuild"); -ti_success!(spec_typeinference_success_unit_NaturalEven, "unit/NaturalEven"); -ti_success!(spec_typeinference_success_unit_NaturalFold, "unit/NaturalFold"); -ti_success!(spec_typeinference_success_unit_NaturalIsZero, "unit/NaturalIsZero"); -ti_success!(spec_typeinference_success_unit_NaturalLiteral, "unit/NaturalLiteral"); -ti_success!(spec_typeinference_success_unit_NaturalOdd, "unit/NaturalOdd"); -// ti_success!(spec_typeinference_success_unit_NaturalShow, "unit/NaturalShow"); -// ti_success!(spec_typeinference_success_unit_NaturalToInteger, "unit/NaturalToInteger"); -// ti_success!(spec_typeinference_success_unit_None, "unit/None"); -ti_success!(spec_typeinference_success_unit_OldOptionalNone, "unit/OldOptionalNone"); -// ti_success!(spec_typeinference_success_unit_OldOptionalTrue, "unit/OldOptionalTrue"); -ti_success!(spec_typeinference_success_unit_OperatorAnd, "unit/OperatorAnd"); -ti_success!(spec_typeinference_success_unit_OperatorAndNormalizeArguments, "unit/OperatorAndNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_OperatorEqual, "unit/OperatorEqual"); -ti_success!(spec_typeinference_success_unit_OperatorEqualNormalizeArguments, "unit/OperatorEqualNormalizeArguments"); -// ti_success!(spec_typeinference_success_unit_OperatorListConcatenate, "unit/OperatorListConcatenate"); -// ti_success!(spec_typeinference_success_unit_OperatorListConcatenateNormalizeArguments, "unit/OperatorListConcatenateNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_OperatorNotEqual, "unit/OperatorNotEqual"); -ti_success!(spec_typeinference_success_unit_OperatorNotEqualNormalizeArguments, "unit/OperatorNotEqualNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_OperatorOr, "unit/OperatorOr"); -ti_success!(spec_typeinference_success_unit_OperatorOrNormalizeArguments, "unit/OperatorOrNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_OperatorPlus, "unit/OperatorPlus"); -ti_success!(spec_typeinference_success_unit_OperatorPlusNormalizeArguments, "unit/OperatorPlusNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_OperatorTextConcatenate, "unit/OperatorTextConcatenate"); -ti_success!(spec_typeinference_success_unit_OperatorTextConcatenateNormalizeArguments, "unit/OperatorTextConcatenateNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_OperatorTimes, "unit/OperatorTimes"); -ti_success!(spec_typeinference_success_unit_OperatorTimesNormalizeArguments, "unit/OperatorTimesNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_Optional, "unit/Optional"); -// ti_success!(spec_typeinference_success_unit_OptionalBuild, "unit/OptionalBuild"); -ti_success!(spec_typeinference_success_unit_OptionalFold, "unit/OptionalFold"); -ti_success!(spec_typeinference_success_unit_RecordEmpty, "unit/RecordEmpty"); -// ti_success!(spec_typeinference_success_unit_RecordOneKind, "unit/RecordOneKind"); -// ti_success!(spec_typeinference_success_unit_RecordOneType, "unit/RecordOneType"); -ti_success!(spec_typeinference_success_unit_RecordOneValue, "unit/RecordOneValue"); -// ti_success!(spec_typeinference_success_unit_RecordProjectionEmpty, "unit/RecordProjectionEmpty"); -// ti_success!(spec_typeinference_success_unit_RecordProjectionKind, "unit/RecordProjectionKind"); -// ti_success!(spec_typeinference_success_unit_RecordProjectionType, "unit/RecordProjectionType"); -// ti_success!(spec_typeinference_success_unit_RecordProjectionValue, "unit/RecordProjectionValue"); -// ti_success!(spec_typeinference_success_unit_RecordSelectionKind, "unit/RecordSelectionKind"); -// ti_success!(spec_typeinference_success_unit_RecordSelectionType, "unit/RecordSelectionType"); -ti_success!(spec_typeinference_success_unit_RecordSelectionValue, "unit/RecordSelectionValue"); -ti_success!(spec_typeinference_success_unit_RecordType, "unit/RecordType"); -ti_success!(spec_typeinference_success_unit_RecordTypeEmpty, "unit/RecordTypeEmpty"); -// ti_success!(spec_typeinference_success_unit_RecordTypeKind, "unit/RecordTypeKind"); -// ti_success!(spec_typeinference_success_unit_RecordTypeType, "unit/RecordTypeType"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordMergeLhsEmpty, "unit/RecursiveRecordMergeLhsEmpty"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordMergeRecursively, "unit/RecursiveRecordMergeRecursively"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordMergeRecursivelyTypes, "unit/RecursiveRecordMergeRecursivelyTypes"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordMergeRhsEmpty, "unit/RecursiveRecordMergeRhsEmpty"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordMergeTwo, "unit/RecursiveRecordMergeTwo"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordMergeTwoKinds, "unit/RecursiveRecordMergeTwoKinds"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordMergeTwoTypes, "unit/RecursiveRecordMergeTwoTypes"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordTypeMergeRecursively, "unit/RecursiveRecordTypeMergeRecursively"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordTypeMergeRecursivelyTypes, "unit/RecursiveRecordTypeMergeRecursivelyTypes"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordTypeMergeRhsEmpty, "unit/RecursiveRecordTypeMergeRhsEmpty"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordTypeMergeTwo, "unit/RecursiveRecordTypeMergeTwo"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordTypeMergeTwoKinds, "unit/RecursiveRecordTypeMergeTwoKinds"); -// ti_success!(spec_typeinference_success_unit_RecursiveRecordTypeMergeTwoTypes, "unit/RecursiveRecordTypeMergeTwoTypes"); -// ti_success!(spec_typeinference_success_unit_RightBiasedRecordMergeRhsEmpty, "unit/RightBiasedRecordMergeRhsEmpty"); -// ti_success!(spec_typeinference_success_unit_RightBiasedRecordMergeTwo, "unit/RightBiasedRecordMergeTwo"); -// ti_success!(spec_typeinference_success_unit_RightBiasedRecordMergeTwoDifferent, "unit/RightBiasedRecordMergeTwoDifferent"); -// ti_success!(spec_typeinference_success_unit_RightBiasedRecordMergeTwoKinds, "unit/RightBiasedRecordMergeTwoKinds"); -// ti_success!(spec_typeinference_success_unit_RightBiasedRecordMergeTwoTypes, "unit/RightBiasedRecordMergeTwoTypes"); -ti_success!(spec_typeinference_success_unit_SomeTrue, "unit/SomeTrue"); -ti_success!(spec_typeinference_success_unit_Text, "unit/Text"); -ti_success!(spec_typeinference_success_unit_TextLiteral, "unit/TextLiteral"); -ti_success!(spec_typeinference_success_unit_TextLiteralNormalizeArguments, "unit/TextLiteralNormalizeArguments"); -ti_success!(spec_typeinference_success_unit_TextLiteralWithInterpolation, "unit/TextLiteralWithInterpolation"); -// ti_success!(spec_typeinference_success_unit_TextShow, "unit/TextShow"); -ti_success!(spec_typeinference_success_unit_True, "unit/True"); -ti_success!(spec_typeinference_success_unit_Type, "unit/Type"); -ti_success!(spec_typeinference_success_unit_TypeAnnotation, "unit/TypeAnnotation"); -// ti_success!(spec_typeinference_success_unit_UnionConstructorField, "unit/UnionConstructorField"); -// ti_success!(spec_typeinference_success_unit_UnionOne, "unit/UnionOne"); -// ti_success!(spec_typeinference_success_unit_UnionTypeEmpty, "unit/UnionTypeEmpty"); -// ti_success!(spec_typeinference_success_unit_UnionTypeKind, "unit/UnionTypeKind"); -// ti_success!(spec_typeinference_success_unit_UnionTypeOne, "unit/UnionTypeOne"); -// ti_success!(spec_typeinference_success_unit_UnionTypeType, "unit/UnionTypeType"); -- cgit v1.2.3