aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/test/lux/world/file/extension.lux
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/test/lux/world/file/extension.lux192
1 files changed, 108 insertions, 84 deletions
diff --git a/stdlib/source/test/lux/world/file/extension.lux b/stdlib/source/test/lux/world/file/extension.lux
index 5fe5207a6..4c3a957ce 100644
--- a/stdlib/source/test/lux/world/file/extension.lux
+++ b/stdlib/source/test/lux/world/file/extension.lux
@@ -23,82 +23,110 @@
[\\library
["[0]" /]])
-(with_expansions [<extensions> (these [/.compressed_7z_archive]
-
- [/.archive]
- [/.advanced_audio_coding]
- [/.agda_source_code]
- [/.android_application_package]
- [/.assembler_source_code]
-
- [/.binary]
- [/.bzip2_archive]
- [/.blender_project]
-
- [/.c_source_code]
- [/.c++_source_code]
- [/.java_class]
- [/.dos_program]
- [/.c#_source_code]
- [/.css]
- [/.comma_separated_values]
-
- [/.d_source_code]
- [/.dart_source_code]
-
- [/.emacs_lisp_source_code]
- [/.compiled_emacs_lisp_code]
- [/.executable_and_linkable_file]
- [/.electronic_publication]
- [/.erlang_source_code]
- [/.executable_program]
-
- [/.apophysis_fractal]
-
- [/.gps_exchange_format]
- [/.gzip_compressed_data]
-
- [/.http_archive_format]
- [/.c_header]
- [/.html]
-
- [/.optical_disc_file_system]
-
- [/.java_archive]
- [/.java_source_code]
- [/.javascript_source_code]
- [/.javascript_object_notation]
-
- [/.llvm_assembly]
- [/.lua_source_code]
- [/.lzip_archive]
-
- [/.markdown]
- [/.musical_instrument_digital_interface]
-
- [/.object_code]
- [/.vorbis_audio]
-
- [/.portable_document_format]
- [/.php_source_code]
- [/.maven_build_configuration]
- [/.postscript_source_code]
- [/.python_source_code]
-
- [/.ruby_source_code]
-
- [/.scheme_source_code]
- [/.unix_shell_script]
- [/.structured_query_language]
- [/.scalable_vector_graphics]
-
- [/.tape_archive]
- [/.temporary_file]
- [/.tab_separated_values]
-
- [/.yaml]
-
- [/.zip_archive])]
+(with_expansions [<options> (these [%->d
+ [/.compressed_7z_archive
+
+ /.archive
+ /.advanced_audio_coding
+ /.agda_source_code
+ /.android_application_package
+ /.assembler_source_code
+
+ /.binary
+ /.bzip2_archive
+ /.blender_project
+
+ /.c_source_code
+ /.c++_source_code
+ /.java_class
+ /.dos_program
+ /.c#_source_code
+ /.css
+ /.comma_separated_values
+
+ /.d_source_code
+ /.dart_source_code]]
+
+ [e->j
+ [/.emacs_lisp_source_code
+ /.compiled_emacs_lisp_code
+ /.executable_and_linkable_file
+ /.electronic_publication
+ /.erlang_source_code
+ /.executable_program
+
+ /.apophysis_fractal
+
+ /.gps_exchange_format
+ /.gzip_compressed_data
+
+ /.http_archive_format
+ /.c_header
+ /.html
+
+ /.optical_disc_file_system
+
+ /.java_archive
+ /.java_source_code
+ /.javascript_source_code
+ /.javascript_object_notation]]
+
+ [l->p
+ [/.llvm_assembly
+ /.lua_source_code
+ /.lzip_archive
+
+ /.markdown
+ /.musical_instrument_digital_interface
+
+ /.object_code
+ /.vorbis_audio
+
+ /.portable_document_format
+ /.php_source_code
+ /.maven_build_configuration
+ /.postscript_source_code
+ /.python_source_code]]
+
+ [r->z
+ [/.ruby_source_code
+
+ /.scheme_source_code
+ /.unix_shell_script
+ /.structured_query_language
+ /.scalable_vector_graphics
+
+ /.tape_archive
+ /.temporary_file
+ /.tab_separated_values
+
+ /.yaml
+
+ /.zip_archive]])]
+ (def all_options
+ (list.together (`` (list (,, (with_template [<definition> <by_letter_range>]
+ [((is (-> Any (List /.Extension))
+ (function (_ _)
+ (`` (list (,, (template.spliced <by_letter_range>))))))
+ 123)]
+
+ <options>))))))
+
+ (def unique_options
+ (set.of_list text.hash ..all_options))
+
+ (def verdict
+ (n.= (list.size ..all_options)
+ (set.size ..unique_options)))
+
+ (with_template [<definition> <by_letter_range>]
+ [(def <definition>
+ Test
+ (_.coverage <by_letter_range>
+ ..verdict))]
+
+ <options>)
+
(def .public test
Test
(<| (_.covering /._)
@@ -106,14 +134,10 @@
[])
(_.for [/.Extension])
(`` (all _.and
- (_.coverage [(,, (with_template [<extension>]
- [<extension>]
-
- <extensions>))]
- (let [options (list <extensions>)
- uniques (set.of_list text.hash options)]
- (n.= (list.size options)
- (set.size uniques))))
+ (,, (with_template [<definition> <by_letter_range>]
+ [<definition>]
+
+ <options>))
(,, (with_template [<original> <aliases>]
[(with_expansions [<aliases>' (template.spliced <aliases>)]
(`` (_.coverage [(,, (with_template [<extension>]