From 7833f8dead4a3d85ae76fb1f30facfb639f20dde Mon Sep 17 00:00:00 2001 From: Thomas Walker Lynch Date: Fri, 25 Oct 2024 08:11:56 +0000 Subject: [PATCH] TestIO passes --- developer/document/#question_jan.txt# | 2 - .../#variable_suffix_conventions.txt# | 27 -------- developer/shell/Mosaic | 2 + developer/shell/build | 2 - developer/tool/#release# | 61 ++++++++++++++++ developer/tool/clean_build_directories | 2 +- developer/tool/clean_javac_output | 2 +- .../tool/{clean_make => clean_make_output} | 4 +- developer/tool/clean_release | 4 +- developer/tool/make | 2 +- developer/tool/release | 2 +- developer/tool/shell_wrapper_list | 14 ++++ document/readme.txt | 2 +- document/todo.txt | 14 ++++ release/Mosaic | 2 + release/Mosaic.jar | Bin 3034 -> 3777 bytes release/build | 2 - tester/javac/Test0.java | 37 ++++++++++ tester/javac/TestIO.java | 65 ++++++++++++++---- tester/jvm/TestBench.jar | Bin 5056 -> 0 bytes tester/jvm/TestBenchMosaic.jar | Bin 0 -> 2807 bytes tester/jvm/TestBenchMosaic_tester.jar | Bin 5393 -> 0 bytes tester/shell/Test0 | 2 + tester/shell/TestIO | 2 + tester/shell/TestTestBench | 2 - tester/tool/clean_build_directories | 9 +-- tester/tool/make | 4 +- tester/tool/shell_wrapper_list | 12 ++++ tool/shell_wrapper_list | 2 + tool_shared/bespoke/cat_w_fn | 2 +- tool_shared/bespoke/deprecate | 2 +- tool_shared/bespoke/version | 5 +- tool_shared/bespoke/wipe_release | 2 +- 33 files changed, 220 insertions(+), 70 deletions(-) delete mode 100644 developer/document/#question_jan.txt# delete mode 100644 developer/document/#variable_suffix_conventions.txt# create mode 100755 developer/shell/Mosaic delete mode 100755 developer/shell/build create mode 100755 developer/tool/#release# rename developer/tool/{clean_make => clean_make_output} (90%) create mode 100755 developer/tool/shell_wrapper_list create mode 100755 release/Mosaic delete mode 100755 release/build create mode 100644 tester/javac/Test0.java delete mode 100644 tester/jvm/TestBench.jar create mode 100644 tester/jvm/TestBenchMosaic.jar delete mode 100644 tester/jvm/TestBenchMosaic_tester.jar create mode 100755 tester/shell/Test0 create mode 100755 tester/shell/TestIO delete mode 100755 tester/shell/TestTestBench create mode 100755 tester/tool/shell_wrapper_list create mode 100755 tool/shell_wrapper_list diff --git a/developer/document/#question_jan.txt# b/developer/document/#question_jan.txt# deleted file mode 100644 index 9b0715c..0000000 --- a/developer/document/#question_jan.txt# +++ /dev/null @@ -1,2 +0,0 @@ - -On a directed acyclic graph, is it \ No newline at end of file diff --git a/developer/document/#variable_suffix_conventions.txt# b/developer/document/#variable_suffix_conventions.txt# deleted file mode 100644 index 8aca090..0000000 --- a/developer/document/#variable_suffix_conventions.txt# +++ /dev/null @@ -1,27 +0,0 @@ -# Suffix Conventions - -## Specify interface used with variable when clarification is useful: - -- `_set`: Indicates that the variable holds a set of items. - -- `_list`: Used for variables that represent a list of items. - -- `_f`: Refers to a function. - -Instead of making a variable name plural, add the interface qualifier: - - e.g. names -> name_set or name_list - -## Always a good idea to use these when working with files: - -- `_fp`: Refers to a file path. The part after the last slash is a file name. - -- `_dp`: Refers to a directory path. By convention, the value ends in a slash. - -- `_fn`: Refers to a file name. Value has no slashes. - -- `_dn`: Refers to a directory name. Value has no slashes. - -- `_fn_base`: The file name without the last dot and subsequent characters. - -- `_fn_ext`: The subsequent characters after the last dot in a file name. diff --git a/developer/shell/Mosaic b/developer/shell/Mosaic new file mode 100755 index 0000000..ba5b241 --- /dev/null +++ b/developer/shell/Mosaic @@ -0,0 +1,2 @@ +#!/bin/bash +java com.ReasoningTechnology."Mosaic".Mosaic diff --git a/developer/shell/build b/developer/shell/build deleted file mode 100755 index db43050..0000000 --- a/developer/shell/build +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -java com/ReasoningTechnology/"Mosaic"/build diff --git a/developer/tool/#release# b/developer/tool/#release# new file mode 100755 index 0000000..9ca9125 --- /dev/null +++ b/developer/tool/#release# @@ -0,0 +1,61 @@ +#!/usr/bin/env bash + +# input guards + + if [ -z "$REPO_HOME" ]; then + echo "$(script_fp):: REPO_HOME is not set." + exit 1 + fi + + env_must_be="developer/tool/env" + if [ "$ENV" != "$env_must_be" ]; then + echo "$(script_fp):: error: must be run in the $env_must_be environment" + exit 1 + fi + +# script local environment + + release_dir="$REPO_HOME/release" + shell_dir="$REPO_HOME/developer/shell" + project_jar_fp="$REPO_HOME/developer/jvm/"$PROJECT".jar" + wrapper=$(shell_wrapper_list) + + + if [ ! -d "$release_dir" ]; then + mkdir -p "$release_dir" + fi + + # Function to copy and set permissions + install_file() { + source_fp="$1" + target_dp="$2" + perms="$3" + + target_file="$target_dp/$(basename "$source_fp")" + + if [ ! -f "$source_fp" ]; then + echo "install_file:: Source file '$source_fp' does not exist." + return 1 + fi + + if ! install -m "$perms" "$source_fp" "$target_file"; then + echo "Error: Failed to install $(basename "$source_fp") to $target_dp" + exit 1 + else + echo "Installed $(basename "$source_fp") to $target_dp with permissions $perms" + fi + } + +# do the release + + echo "Starting release process..." + + # Install the JAR file + install_file "$project_jar_fp" "$release_dir" "ug+r" + + # Install shell wrappers + for wrapper in $wrapper; do + install_file "$shell_dir/$wrapper" "$release_dir" "ug+r+x" + done + +echo "$(script_fp) done." diff --git a/developer/tool/clean_build_directories b/developer/tool/clean_build_directories index ed9e807..5165c3a 100755 --- a/developer/tool/clean_build_directories +++ b/developer/tool/clean_build_directories @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Removes all files found in the build directories. It asks no questions as to # how or why the files got there. Be especially careful with the 'shell' directory diff --git a/developer/tool/clean_javac_output b/developer/tool/clean_javac_output index 18fd312..88d8f3d 100755 --- a/developer/tool/clean_javac_output +++ b/developer/tool/clean_javac_output @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # remove all files created by make's call to `javac` # input guards diff --git a/developer/tool/clean_make b/developer/tool/clean_make_output similarity index 90% rename from developer/tool/clean_make rename to developer/tool/clean_make_output index fc922dd..2a3acd5 100755 --- a/developer/tool/clean_make +++ b/developer/tool/clean_make_output @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # remove all files made by `make` # input guards @@ -11,7 +11,7 @@ # wrappers to clean (this list space separated list will grow) - wrapper=build + wrapper=$(shell_wrapper_list) # remove files diff --git a/developer/tool/clean_release b/developer/tool/clean_release index 8ecb809..fc31cde 100755 --- a/developer/tool/clean_release +++ b/developer/tool/clean_release @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # remove files made by `make` and by `release` # input guards @@ -12,7 +12,7 @@ # things to clean release_dir="$REPO_HOME"/release - wrapper=build + wrapper=$(shell_wrapper_list) # remove files set -x diff --git a/developer/tool/make b/developer/tool/make index a21e0da..92e3ba2 100755 --- a/developer/tool/make +++ b/developer/tool/make @@ -35,7 +35,7 @@ echo "Creating JAR file..." echo "Creating shell wrappers..." mkdir -p shell # wrapper is a space separated list - wrapper=Mosaic + wrapper=$(shell_wrapper_list) for file in $wrapper;do cat > shell/$file << EOL #!/bin/bash diff --git a/developer/tool/release b/developer/tool/release index a123a14..8129f15 100755 --- a/developer/tool/release +++ b/developer/tool/release @@ -18,7 +18,7 @@ release_dir="$REPO_HOME/release" shell_dir="$REPO_HOME/developer/shell" project_jar_fp="$REPO_HOME/developer/jvm/"$PROJECT".jar" - wrapper=build + wrapper=$(shell_wrapper_list) if [ ! -d "$release_dir" ]; then diff --git a/developer/tool/shell_wrapper_list b/developer/tool/shell_wrapper_list new file mode 100755 index 0000000..67f7b2b --- /dev/null +++ b/developer/tool/shell_wrapper_list @@ -0,0 +1,14 @@ +#!/bin/env bash + +# input guards + + env_must_be="developer/tool/env" + if [ "$ENV" != "$env_must_be" ]; then + echo "$(script_fp):: error: must be run in the $env_must_be environment" + exit 1 + fi + + cd "$REPO_HOME"/developer + +# list of classes that have main calls and get shell wrappers +echo Mosaic diff --git a/document/readme.txt b/document/readme.txt index 3d32175..4a42a93 100644 --- a/document/readme.txt +++ b/document/readme.txt @@ -4,7 +4,7 @@ Mosaic A tool to assist in hierarchical white box testing. -Each piece of a program must have integrity for the complete picture to merge. +Each piece of a program must have integrity for the complete picture to emerge. With Mosaic we test the pieces, then the communication between the pieces. diff --git a/document/todo.txt b/document/todo.txt index ad6bd89..fc554b1 100644 --- a/document/todo.txt +++ b/document/todo.txt @@ -1,4 +1,6 @@ +Updates for Ariadne + 1. reflect project skeleton changes. replaced literal `Ariadne` with `$PROJECT` in top level env choices, PROJECT -> PROMPT_DECOR @@ -6,3 +8,15 @@ note in 'release' there is a variable name with the project name embedded in it: Ariadne_jar_fp -> project_jar_fp Change slashes to dots in the wrapper maker of 'make' + +2. should do something about `wrapper` as it appears in multiple places making + editing it a pain. + in all places `wrapper` appears, now calls `shell_wrapper_list` + in both developer and tester + +3. clean_make -> clean_make_output + +4. version outputs a `v` in front of the number + +5. fix many shebangs to be: #!/usr/bin/env bash + diff --git a/release/Mosaic b/release/Mosaic new file mode 100755 index 0000000..ba5b241 --- /dev/null +++ b/release/Mosaic @@ -0,0 +1,2 @@ +#!/bin/bash +java com.ReasoningTechnology."Mosaic".Mosaic diff --git a/release/Mosaic.jar b/release/Mosaic.jar index 02ea780349b74e30c2aa5ccafe245e4a53fc3a30..878a3711ac9be27badd4834d3fe9bf12f6832960 100644 GIT binary patch delta 795 zcmca5eo&Stz?+#xgn@&DgMrm_B9Ao_kn}tQBqxhADu5_UMiUT~&j^y*yoRxYS%Qm! zfrA04JTj6238*kk-pD02IgXoMF(kFPL?78;RFwvBmGxkizWK$8naO&|If=!^xf9Oj zU3L(0JMVkPqAd2-vL#b4HE|1Z#a_`qvZ#YsNGOQA!zK2>qM|#BGf&NQ{I(s3r^_1@2in7~k-~D{UG57hc zjPFhv{PX5;)Zg>2Uebc@peh$SA-3kXT{o{Y4t)Rm^ z*Num>BO-Fa?OrzB_oq$sS{IbLCm*z3cD3N4dDPx-<$Jz~%A4&h-SvedBDpqj^X7=d zzfWHJ`YxJdZENT7+@(gG7{Np1Egffz>vfWOL+1a o$tl1a*_6rE+%inz>@ek%V_CVx0=!w-K*oWbbPedOtK1+S01@OJ7ytkO delta 174 zcmX>odrO=rz?+#xgn@&DgW-hsL>_AYfb$pw7a;@Q9s( mL38p!UIT^DlFS^vX+a=V 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 diff --git a/tester/jvm/TestBenchMosaic.jar b/tester/jvm/TestBenchMosaic.jar new file mode 100644 index 0000000000000000000000000000000000000000..17ab80c7d8e1f90255591a16c87939dd5c1a4012 GIT binary patch literal 2807 zcmb7`2{=@HAIHZsON@{SbrVUNG|Vu(iMn_#HD<9SS(+GwL9)$gu~fKZX}Lp6t`RMl z$P%utBr$GdA4^@lmgXHz@5~ityQQu>r$?bj-TVH|bIx;~=ls6k^Z%d!|NMR*d%To1 z0tAD>K&}?9uApVH1|$t4T02?j;z%~=KU+W`DUdxL3Ij4E7t`#&Dn^JiK8uMKB%F=) z0Vh48%@nb%m4MgPcp8PsVD>!2#IH#o%Kdz;bSh)Jgm2G0RLbVBxqXlJ8BeY z1V`=I-=w;(lg$|x-K~4Nd#7N&6FqWv-yVjlZ*xPgFoc!aj@o70w!5v|-pk?oe;64) z9Nrannf+n;8yb-))tTmtp5G_Qr(-HNSOwf4F}24Hn!(aXeRbMr;}~Z6cRI8Q8Jq4) zZz3#J{e4ag#;=^ol6UC^mkXdwjO)nYo;M?JkG$MRE=k{J(M#^}CGC8*U2Vp&3qo?g z-7iemuB|>_eV)#~@w}T~$yU31|1K2lki^5h%0B5HDuk-pb&d@dU`~g&3ZVN6($>V+ktwguHkOoWAmC>3 z_}q8H#TQ?oi=N^#?__&6eIVq&@6b%FQ^6_t6rmhW2NRJVlCn?ly?VSqzZWgfb()AH zU_{?tP`$mu#iVJjmglrk=d=8qcSuI(rw9H1s_ zD>w`eZ48CQS{)aCVD(ERB3f=@25}dfGMbR0`(FIaqS6t=yJvMKfvkI`&Ki##yt- zlT8UrjH4uww8>#39$l@&6(@#EYn|&7?^YI?<($c@B6o+c^XnQgQK8SCnj4-FpMv+V zg;z&njs|9C`5Iaz%=HDgX|+PN)x&Vd%nYgny+YWd1-MwQ@w48DAwFW)Wuu@}s%FQp z+KmJqewy*FJ`*2E@5}vg9cjcZ$F4?p5HRZUqH!DZ>ZM-bHLBi zP6W7%43Gn&^*g%$6+qdFMEiNj925NSMqTtv*?{bZ2Mw|2BV}Z}5Y1m|Oa0GKX*(+q zb?C*%h|=jo5S>#3zL*t$(97MyxiN}Duy%uoG<$M+Yr!e^qk=*@y^`n<>y&wvdz6Jm zS0Ar#rj0q6D~eS12(!WP|8Vb*>@I$nElN-6KE->xzWzZPdAhJth45@G#=ks=I!8n8yqy) zS0IT-4sWlHoi??)(-eqx@8aqdmpFcm4Nc zMDciv#&}Vd#tleM*o(Sxx7Pj{WtSXix1L()<}C=Tsy4*^d_@I_jylbCy+_UBBB} zD-er{k+wIvH}4ey^ASZ47Ig*}QwBMoC&xQ2qc;fHmvu^OtxWslGod<>bQ!+QO@-TGF1fL5;fhO%P`Db83Zz z_IL%iQ(rHYZ@@ZyJLM+^7LTT9Y1yf#Ow%_TUz}ArWF1!Dpbdww6S6k>orx#Ge|w+a z6n8aaigir(-pDk2+E4B1rCAPxMGa5=Z-kAg$JA7~3H`H(p@Yoi&fj2>Wm>GDUS?h| zJGn+<6CJ;Er}mDc6B*h0J%tlGB5&4_V=8M~uKg@!jL)(dP}SssYipk1y5agQNa|tj zR;{ZU0vT}ey|(bpp>eJ~*%Vq4{iX@N4$=sjNNP49SoO~b1T2L4w}Yn9W9?TMH1ND0t|%?ymw00t6@u5|Rke%Fgo% z900ah8J}SRAdN4j%iBFb7E7^LeEV6tj5C%y09dfR&jVPn6pzKXOOOEQWI(I;_?1JJ zmH5O2UsnKBuoSwBiq#q6>n;E#ECux&E}xm<>t+BoEJe=Wn=LZL%C%fx`~iws3f@0- zT*eg3*9zz#%Qq3wKbFE;yaWJ;t@Z^M=l*fHz~xgnvB!hOn-K(BBRG literal 0 HcmV?d00001 diff --git a/tester/jvm/TestBenchMosaic_tester.jar b/tester/jvm/TestBenchMosaic_tester.jar deleted file mode 100644 index 41cabd0756146e542651143c0ce581796ca37f90..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5393 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 C<@)FV diff --git a/tester/shell/Test0 b/tester/shell/Test0 new file mode 100755 index 0000000..e636935 --- /dev/null +++ b/tester/shell/Test0 @@ -0,0 +1,2 @@ +#!/bin/env bash +java com.ReasoningTechnology.Mosaic.Test.Test0 diff --git a/tester/shell/TestIO b/tester/shell/TestIO new file mode 100755 index 0000000..670538a --- /dev/null +++ b/tester/shell/TestIO @@ -0,0 +1,2 @@ +#!/bin/env bash +java com.ReasoningTechnology.Mosaic.Test.TestIO diff --git a/tester/shell/TestTestBench b/tester/shell/TestTestBench deleted file mode 100755 index 2afe32f..0000000 --- a/tester/shell/TestTestBench +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/env bash -java com.ReasoningTechnology."Mosaic_tester".TestBench.TestTestBench diff --git a/tester/tool/clean_build_directories b/tester/tool/clean_build_directories index 2aff503..a3480cb 100755 --- a/tester/tool/clean_build_directories +++ b/tester/tool/clean_build_directories @@ -1,8 +1,9 @@ -#!/bin/bash +#!/usr/bin/env bash -# Caveat: the 'shell' directory is for built wrapper functions. `clean_build_directories` will -# remove all the files in this directory. For bespoke scripts used by the tester, put -# them in the `tool` directory. +# Caveat: the 'shell' directory is for built wrapper +# functions. `clean_build_directories` will remove all the files in this +# directory. For bespoke scripts used by the tester, put them in the `tool` +# directory. # input guards env_must_be="tester/tool/env" diff --git a/tester/tool/make b/tester/tool/make index 4a131f6..2c99c27 100755 --- a/tester/tool/make +++ b/tester/tool/make @@ -19,11 +19,11 @@ echo "Compiling files..." echo "Creating shell wrappers..." mkdir -p shell # wrapper is a space separated list - wrapper=TestTestBench + wrapper=$(shell_wrapper_list) for file in $wrapper;do cat > shell/$file << EOL #!/bin/env bash -java com.ReasoningTechnology."$PROJECT".Test.$file +java com.ReasoningTechnology.$PROJECT.Test.$file EOL chmod +x shell/$file done diff --git a/tester/tool/shell_wrapper_list b/tester/tool/shell_wrapper_list new file mode 100755 index 0000000..9d481fe --- /dev/null +++ b/tester/tool/shell_wrapper_list @@ -0,0 +1,12 @@ +#!/bin/bash + +# input guards +env_must_be="tester/tool/env" +if [ "$ENV" != "$env_must_be" ]; then + echo "$(script_fp):: error: must be run in the $env_must_be environment" + exit 1 +fi + +# space separated list of shell interface wrappers +echo Test0 TestIO + diff --git a/tool/shell_wrapper_list b/tool/shell_wrapper_list new file mode 100755 index 0000000..9c7d827 --- /dev/null +++ b/tool/shell_wrapper_list @@ -0,0 +1,2 @@ +#!/bin/env bash +java com.ReasoningTechnology."Mosaic_tester".Test.shell_wrapper_list diff --git a/tool_shared/bespoke/cat_w_fn b/tool_shared/bespoke/cat_w_fn index 09931d1..f8d02cd 100755 --- a/tool_shared/bespoke/cat_w_fn +++ b/tool_shared/bespoke/cat_w_fn @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Check if at least one file is provided if [ $# -eq 0 ]; then diff --git a/tool_shared/bespoke/deprecate b/tool_shared/bespoke/deprecate index 821e7ab..124ffed 100755 --- a/tool_shared/bespoke/deprecate +++ b/tool_shared/bespoke/deprecate @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # cp subtree at under file path , and make all the copied # files read-only. The intended use case is for moving files to a `deprecated` diff --git a/tool_shared/bespoke/version b/tool_shared/bespoke/version index 53a64a6..5b99cbb 100755 --- a/tool_shared/bespoke/version +++ b/tool_shared/bespoke/version @@ -1,6 +1,5 @@ #!/bin/env bash -# 2024-10-24T14:56:09Z extracted from Ariadne - -echo 0.1 +# 2024-10-24T14:56:09Z project skeleton and test bench files extracted from Ariadne +echo v0.1 diff --git a/tool_shared/bespoke/wipe_release b/tool_shared/bespoke/wipe_release index 4b92b4b..d92cc88 100755 --- a/tool_shared/bespoke/wipe_release +++ b/tool_shared/bespoke/wipe_release @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # remove all files in the release directory set -e -- 2.20.1