Changeset 2725 in MondoRescue for branches/2.2.9/mindi-busybox/testsuite
- Timestamp:
- Feb 25, 2011, 9:26:54 PM (13 years ago)
- Location:
- branches/2.2.9/mindi-busybox/testsuite
- Files:
-
- 43 added
- 63 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2.2.9/mindi-busybox/testsuite/README
r902 r2725 1 Update: doesn't work as described. Try "make check" from parent dir...2 * * *3 4 1 To run the test suite, change to this directory and run "./runtest". It will 5 2 run all of the test cases, and list those with unexpected outcomes. Adding the 6 3 -v option will cause it to show expected outcomes as well. To only run the test 7 cases for particular applets , specify them as parameters to runtest.4 cases for particular applets: 8 5 9 The test cases for an applet reside in the subdirectory of the applet name. The 10 name of the test case should be the assertion that is tested. The test case 11 should be a shell fragment that returns successfully if the test case passes, 12 and unsuccessfully otherwise. 6 ./runtest <applet1> <applet2>... 7 8 Set SKIP_KNOWN_BUGS environment variable to any non-empty value 9 to exclude tests which are known to fail. 10 11 Set SKIP_INTERNET_TESTS to exclude tests which require working 12 internet connection. 13 14 15 Common causes of false positives: 16 17 For busybox built against uclibc, /etc/TZ does not exist or does not match 18 host system timezone setting. For glibc based host systems, timezone settings 19 are in /etc/localtime. 20 21 LANG and LC_xxx environment variables set to non-C locale. 22 23 24 Developer's notes: 25 26 The test cases for an applet reside in the subdirectory of the applet name. 27 The name of the test case should be the assertion that is tested. 28 The test case should be a shell fragment that returns successfully 29 if the test case passes, and unsuccessfully otherwise. 13 30 14 31 If the test case relies on a certain feature, it should include the string 15 32 "FEATURE: " followed by the name of the feature in a comment. If it is always 16 33 expected to fail, it should include the string "XFAIL" in a comment. 34 17 35 18 36 For the entire testsuite, the copyright is as follows: -
branches/2.2.9/mindi-busybox/testsuite/all_sourcecode.tests
r1765 r2725 3 3 # Tests for the sourcecode base itself. 4 4 # Copyright 2006 by Mike Frysinger <vapier@gentoo.org> 5 # Licensed under GPL v2, see file LICENSE for details.5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 7 [ -n "$srcdir" ] || srcdir=$(pwd) 8 . testing.sh8 . ./testing.sh 9 9 10 10 … … 17 17 18 18 # 19 # make sure all usage strings are properly escaped. oftentimes people miss 20 # an escape sequence so we end up with: 21 # #define foo_usage \ 22 # " this line is ok" \ 23 # " as is this line" 24 # " but this one is broken as the \ is missing from above" 25 # 26 ${CROSS_COMPILE}cpp -dD -P $srcdir/../include/usage.h \ 27 | sed -e '/^#define/d' -e '/^$/d' > src.usage.escaped 28 testing "Usage strings escaped" "cat src.usage.escaped" "" "" "" 29 rm -f src.usage.escaped 30 31 32 # 19 33 # verify the applet order is correct in applets.h, otherwise 20 34 # applets won't be called properly. 21 35 # 22 sed -n -e ' /^USE_[A-Z]*(APPLET/{s:,.*::;s:.*(::;s:"::g;p}' \36 sed -n -e 's:^//::' -e '/^IF_[A-Z]*(APPLET/{s:,.*::;s:.*(::;s:"::g;p}' \ 23 37 $srcdir/../include/applets.h > applet.order.current 24 38 LC_ALL=C sort applet.order.current > applet.order.correct … … 60 74 # 61 75 find $srcdir/.. '(' -name '*.c' -o -name '*.h' ')' -print0 | xargs -0 \ 62 grep -E -e '\<(bcmp|bcopy|bzero|getwd|index|mktemp|rindex|utime s)\>[[:space:]]*\(' \76 grep -E -e '\<(bcmp|bcopy|bzero|getwd|index|mktemp|rindex|utime|sigblock|siggetmask|sigsetmask)\>[[:space:]]*\(' \ 63 77 | sed -e "s:^$srcdir/\.\./::g" > src.obsolete.funcs 64 78 testing "Obsolete function usage" "cat src.obsolete.funcs" "" "" "" -
branches/2.2.9/mindi-busybox/testsuite/awk.tests
r1765 r2725 1 1 #!/bin/sh 2 2 3 # awk tests.4 3 # Copyright 2007 by Denys Vlasenko <vda.linux@googlemail.com> 5 # Licensed under GPL v2, see file LICENSE for details.6 7 . testing.sh8 9 # testing "description" " arguments" "result" "infile" "stdin"4 # Licensed under GPLv2, see file LICENSE in this source tree. 5 6 . ./testing.sh 7 8 # testing "description" "command" "result" "infile" "stdin" 10 9 11 10 testing "awk -F case 0" "awk -F '[#]' '{ print NF }'" "" "" "" … … 18 17 testing "awk -F case 7" "awk -F '[#]' '{ print NF }'" "5\n" "" "z##abc##zz\n" 19 18 19 # 4294967295 = 0xffffffff 20 testing "awk bitwise op" "awk '{ print or(4294967295,1) }'" "4.29497e+09\n" "" "\n" 21 optional DESKTOP 22 testing "awk hex const 1" "awk '{ print or(0xffffffff,1) }'" "4.29497e+09\n" "" "\n" 23 testing "awk hex const 2" "awk '{ print or(0x80000000,1) }'" "2.14748e+09\n" "" "\n" 24 testing "awk oct const" "awk '{ print or(01234,1) }'" "669\n" "" "\n" 25 SKIP= 26 27 # check that "hex/oct integer" heuristic doesn't kick in on 00NN.NNN 28 testing "awk floating const with leading zeroes" \ 29 "awk '{ printf \"%f %f\n\", \"000.123\", \"009.123\" }'" \ 30 "0.123000 9.123000\n" \ 31 "" "\n" 32 33 # long field seps requiring regex 34 testing "awk long field sep" "awk -F-- '{ print NF, length(\$NF), \$NF }'" \ 35 "2 0 \n3 0 \n4 0 \n5 0 \n" \ 36 "" \ 37 "a--\na--b--\na--b--c--\na--b--c--d--" 38 39 # '@(samp|code|file)\{' is an invalid extended regex (unmatched '{'), 40 # but gawk 3.1.5 does not bail out on it. 41 testing "awk gsub falls back to non-extended-regex" \ 42 "awk 'gsub(\"@(samp|code|file)\{\",\"\");'; echo \$?" "0\n" "" "Hi\n" 43 44 optional TAR BUNZIP2 FEATURE_SEAMLESS_BZ2 45 test x"$SKIP" != x"1" && tar xjf awk_t1.tar.bz2 46 testing "awk 'gcc build bug'" \ 47 "awk -f awk_t1_opt-functions.awk -f awk_t1_opth-gen.awk <awk_t1_input | md5sum" \ 48 "f842e256461a5ab1ec60b58d16f1114f -\n" \ 49 "" "" 50 rm -rf awk_t1_* 2>/dev/null 51 SKIP= 52 53 Q='":"' 54 55 testing "awk NF in BEGIN" \ 56 "awk 'BEGIN { print ${Q} NF ${Q} \$0 ${Q} \$1 ${Q} \$2 ${Q} }'" \ 57 ":0::::\n" \ 58 "" "" 59 60 prg=' 61 function b(tmp) { 62 tmp = 0; 63 print "" tmp; #this line causes the bug 64 return tmp; 65 } 66 function c(tmpc) { 67 tmpc = b(); return tmpc; 68 } 69 BEGIN { 70 print (c() ? "string" : "number"); 71 }' 72 testing "awk string cast (bug 725)" \ 73 "awk '$prg'" \ 74 "0\nnumber\n" \ 75 "" "" 76 77 testing "awk handles whitespace before array subscript" \ 78 "awk 'BEGIN { arr [3] = 1; print arr [3] }'" "1\n" "" "" 79 80 # GNU awk 3.1.5's "print ERRNO" prints "No such file or directory" instead of "2", 81 # do we need to emulate that as well? 82 testing "awk handles non-existing file correctly" \ 83 "awk 'BEGIN { getline line <\"doesnt_exist\"; print ERRNO; ERRNO=0; close(\"doesnt_exist\"); print ERRNO; print \"Ok\" }'" \ 84 "2\n0\nOk\n" "" "" 85 86 prg=' 87 BEGIN { 88 u["a"]=1 89 u["b"]=1 90 u["c"]=1 91 v["d"]=1 92 v["e"]=1 93 v["f"]=1 94 for (l in u) { 95 print "outer1", l; 96 for (l in v) { 97 print " inner", l; 98 } 99 print "outer2", l; 100 } 101 print "end", l; 102 l="a" 103 exit; 104 }' 105 testing "awk nested loops with the same variable" \ 106 "awk '$prg'" \ 107 "\ 108 outer1 a 109 inner d 110 inner e 111 inner f 112 outer2 f 113 outer1 b 114 inner d 115 inner e 116 inner f 117 outer2 f 118 outer1 c 119 inner d 120 inner e 121 inner f 122 outer2 f 123 end f 124 " \ 125 "" "" 126 127 prg=' 128 BEGIN { 129 u["a"]=1 130 u["b"]=1 131 u["c"]=1 132 v["d"]=1 133 v["e"]=1 134 v["f"]=1 135 for (l in u) { 136 print "outer1", l; 137 for (l in v) { 138 print " inner", l; 139 break; 140 } 141 print "outer2", l; 142 } 143 print "end", l; 144 l="a" 145 exit; 146 }' 147 # It's not just buggy, it enters infinite loop. Thus disabled 148 false && test x"$SKIP_KNOWN_BUGS" = x"" && testing "awk nested loops with the same variable and break" \ 149 "awk '$prg'" \ 150 "\ 151 outer1 a 152 inner d 153 outer2 d 154 outer1 b 155 inner d 156 outer2 d 157 outer1 c 158 inner d 159 outer2 d 160 end d 161 " \ 162 "" "" 163 164 prg=' 165 function f() { 166 for (l in v) { 167 print " inner", l; 168 return; 169 } 170 } 171 172 BEGIN { 173 u["a"]=1 174 u["b"]=1 175 u["c"]=1 176 v["d"]=1 177 v["e"]=1 178 v["f"]=1 179 for (l in u) { 180 print "outer1", l; 181 f(); 182 print "outer2", l; 183 } 184 print "end", l; 185 l="a" 186 exit; 187 }' 188 # It's not just buggy, it enters infinite loop. Thus disabled 189 false && test x"$SKIP_KNOWN_BUGS" = x"" && testing "awk nested loops with the same variable and return" \ 190 "awk '$prg'" \ 191 "\ 192 outer1 a 193 inner d 194 outer2 d 195 outer1 b 196 inner d 197 outer2 d 198 outer1 c 199 inner d 200 outer2 d 201 end d 202 " \ 203 "" "" 204 20 205 exit $FAILCOUNT -
branches/2.2.9/mindi-busybox/testsuite/basename/basename-works
r821 r2725 1 1 test x$(basename $(pwd)) = x$(busybox basename $(pwd)) 2 -
branches/2.2.9/mindi-busybox/testsuite/bunzip2.tests
r1765 r2725 1 1 #!/bin/sh 2 # Used by both gunzip and bunzip2 tests 3 4 FAILCOUNT=0 2 5 3 6 if test "${0##*/}" = "gunzip.tests"; then … … 20 23 21 24 hello_gz() { 22 23 24 echo-ne "\x1f\x8b\x08\x00\x85\x1d\xef\x45\x02\x03\xf3\x70\xf5\xf1\xf1\xe7"25 echo-ne "\x02\x00\x6e\xd7\xac\xfd\x06\x00\x00\x00"25 # Gzipped "HELLO\n" 26 #_________________________ vvv vvv vvv vvv - mtime 27 $ECHO -ne "\x1f\x8b\x08\x00\x85\x1d\xef\x45\x02\x03\xf3\x70\xf5\xf1\xf1\xe7" 28 $ECHO -ne "\x02\x00\x6e\xd7\xac\xfd\x06\x00\x00\x00" 26 29 } 27 30 28 31 hello_bz2() { 29 # Bzipped "HELLO\n" 30 echo -ne "\x42\x5a\x68\x39\x31\x41\x59\x26\x53\x59\x5b\xb8\xe8\xa3\x00\x00" 31 echo -ne "\x01\x44\x00\x00\x10\x02\x44\xa0\x00\x30\xcd\x00\xc3\x46\x29\x97" 32 echo -ne "\x17\x72\x45\x38\x50\x90\x5b\xb8\xe8\xa3" 32 # Bzipped "HELLO\n" 33 $ECHO -ne "\x42\x5a\x68\x39\x31\x41\x59\x26\x53\x59\x5b\xb8\xe8\xa3\x00\x00" 34 $ECHO -ne "\x01\x44\x00\x00\x10\x02\x44\xa0\x00\x30\xcd\x00\xc3\x46\x29\x97" 35 $ECHO -ne "\x17\x72\x45\x38\x50\x90\x5b\xb8\xe8\xa3" 36 } 37 38 # We had bunzip2 error on this .bz2 file (fixed in rev 22521) 39 test1_bz2() 40 { 41 $ECHO -ne "\x42\x5a\x68\x39\x31\x41\x59\x26\x53\x59\xbf\x4b\x95\xe7\x00\x15" 42 $ECHO -ne "\xa1\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff" 43 $ECHO -ne "\xff\xff\xff\xff\xff\xff\xff\xff\xff\xef\xff\xff\xfb\xff\xff\xff" 44 $ECHO -ne "\xff\xff\xff\xe0\x16\xe6\x37\xb7\x77\xb0\xfb\x22\xb5\x81\x40\xf5" 45 $ECHO -ne "\xa7\x69\xa4\x47\xab\x61\x4d\x6a\x3d\xef\x75\x7b\x22\xaf\x71\x9b" 46 $ECHO -ne "\xb3\x5a\x93\xbb\x78\x00\x79\xbd\xc0\x07\xae\x1b\xdb\xc5\xc6\x6b" 47 $ECHO -ne "\x7a\x7b\xd3\xd7\x38\xbb\x70\x5e\xf0\xd1\x08\x9a\x64\x26\x53\x68" 48 $ECHO -ne "\x03\x53\x4d\x32\x30\xd2\x61\x31\x13\x68\xd1\xa6\x4c\x41\x89\x84" 49 $ECHO -ne "\x31\x4f\x40\xd2\x79\x14\xf0\xa3\xda\x1a\x00\x65\x4f\x53\xd9\x28" 50 $ECHO -ne "\xd3\xf4\x4c\x13\x26\x4c\x4c\x64\x34\x9a\x6a\x7a\x99\x3c\x12\x78" 51 $ECHO -ne "\xd2\x68\xd4\xda\x6a\x79\x32\x64\xd1\xa8\x1b\x13\x01\x4f\x29\xea" 52 $ECHO -ne "\x6c\xa3\xd2\x07\x94\x06\xa6\x44\x01\x4f\x11\xa3\x4d\x13\x4d\x31" 53 $ECHO -ne "\x32\x4c\x98\x0c\x9a\xa6\xda\x29\x3d\xa4\xf1\x24\xfd\x1a\xa3\x7a" 54 $ECHO -ne "\x93\xf4\xa7\xb5\x3d\x51\xe2\x47\x94\xf2\x8f\x29\xb2\x9b\x29\xe9" 55 $ECHO -ne "\x34\x79\x4f\x46\x9e\x84\x6a\x69\xea\x69\xa7\xa9\xb5\x03\x27\xa8" 56 $ECHO -ne "\xf1\x40\x32\x7a\x13\x10\x00\x3d\x41\x90\x00\xd0\x1e\x84\x0d\x1b" 57 $ECHO -ne "\x53\x41\xa3\x21\x93\xd0\x83\x53\x10\x99\x34\x24\xf5\x32\x99\x34" 58 $ECHO -ne "\xd2\x7a\x86\xca\x6c\x28\xda\x6d\x29\xa6\x4d\x31\x0c\xd4\x7a\x69" 59 $ECHO -ne "\x1e\x93\x23\xca\x1e\x93\x4d\x03\x26\x9a\x68\x01\xa0\xc9\xa0\x1a" 60 $ECHO -ne "\x00\x34\x00\x00\x69\xa0\xf4\x80\x0d\x00\x00\x34\x06\x86\x80\x34" 61 $ECHO -ne "\x00\x00\x00\x34\x00\x48\x88\x84\x53\x68\x4f\x45\x3d\x51\xfa\x4d" 62 $ECHO -ne "\x4c\xda\x9a\x8d\xb5\x4c\xd4\xf2\x35\x1b\x51\xb4\xd3\x14\xf5\x0f" 63 $ECHO -ne "\x50\xf5\x0f\x24\xd3\x32\x23\xd4\xcd\x21\xa6\xd4\xd0\xd0\x69\xa0" 64 $ECHO -ne "\xf4\x8d\x3d\x43\xd3\x51\xea\x6c\x90\xd0\x68\xf4\x40\x00\x07\xa8" 65 $ECHO -ne "\x19\x3d\x47\xa8\x1e\xa0\xd0\x34\x00\x0d\x1a\x06\x80\x01\xe9\x00" 66 $ECHO -ne "\x64\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" 67 $ECHO -ne "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" 68 $ECHO -ne "\x00\x00\x48\x92\x1a\x46\x9a\x02\x9e\x24\xc5\x4f\xc9\x91\x4f\x29" 69 $ECHO -ne "\xec\xa9\xea\x34\xd3\xd2\x68\x68\x00\xf4\xd4\xf5\x19\x00\x34\x00" 70 $ECHO -ne "\x06\x4d\x00\xd0\x1a\x1a\x03\x20\x01\xa0\x00\xf5\x00\x0d\x06\x9b" 71 $ECHO -ne "\x50\x36\xa3\x35\x00\x03\x40\x03\x40\x68\xf5\x34\x00\x00\x00\x71" 72 $ECHO -ne "\xe4\x3c\x0c\x0f\x0f\x3d\x23\x9a\x7f\x31\x80\xae\x1a\xe1\x09\x03" 73 $ECHO -ne "\x2c\x61\x63\x18\xfc\x1a\x28\x0e\x9a\x85\xc3\x86\x96\x11\x94\x88" 74 $ECHO -ne "\x0f\x92\x11\x8a\x1a\xb4\x61\x8c\x38\x30\xf3\xa9\xfb\xbe\xcd\x8d" 75 $ECHO -ne "\xc4\xb7\x7a\x52\xad\x92\x9f\xde\xe6\x75\x74\xb7\xbb\x0b\xf5\x4c" 76 $ECHO -ne "\x97\xd9\x49\xc8\x63\x9b\xa6\xba\x95\xe8\x46\x70\x11\x71\x55\x67" 77 $ECHO -ne "\x17\xe3\xab\x91\x7d\xbe\x0d\x56\x78\x61\x98\x41\x28\x2c\xb5\xa3" 78 $ECHO -ne "\xd1\xb8\x76\x80\xc8\xad\x9b\x79\x6f\x8a\x7a\x84\x44\x35\x24\x64" 79 $ECHO -ne "\xa0\xde\x18\x80\x11\x14\xcd\xb0\xc6\xe4\x31\x49\x71\x53\xaf\x5d" 80 $ECHO -ne "\x20\xc9\x59\xdc\xa2\x53\x06\xf0\x4f\xc8\x09\x21\x92\x6b\xf2\x37" 81 $ECHO -ne "\x32\xcb\x75\x91\x75\x41\xc0\xe8\x47\x02\xb3\x8e\x0b\x17\x47\x42" 82 $ECHO -ne "\x79\x21\x3c\xec\x6c\xb0\x84\x24\x96\x45\x4a\x8e\xbb\xbe\xc2\xe0" 83 $ECHO -ne "\x16\x85\x76\x43\x26\xd5\xd0\x58\xdd\xf7\x83\x65\x44\x8f\xbe\x6c" 84 $ECHO -ne "\x72\xe1\x5b\x1a\x0e\x3a\xbb\x51\xcf\xbd\x9b\x3a\xd0\xd5\x39\x5b" 85 $ECHO -ne "\x23\x7d\xc9\x0b\x08\x0a\x23\x7b\x3a\x00\x67\xa1\x76\xa5\x19\xab" 86 $ECHO -ne "\x48\xbd\x54\xaa\x8f\xaf\xb6\xe8\xd5\x91\x0f\x3e\x4b\x3a\x8d\xc9" 87 $ECHO -ne "\x48\x02\xc2\x6b\xfc\xef\x0a\x9b\xf1\x67\xd0\x45\x48\x45\x05\xc0" 88 $ECHO -ne "\x07\xc4\x47\x96\x6e\x79\xac\x31\x49\xcf\x1f\xa8\x3b\xdc\x1d\x44" 89 $ECHO -ne "\x83\x84\x04\x49\x9f\x25\x01\x4b\x41\x80\x14\x1b\x9d\xaf\xfc\xb5" 90 $ECHO -ne "\x46\x22\xca\x96\x4e\xd5\xe3\x08\x7d\xab\x17\x0b\x65\xcd\xa7\xd4" 91 $ECHO -ne "\x5e\xd1\x8a\x27\xc8\x60\xe9\x17\xa3\xc9\xb4\x26\xf8\x58\xb2\x4a" 92 $ECHO -ne "\x15\x52\x8e\x15\x20\x72\xb2\x0e\x4f\x64\xcb\x2b\xa3\xd9\xf0\xa6" 93 $ECHO -ne "\x6f\x0b\x50\xed\x4e\xa4\x28\xe8\xe0\x05\x2d\x15\x26\x2c\x3d\x9f" 94 $ECHO -ne "\x87\xc4\xd1\xd3\x69\xe2\x1c\xea\x41\x99\xbd\x43\x59\x9f\x06\x57" 95 $ECHO -ne "\x06\xb4\x72\xe7\x45\x2c\xd2\xcf\x5f\x66\xa5\xeb\x58\x6a\xc0\x37" 96 $ECHO -ne "\x82\x81\xf6\xdc\x1c\x35\x5b\xc6\xf1\x92\x4e\xe0\xe2\xd2\x12\x82" 97 $ECHO -ne "\x92\x97\x14\xe5\xac\x49\x9f\xfd\x16\x46\xc6\xc2\xf1\x48\x86\x05" 98 $ECHO -ne "\xe6\x74\xac\x9a\x52\x49\x64\x45\x25\x43\x08\x06\x03\x63\x49\x91" 99 $ECHO -ne "\x9a\x92\x96\x5b\xe3\x2f\x11\x51\xcd\xe3\xa3\x9f\x3e\x8f\x9f\xab" 100 $ECHO -ne "\x92\xbc\x6d\x36\xa3\xd1\x71\xa4\x4a\xb6\xe1\x49\xb8\xdc\x2c\x90" 101 $ECHO -ne "\xb2\xd6\xfb\xa6\xc6\xd9\xa4\x5b\x9b\xe5\xd6\x59\xb3\x76\x37\xeb" 102 $ECHO -ne "\xa6\x3e\xf0\x4c\x98\x1d\x73\x04\x01\x06\x8c\x10\x00\x3b\x2b\x04" 103 $ECHO -ne "\x55\xf4\xfd\xec\x9d\xad\xc7\x2b\xbd\xe3\xda\x4b\xee\x28\x5d\x7a" 104 $ECHO -ne "\xbe\xa6\xb9\xe0\x81\x15\xa6\x09\x26\x52\x60\xcc\x03\x30\x66\x60" 105 $ECHO -ne "\xb9\xd0\x79\xfd\xb6\xb3\x85\xac\xd1\xc4\x4c\xbf\x80\x20\x44\x45" 106 $ECHO -ne "\x7f\x72\x27\xff\x14\xc2\xc0\x81\x02\xab\x32\x20\x43\x46\x06\x7f" 107 $ECHO -ne "\xb7\xc2\xb9\xf6\x39\x7b\x0b\x0c\xcb\xe7\x6e\x03\xe3\x20\x46\x82" 108 $ECHO -ne "\x4a\x01\x23\xbb\xb0\x0c\xb5\x6f\xf7\xfb\xfc\xf5\xf2\x3c\x8e\x7e" 109 $ECHO -ne "\xcb\x77\x6f\x7e\xc3\x71\x7c\x44\x3f\xbc\x3c\x54\xb8\x40\x27\x78" 110 $ECHO -ne "\x63\x4d\x83\x22\x6a\x0a\x00\x0e\x8d\xa5\xfa\x5e\xe5\x89\x55\xa4" 111 $ECHO -ne "\x18\x60\xc2\xa6\xd6\x17\x98\x23\xf0\x07\x44\x45\x18\xa4\x68\xd9" 112 $ECHO -ne "\xcc\x0d\xe3\x81\x06\x09\x0c\x17\xaf\x52\xad\x85\x83\x5d\x09\x30" 113 $ECHO -ne "\x0d\xa9\xb3\xe6\x45\x85\x9e\x26\x47\xab\x7d\x14\xe1\x8a\xb9\xfe" 114 $ECHO -ne "\x0a\x0f\x8d\x68\x73\x73\x5c\xa3\x0b\xb5\x29\x0c\xd8\xde\xc2\x30" 115 $ECHO -ne "\xbe\x61\xce\xbd\x4d\x3a\x03\xef\xe9\x45\xef\xeb\x07\xe8\x6b\x7d" 116 $ECHO -ne "\xd2\xf4\x92\x8f\x91\xa1\x6e\x85\x2b\x73\xaf\x01\x8a\xd2\x0f\x52" 117 $ECHO -ne "\xed\x65\x9f\xe6\x15\x47\xb2\x71\xd3\xbc\xee\xde\xff\x10\xfa\x4d" 118 $ECHO -ne "\x7f\x9d\x5a\x4b\x13\x4a\x92\xd6\x85\xb2\xef\xe1\xbb\x92\x80\x4a" 119 $ECHO -ne "\x45\x70\xa0\x4e\xe6\xf3\x39\x9a\xf6\x55\xee\x80\xc5\xa0\xff\x9d" 120 $ECHO -ne "\xb6\x66\xe6\xcc\x81\xb2\xdc\xd6\x39\xb7\x06\x2c\xd6\x3b\x27\x0e" 121 $ECHO -ne "\x5d\x01\x92\x5c\xf3\xbe\x3d\x46\x8a\x46\xa4\xd4\x03\x21\x86\x8e" 122 $ECHO -ne "\x68\x05\x3b\xf0\x66\x69\x4c\x61\xf0\x39\x1c\x9d\xe2\x74\x3b\x5f" 123 $ECHO -ne "\xd7\x87\xdc\xd3\xeb\x59\x50\xb6\x6d\x75\xc9\x5b\xdc\x4d\xb7\x29" 124 $ECHO -ne "\x0c\x64\x9c\x5c\x22\xd1\x44\xd7\x01\x68\x0a\x26\x25\x7d\x6a\x76" 125 $ECHO -ne "\x1c\x1b\xbf\x7a\xa5\xeb\x42\x8f\x2f\x93\xa3\xc1\xca\xe3\x9f\x46" 126 $ECHO -ne "\xfd\x77\x07\x27\x2d\xaf\xbb\x1a\x13\x5b\x86\x94\x00\x90\x86\xc1" 127 $ECHO -ne "\x24\x8d\x86\x22\x56\xbe\x06\xe1\xa1\x44\x4c\x36\xe2\x22\x08\x21" 128 $ECHO -ne "\xb2\x20\x6d\xb6\xdb\x6c\x6e\x26\x26\x06\xc0\x26\x09\x94\x09\x75" 129 $ECHO -ne "\x2c\x10\x4b\x44\xb0\x1b\x44\x26\x11\x58\x10\xdf\x2c\xc1\x55\x8a" 130 $ECHO -ne "\xad\xb2\xa3\x08\x67\x34\xe5\x83\x95\x0a\x08\x82\xc1\x8a\x06\xdd" 131 $ECHO -ne "\xb1\x32\x14\xa5\x27\x78\xca\xb6\xd1\x57\x5a\xc9\x2a\x06\x05\x29" 132 $ECHO -ne "\x0c\x88\x28\xd2\x86\xa5\xa9\x69\x51\x81\x46\xa1\xa4\x81\xb1\x8d" 133 $ECHO -ne "\xb1\xb0\x01\x83\x49\x4b\x15\x1a\x6e\x13\x24\x68\x54\x60\x4b\x4e" 134 $ECHO -ne "\x21\x39\x82\x1c\x8d\x02\x6d\x23\xc3\x30\x25\x83\x69\x05\x11\x05" 135 $ECHO -ne "\x4d\x24\x04\x4e\x0c\x53\x81\x25\xce\x34\x10\xd0\x04\xd4\x98\xa1" 136 $ECHO -ne "\x21\x0b\x7e\xc4\x09\x11\x30\x82\x8f\x68\xc4\x13\x48\x0a\x30\x17" 137 $ECHO -ne "\x4f\xaf\x80\x52\xd0\x36\x22\xd6\x43\x48\x15\xf6\xa1\x82\x84\xdc" 138 $ECHO -ne "\x44\x34\x07\x52\xc4\x2c\x56\xb7\xaf\xa8\x3b\xb1\x08\x4b\x6b\x6c" 139 $ECHO -ne "\x24\x05\xce\x1a\x10\xe2\x02\x31\x22\x25\xb8\x23\x65\xd0\x52\x9b" 140 $ECHO -ne "\x4a\xcb\x64\xae\xbd\xe8\xda\x30\xb4\x25\x79\xa4\xbc\xe6\xe0\xf3" 141 $ECHO -ne "\xde\x82\x23\x84\xce\xe5\xb9\xc9\xe9\xeb\x69\x78\x2f\xbc\x76\x6d" 142 $ECHO -ne "\x58\x86\xc4\xa5\x82\xfa\xad\x61\x75\x62\x0c\xb6\x9b\x00\xdf\x30" 143 $ECHO -ne "\x4a\xd6\x83\xaa\x60\x8a\x33\x7c\xd2\x12\xf5\x6c\x48\x52\xc5\x85" 144 $ECHO -ne "\xe2\x6f\x37\x73\xc7\xbc\xad\xea\x27\x27\xa8\xef\xf7\xef\x59\x17" 145 $ECHO -ne "\x65\xb6\xe1\xd8\xdd\xb5\x93\x42\xd0\x29\x5a\x18\x76\x08\xdb\xe5" 146 $ECHO -ne "\x38\xf9\xa8\xe4\xa1\xa2\xd4\x40\xa0\xfd\x45\x18\x4b\x3c\xa6\x85" 147 $ECHO -ne "\x02\x94\x8c\x88\xa9\x71\x87\x40\x96\x4d\x23\x26\xf4\x17\x44\xb8" 148 $ECHO -ne "\x78\x1e\x71\xe3\x3b\xee\xc6\x4b\x87\x88\xfd\x2b\xb5\x8b\x1b\x53" 149 $ECHO -ne "\x0b\xab\xd6\x47\x23\xa7\xcf\x78\x3a\x25\xd7\x3c\x77\xb3\x8e\x00" 150 $ECHO -ne "\x37\x83\x11\xbb\x68\xf5\xed\x0a\x1a\x4d\xa3\x90\x68\xea\xed\x49" 151 $ECHO -ne "\x8d\xb6\x80\x69\x83\x67\xcf\x65\x5a\xec\xda\x12\xe6\x5a\x47\x5a" 152 $ECHO -ne "\x3c\x63\x50\x41\x73\x40\x83\xc7\x69\xbc\x46\xa7\xb1\xed\x79\x3c" 153 $ECHO -ne "\xfe\xdf\x27\x4b\xbe\xeb\x68\xec\x83\x00\x6b\x7b\x08\x4a\x6e\x0c" 154 $ECHO -ne "\x2d\x16\xba\x1a\x96\xa1\x03\xc3\x63\x9e\x7a\xce\x8b\xe2\xae\x51" 155 $ECHO -ne "\xfb\x7d\xed\x5d\xfb\xbc\xed\x04\x6f\x1f\x21\xfc\x69\x3c\xb1\xaa" 156 $ECHO -ne "\xdf\xbf\xa0\xab\xc3\xcc\x6a\xbf\xe7\x96\xbe\x36\xb3\x23\x32\x1c" 157 $ECHO -ne "\xb5\x18\x44\x54\x51\x81\xb4\x63\xc7\x99\x84\x06\xcb\xaf\x5b\x05" 158 $ECHO -ne "\x4f\x82\xf5\x93\xb4\xc3\xcf\xdb\x65\xb8\x8d\xae\xa1\xc2\xf0\xdf" 159 $ECHO -ne "\xa7\xe5\xf3\x37\xd2\x57\x73\x0d\x89\xb8\x21\x10\x9a\x43\xe9\xe0" 160 $ECHO -ne "\x09\x1a\x40\x49\xa0\xcc\x03\x30\x46\x66\x66\x0c\x12\x48\x89\xff" 161 $ECHO -ne "\x57\xe8\xd2\x7c\x3e\x8d\x9e\x46\x7f\x97\xfc\x3b\x12\x95\xd2\xdf" 162 $ECHO -ne "\x2f\xb1\xc8\x7d\x61\xdb\xb2\x8a\xdd\xbf\xf3\x7e\x08\xcc\xad\x16" 163 $ECHO -ne "\xbe\x45\x13\xf2\x7f\x14\x5a\x79\x2e\xb5\xbb\x78\x0c\x22\xc6\x10" 164 $ECHO -ne "\x31\xce\x9c\x6b\x1d\x48\x11\x16\x4c\xdf\x98\x12\xf3\x41\x05\x81" 165 $ECHO -ne "\xd3\x24\x94\x92\x37\x51\x5d\xdc\x51\x08\xd3\x73\xba\x89\x42\x3f" 166 $ECHO -ne "\xcb\x5c\x4c\xb2\x16\xcb\x04\xcd\x86\xb2\x05\x8a\xc3\x56\xc8\x83" 167 $ECHO -ne "\x0b\x2e\x90\x31\x86\x5c\x68\xb9\x8d\xbc\xbf\xf2\xe2\xd2\xb0\x0b" 168 $ECHO -ne "\x76\x2b\x3d\x79\xba\x3f\x9b\xe3\x8e\xc4\xf5\xed\xe0\xf7\xdd\xdb" 169 $ECHO -ne "\x97\x5f\x9a\xb3\xfc\x50\xbf\x89\xf4\x7a\x38\xa3\x44\x0c\x50\x5d" 170 $ECHO -ne "\x7c\xbb\x65\x47\xf1\x33\xd6\x67\xa4\xe0\xf0\x68\x58\xe9\x6c\x40" 171 $ECHO -ne "\x02\x6b\x01\x20\x40\x84\x89\x80\x08\xcc\x52\xa0\x20\x81\x98\x16" 172 $ECHO -ne "\xa1\x90\xf8\xcd\xbe\x1e\xc7\x6b\x1d\xb5\x81\x6b\x04\xdb\x4c\x43" 173 $ECHO -ne "\x1a\xbc\xd4\x0d\xb6\x0d\xb3\x82\xc8\xc7\xf0\x13\xa8\xc5\x20\xd5" 174 $ECHO -ne "\xbd\xb4\xc0\x5a\xdd\xe8\xd1\x31\x4f\xad\x88\x63\x30\x44\x0d\xd5" 175 $ECHO -ne "\xc6\x56\x96\x28\xe2\xe8\xa8\xa9\x10\xdb\x1a\xa3\x21\xa6\xc5\xe6" 176 $ECHO -ne "\xf5\xb2\xa4\x6d\x8d\xb4\x31\xb5\xc3\xec\x3e\x8f\xd0\xeb\x35\xce" 177 $ECHO -ne "\xdb\x02\x9c\x4e\x96\xcd\x40\x14\xcd\x97\xb9\x0a\xe3\x09\xf5\x49" 178 $ECHO -ne "\xfe\x1e\xc7\xc5\x57\xb9\x96\xe9\xf5\x8a\x56\xdf\x63\xda\x8a\xea" 179 $ECHO -ne "\x41\x97\x74\x7b\xa6\x57\x99\x8d\xb0\x78\x60\xe4\x04\xd7\xe4\xbf" 180 $ECHO -ne "\x89\x71\xa5\xc8\x93\x42\x02\x53\x7a\x6a\x9d\x99\xc9\xd3\x2b\x87" 181 $ECHO -ne "\x75\xb2\x8f\x19\x86\x28\x2b\xc3\x2b\x67\x95\x72\xfb\x13\x39\xb5" 182 $ECHO -ne "\xca\x8c\x43\x88\x1c\xdc\x47\xb6\xdb\x05\xaf\x8e\x31\x54\xb8\xbd" 183 $ECHO -ne "\x98\x8b\x1d\x1f\x17\x87\x9d\x6d\x05\xca\xa8\x90\x49\x10\xbb\x67" 184 $ECHO -ne "\x2f\x92\x61\x43\xfe\xe2\xd6\x18\x6d\x2a\xc0\x14\x96\x9a\x2a\x65" 185 $ECHO -ne "\x48\x04\xc7\x2d\x76\xa6\x1f\xc5\x79\x36\x28\x69\x6f\x09\xb6\x90" 186 $ECHO -ne "\xc3\x55\x6d\x98\xf0\xbd\xce\xb1\x37\xf4\xc4\x90\x1c\xdf\x5a\x27" 187 $ECHO -ne "\xbc\x24\x38\x52\x75\xc0\xee\xc9\x05\x5a\xd7\x2b\x61\xfd\xba\xfb" 188 $ECHO -ne "\xea\x9f\x65\x39\x9f\xe7\xc9\xc3\x0e\xa9\x3a\x20\x50\x87\xb6\x08" 189 $ECHO -ne "\xc7\x80\x92\xe2\x60\x21\xd2\x2d\x51\x12\xf8\x46\x60\xbd\xf4\x65" 190 $ECHO -ne "\xd5\x7b\x1a\xa7\x79\xb7\x73\x79\xe9\x0d\x60\x34\xc3\xb0\x58\xc8" 191 $ECHO -ne "\xcc\x42\x7b\xb0\x56\x8c\xde\x66\x72\x23\xc2\x59\xe6\x9f\x83\x6a" 192 $ECHO -ne "\xef\x4a\x9e\x1e\xf3\xd5\xde\x52\x32\x14\x8a\x2d\x0b\xf0\x1e\x5b" 193 $ECHO -ne "\x7c\x4a\x34\x4d\x72\x4f\x1d\x8f\x97\xe8\xc9\xcd\xe2\xb9\x03\x36" 194 $ECHO -ne "\x9f\x89\x97\xc3\x19\x8d\x8d\x84\x41\x0c\x03\x34\x18\x41\x20\x10" 195 $ECHO -ne "\x26\x4c\x10\x18\x50\x5e\xd7\x93\x1f\x31\xf7\x54\xb3\x43\x4d\xd7" 196 $ECHO -ne "\x48\x69\xcf\x7d\x29\x2f\x7f\x8f\x11\xf2\x4c\x3f\xcd\xe7\xa2\xe1" 197 $ECHO -ne "\x09\x9a\x1a\x6c\xc6\xf3\xcf\x33\xe5\xb5\x8f\x6e\x41\xf1\x80\x07" 198 $ECHO -ne "\x4d\x7f\xbe\x1b\x37\xdd\xe3\x64\xb8\xa2\x59\x90\x2c\xa2\xbe\xf4" 199 $ECHO -ne "\x82\x2a\x80\x46\x4d\x1a\x8c\x88\x5a\x18\x30\x64\x0a\x5a\x57\x37" 200 $ECHO -ne "\x63\xe9\x6d\x8a\x6d\x5f\x88\x5e\x6d\x41\x33\x60\xfd\x45\x90\x7e" 201 $ECHO -ne "\x15\xaa\x95\x6f\xbd\xfc\xe9\x0b\x34\xe4\x3b\xa8\x41\x78\x1c\x55" 202 $ECHO -ne "\x62\x5d\xb2\x19\xdd\xeb\x69\xeb\xef\xe1\xbf\x7b\xeb\x62\x23\x8a" 203 $ECHO -ne "\x61\x14\x9f\x22\x53\x08\x6a\x31\xba\x30\x24\x1e\x54\x83\xae\xbd" 204 $ECHO -ne "\x87\xa1\x71\xf0\x3c\x7d\x94\xa1\x2c\xea\xff\x84\x76\x77\xd2\xc9" 205 $ECHO -ne "\x9f\x2f\x9c\xc7\x83\x3f\x89\x5d\x1b\x5c\xc3\x0f\xfa\xd2\x93\x32" 206 $ECHO -ne "\xfc\xed\xa6\x26\x86\x98\x1b\x05\x10\x20\x27\x4c\x95\x3f\x6d\x94" 207 $ECHO -ne "\x82\x5a\xa8\x68\x72\xae\xd7\xae\xdb\xaf\x26\xb6\x5a\x89\x30\xe7" 208 $ECHO -ne "\xd0\x5a\x7c\xc6\x66\xfa\xc3\x85\x7d\x26\xee\xb3\x34\xc2\xac\x70" 209 $ECHO -ne "\x88\x03\x15\xc6\xee\x55\x45\xde\x1c\x10\x01\xe6\x3b\x36\x26\x11" 210 $ECHO -ne "\xbe\xec\x54\xea\xd8\x20\x1d\x35\x00\xd1\x8c\x00\xe8\xf5\x21\x97" 211 $ECHO -ne "\x26\x06\x69\x87\x55\xa3\xc8\xf6\x58\xcc\x60\x12\x30\x0b\x8a\x50" 212 $ECHO -ne "\x01\x57\x30\xdc\x9a\x01\xd4\xa4\xcd\xd6\x69\x23\x0f\xc3\xb8\x85" 213 $ECHO -ne "\x12\xbb\x8e\xdf\xc5\xf1\xf3\x7c\xc9\x7a\x24\x25\x07\x9c\x86\x97" 214 $ECHO -ne "\x68\xb5\xad\x0b\xba\x2e\xe8\x6f\x7f\xa1\xed\x4f\x0c\x34\x7b\xc8" 215 $ECHO -ne "\x84\x10\x08\x2a\xcc\x19\x59\xbd\xbc\xe4\x3d\xa8\xd9\x35\xaf\x8b" 216 $ECHO -ne "\xa7\x0a\xad\x42\xe8\x02\x90\xe6\x8e\x76\x5d\x0f\x3b\x87\xb8\xe4" 217 $ECHO -ne "\x65\x4e\x5f\x0d\xe8\x26\xaf\x2a\x94\x9a\x2e\x21\x9a\x19\xb9\xa0" 218 $ECHO -ne "\x8d\x26\x78\xa1\x4b\x6e\xf6\xd7\x29\x66\xdb\x49\x09\xa0\xca\x4d" 219 $ECHO -ne "\x32\xb0\x31\xf5\x73\xe1\x67\xce\xe0\x5a\x79\x84\xa4\x22\xd4\xc9" 220 $ECHO -ne "\x43\x59\x08\xa8\xd5\x5e\x8c\x72\x61\x70\x9a\xa6\x42\xc0\x42\x22" 221 $ECHO -ne "\x2d\xd0\xbe\xb1\x49\x6e\x36\xbb\x8d\x8f\x03\x9b\xb4\xdb\x5a\x77" 222 $ECHO -ne "\x3e\x29\x91\xc6\x73\x88\xef\x8c\xf7\xde\xe2\x2b\xc2\xce\xcd\x8c" 223 $ECHO -ne "\x92\x60\x96\x29\x89\x99\x62\x99\x81\x36\x9b\x50\xc8\x70\xd6\x8d" 224 $ECHO -ne "\xaf\x6b\x30\xba\xc7\x7a\xca\x4c\x56\x66\x66\x2d\xc7\xa5\xf7\x63" 225 $ECHO -ne "\xa4\x55\x8d\xd4\x92\xdb\x2b\x6b\xb1\xa1\x96\x99\xd9\x25\xdb\x14" 226 $ECHO -ne "\x1c\x49\x04\x67\x25\x45\x0a\x50\x1d\x20\xd8\x8d\xcf\xe7\x03\x20" 227 $ECHO -ne "\xf0\xd7\xc0\xcc\x84\x20\x68\x4a\x63\x41\xa4\x6c\x32\x08\xa2\x37" 228 $ECHO -ne "\x03\x6b\x42\x12\xbe\xa9\x4e\x9b\x97\x16\x92\x48\x56\x32\xae\x2c" 229 $ECHO -ne "\x10\xc6\x31\x14\x8c\xcc\xd6\x23\x09\xf4\x64\x15\x9e\xf1\x35\x75" 230 $ECHO -ne "\x98\x3a\x0c\x12\x29\xaa\xb7\x2b\x82\xe0\xf9\xcd\x05\xed\xb8\xbe" 231 $ECHO -ne "\xb6\xf5\x6f\xcc\x41\xbc\x3a\x81\x39\x3b\x03\xe8\xb2\xab\xb6\xaa" 232 $ECHO -ne "\xed\xa8\x58\xdf\xca\x06\xba\x64\x7b\xc4\xef\xec\x23\x38\x77\xec" 233 $ECHO -ne "\xcf\xd7\xd2\xeb\x75\x3d\x26\xe2\xfa\x66\x49\x0b\x4a\xdc\xe3\x48" 234 $ECHO -ne "\x64\x33\xc4\xb3\x93\xda\xdd\x3c\x08\x83\x7d\x91\x78\xe5\x61\x57" 235 $ECHO -ne "\x67\x37\x73\xe1\x05\xbb\x96\x3e\x26\xc7\x6c\x44\xb5\xfb\x80\xb2" 236 $ECHO -ne "\xd9\xa0\x99\x6b\xbf\x74\x62\xb7\xf7\x14\xec\x07\x12\xfc\xe6\x1b" 237 $ECHO -ne "\xf1\x1d\x24\xfe\xd0\xb9\x61\x76\x56\xa0\xa5\x8c\x63\xce\x96\x5d" 238 $ECHO -ne "\x65\x4f\xae\xcc\x7d\x86\x2d\xd7\x74\x96\x67\xb7\x5c\x94\xa6\x30" 239 $ECHO -ne "\xbd\xb3\x84\x56\x93\x1e\x44\xc5\x43\x5f\x65\x9d\x1a\x92\xb1\x9a" 240 $ECHO -ne "\x4c\x46\x1f\xd2\x64\x54\xb6\x4e\x7e\xb2\x71\x75\xf6\xce\xac\xdc" 241 $ECHO -ne "\x5a\xa1\xd4\xf1\xf5\x71\x6a\x93\x50\xd2\x8b\xb2\xb1\x7f\xaf\x20" 242 $ECHO -ne "\xd2\xc9\xce\xeb\xfb\x1d\x4a\xff\x26\x89\xa2\x60\xed\x8a\xeb\xa7" 243 $ECHO -ne "\x6e\x92\xea\xb7\xef\x7a\xcc\xd9\x4b\xbb\x3e\xad\xc6\x7a\xfa\xbb" 244 $ECHO -ne "\xe0\x25\x0c\x0f\xe2\x14\xf9\x2e\x0b\x5f\xd4\xbd\x8f\x5a\xae\xb6" 245 $ECHO -ne "\xca\xc1\x5a\x89\x4c\x74\x36\xd3\x32\xab\x87\xa7\x7d\x57\x7f\x45" 246 $ECHO -ne "\x1a\x1d\x45\xcc\xc8\xf1\x36\x8c\x4d\x6e\xc9\x01\xb8\x7a\x99\xdc" 247 $ECHO -ne "\x4d\x9a\xa1\xc3\x7a\x81\xac\xa9\x40\x20\xc1\x18\xc7\x1e\x0d\xeb" 248 $ECHO -ne "\xf7\x53\x9b\xcb\xe2\x64\x4e\x17\x1c\x6a\xd7\x74\x6b\xe4\x4b\xe7" 249 $ECHO -ne "\x5f\x06\x31\xac\xe7\x5c\x64\x93\x05\x69\x13\x1a\x34\x52\x3e\x1a" 250 $ECHO -ne "\xc8\xf6\xed\xde\x5e\x79\xf4\xe2\x04\xc3\xb6\xb3\x49\xdc\x7a\xe3" 251 $ECHO -ne "\x52\x12\x1b\x32\xd9\xe2\x5c\x95\x5f\x69\x01\xde\x77\x16\x34\xf7" 252 $ECHO -ne "\xda\x43\x2c\x56\x77\x21\xcc\x86\xc4\x4a\x14\xb8\x29\x28\x0a\xf1" 253 $ECHO -ne "\x79\x8a\x9e\x94\x86\x6c\x6a\x6c\x0f\x15\xe6\xb4\x57\x92\xfc\x1f" 254 $ECHO -ne "\x6d\x98\xbf\x2f\x0b\x97\xb3\x4b\xec\xe6\xd3\xf7\x94\xe4\x2c\xf3" 255 $ECHO -ne "\x20\xfa\x42\x69\xd9\xb6\xb2\x96\x31\x09\x6b\xcb\xd2\x92\x14\x40" 256 $ECHO -ne "\x69\x75\x9a\x83\x49\x44\xed\xe0\xdd\xa3\x3d\x09\xe0\xe4\xcf\x4f" 257 $ECHO -ne "\x3b\x12\x84\xb6\x47\x2b\x1b\x7e\xc2\xac\x8d\xf6\x1c\x74\x26\xb0" 258 $ECHO -ne "\x2a\x27\xf6\x03\xe3\xf9\xe3\xbb\x4a\x1a\x6f\xa2\xf4\x10\xb0\xe5" 259 $ECHO -ne "\x70\x9a\x9b\xdf\xac\x42\x6a\xdc\x80\xc3\x80\x0c\x84\x26\xf0\x23" 260 $ECHO -ne "\xd6\x5b\xcb\x8b\x3b\xe1\x65\xfe\xba\xad\x85\xe9\x1d\x88\xa4\xf8" 261 $ECHO -ne "\x05\xb8\x58\x0b\xb1\x13\xa8\xd8\xea\xfd\x07\x68\xee\x6b\x5c\x88" 262 $ECHO -ne "\x17\x49\x89\x0e\xa5\x7a\xe6\xa0\x9c\x3a\x06\x2d\x71\x84\x2c\xd2" 263 $ECHO -ne "\x1b\x07\xfd\x43\x9b\x48\x9b\xae\x60\x54\x5d\xd3\x2b\xf1\xc0\x0d" 264 $ECHO -ne "\x49\x01\x64\x34\x36\x77\x2f\x0e\xe7\x72\x35\x48\x2f\x05\xaa\xd5" 265 $ECHO -ne "\xb4\x98\x77\xa3\x19\xa2\xf4\xb8\x11\xa7\xa6\x24\x91\xac\x1e\x09" 266 $ECHO -ne "\x38\x04\xc6\xff\x0b\x7d\x36\xc2\xcb\xb8\x9c\x7e\x7b\x49\x8c\x4e" 267 $ECHO -ne "\xbb\x37\x19\x18\x83\xc5\x23\x03\x6c\xcb\x51\x24\xe5\x42\x85\xc7" 268 $ECHO -ne "\x73\x13\x2c\xc8\x22\x28\x50\x83\xbc\x3a\x8e\x60\xac\xb1\xda\x18" 269 $ECHO -ne "\x24\x6d\x64\xd0\xa9\x65\xcd\xd6\x5a\xa7\xaa\xc6\xed\x32\x76\x7b" 270 $ECHO -ne "\x07\x90\xb4\x7b\x5d\x16\x88\x9b\xd7\x5e\x0a\xb7\xbf\xbf\xc4\x5d" 271 $ECHO -ne "\x1c\xbd\x39\xf3\x17\xae\x50\xaa\xc7\xa4\xe9\xad\xa5\xac\x04\xd9" 272 $ECHO -ne "\xa4\x27\x5f\x79\x75\x29\x10\x69\x75\xe9\x06\x53\x7c\x66\x8b\x83" 273 $ECHO -ne "\xf7\x7c\xfd\xcd\x16\xc3\x8c\x8e\x51\x6f\xcb\x68\x0a\x9c\x39\x39" 274 $ECHO -ne "\xb9\x0b\x6a\x16\xc5\x4a\x22\xc0\x31\x09\x22\x28\xa0\x65\x69\x05" 275 $ECHO -ne "\x30\x90\xc1\x18\x22\x05\x9e\xad\xa9\xc3\x54\x3e\x27\xa9\xc4\x41" 276 $ECHO -ne "\x2c\x39\x03\xd2\x8e\x3f\x91\x9a\x4c\xc8\x68\x14\xe4\x1c\xa6\x5f" 277 $ECHO -ne "\x0b\x57\x27\x09\x8a\x7d\xff\x47\x63\xa7\x5a\x29\x82\xa0\x3a\x28" 278 $ECHO -ne "\x30\x9a\x2b\xf3\x69\x63\x18\xcd\xe2\x32\x66\x3c\xd7\x79\xdd\x12" 279 $ECHO -ne "\x86\x34\xc6\x9e\x75\x05\x87\x39\x23\x72\x97\x71\x27\x64\xcd\xd9" 280 $ECHO -ne "\xa6\x2e\x61\xd2\x37\xe4\xae\xc6\xc9\x81\xc0\x2e\x9f\xc6\xf9\x7f" 281 $ECHO -ne "\xd9\x5e\xd0\xa9\x09\x97\x35\xa2\xe3\x4f\xe9\x19\x7c\xa5\xc7\x4d" 282 $ECHO -ne "\x2d\x92\xec\xd6\xef\xda\x55\xf3\xa2\x95\x17\x1b\xce\xbe\x6b\x74" 283 $ECHO -ne "\x70\xee\xdb\xa8\x42\x26\xb1\xcc\xc1\x31\x0a\x67\x92\x13\x9d\x9c" 284 $ECHO -ne "\x12\x18\xa4\x08\x4d\x4d\xfc\x7c\xeb\x59\x6b\x22\x03\xaa\x97\xc3" 285 $ECHO -ne "\x27\xa5\x21\x35\x68\xd2\x57\x54\xca\x58\x38\x82\xc5\x05\xa0\x71" 286 $ECHO -ne "\x01\x1b\xce\x57\x1e\x20\xbf\x89\x96\x2a\x31\x8e\x6e\xaf\x7f\x35" 287 $ECHO -ne "\x08\x10\xd9\x0e\x8a\x78\xb0\x48\x98\xa4\x64\x14\xa2\xcf\x23\x2d" 288 $ECHO -ne "\x0a\x7b\x84\xe5\xfd\x29\x49\x15\x3d\x75\x39\xfd\xaa\xd6\xa4\xb9" 289 $ECHO -ne "\x05\x12\x57\x31\x04\xdc\x26\x34\x16\x3f\xa7\x03\x32\x1d\x4b\x1d" 290 $ECHO -ne "\x78\xdc\x9b\x79\x96\x9a\x87\x6e\xb4\x80\xaa\x01\x19\x33\x92\xb0" 291 $ECHO -ne "\x16\xc9\x94\x9c\xe7\xa5\x63\xe6\x18\x13\xb2\x34\xbd\x98\x41\xd6" 292 $ECHO -ne "\xa4\xc8\xb9\x6e\x06\x9c\x72\xf8\x49\xab\xd5\x47\x9e\xa1\xe6\xde" 293 $ECHO -ne "\x62\xd0\xec\xaf\xbf\x1b\x8a\xaf\x63\xa0\x29\xbe\x3d\x87\xa0\x22" 294 $ECHO -ne "\xce\x46\x4e\x18\x30\x7b\x3c\x3d\x86\xe1\x9e\xb6\x59\xef\x1c\x43" 295 $ECHO -ne "\x65\xd0\x3d\x53\xd0\x41\x20\x40\xb7\x2b\xb1\xdd\x52\x2c\xdd\x68" 296 $ECHO -ne "\x44\xc1\xbe\x40\x72\x61\xd7\x25\x5d\xf5\x69\xce\x3a\x3b\x2e\x9b" 297 $ECHO -ne "\x13\x19\x79\x1a\xf0\xee\xb0\xe7\x17\x44\x45\xe8\x2d\x59\x50\xbc" 298 $ECHO -ne "\x40\x67\x66\x12\x20\xcc\x43\x8a\x9c\x1d\xde\xac\x2d\x00\x76\xb2" 299 $ECHO -ne "\x98\x8a\xa9\xde\x1c\xb6\x8b\x32\x19\x67\x1c\x67\x95\x41\x40\x60" 300 $ECHO -ne "\xf3\x13\x44\xb8\xc5\x18\xa7\xca\xdd\x8c\x5a\x8f\x72\x69\xf1\x31" 301 $ECHO -ne "\xa9\xd2\xeb\xac\x3e\x2f\xdc\xc7\xe0\x00\x78\x5d\x72\xff\x01\x95" 302 $ECHO -ne "\x86\x4a\x90\x2b\xf8\x10\xc5\xc2\xd1\x9d\x7a\xc3\x65\xb1\xfd\x2d" 303 $ECHO -ne "\x09\x0b\xcd\xdf\x03\x80\x3e\x44\x81\x65\x49\x4f\x50\x7e\x1f\x75" 304 $ECHO -ne "\x97\xc6\x05\xda\x5a\xe9\xf6\xee\xe5\x66\xcc\x5e\x17\xe2\x8c\xb2" 305 $ECHO -ne "\x06\x5b\xdd\x41\x0d\x26\xcc\x87\x0d\x37\x2e\x2d\x35\xe0\x5d\x93" 306 $ECHO -ne "\xc5\xdf\x2d\xb4\xa2\xb1\x1b\x0e\x9b\xe6\x76\xb4\x28\x69\x5c\xe9" 307 $ECHO -ne "\x4e\x27\x6f\x52\xcb\x4d\xb3\xc8\xaa\xea\xd3\x1a\x57\x00\xdf\x20" 308 $ECHO -ne "\x2d\x42\xea\x6a\x18\x0a\xac\xae\x9a\x32\x08\x23\x99\xb7\xd8\xe5" 309 $ECHO -ne "\x75\x3a\x65\x8b\x2f\xaa\x4f\x7b\x68\xd5\x66\x76\xf4\xec\x3d\xdb" 310 $ECHO -ne "\xe9\x37\xdb\x69\x40\x6d\x35\x4f\x77\xfa\x8f\x07\x60\xac\x8e\x3b" 311 $ECHO -ne "\x89\x46\x3c\x16\xd4\x4b\x6e\x71\x4f\x00\x10\x22\x14\x12\xca\x72" 312 $ECHO -ne "\xe0\x6c\x54\x2f\x0e\x32\x8c\xba\x53\xad\x51\x48\xaf\xee\xb2\xca" 313 $ECHO -ne "\x93\x4a\x46\x24\x1f\x09\x83\x69\x1c\x3f\x72\x50\x70\xff\x10\x74" 314 $ECHO -ne "\x21\xef\x4a\x08\x38\x25\x4c\x54\xb6\x34\x83\x64\x99\x22\x0f\x02" 315 $ECHO -ne "\x49\x58\x50\x74\xa3\xbe\xc2\x17\x05\xa7\x60\x55\xc4\x21\x52\x0c" 316 $ECHO -ne "\x57\xee\x0f\x64\x6a\xa9\x73\x25\xa1\x2a\x94\x1d\x00\xca\x65\xc4" 317 $ECHO -ne "\x39\xfc\x53\xa8\xe7\x4c\x07\x44\x5f\x29\x19\x98\x08\x16\x53\x1a" 318 $ECHO -ne "\xba\xee\x8e\x2e\x16\x97\x66\x5b\x7c\xb5\x63\x2d\x31\x18\xdb\x64" 319 $ECHO -ne "\xc5\x69\x15\xa9\xe8\x23\x5f\x92\xdb\x75\x60\x90\x6a\xbf\xb5\xba" 320 $ECHO -ne "\xe5\xa5\x70\xce\x26\xd0\xc1\x63\xcb\x0e\x21\x67\x1e\x8e\x20\x32" 321 $ECHO -ne "\xa1\x2d\x51\xfc\x32\xa0\xc9\xd0\x32\x91\x9a\xda\x45\x73\x2e\x97" 322 $ECHO -ne "\x09\x17\x0c\xea\xe4\x89\x94\xe8\xad\x64\xd6\x78\x02\x07\x79\x06" 323 $ECHO -ne "\xa4\x01\xce\xd0\xcc\x33\x20\x8d\xc9\x2d\x67\xdf\x85\x06\xb5\x21" 324 $ECHO -ne "\x74\x61\x49\x99\x98\xec\x28\x06\xc4\xbd\x25\xb5\x62\x2d\xb0\xba" 325 $ECHO -ne "\x5f\x4c\xc4\x33\x85\x42\x58\x11\xd4\xff\x27\x21\x3c\x57\x9e\xd9" 326 $ECHO -ne "\xc4\xb1\x6d\x8d\x4a\x8c\x8a\x80\x6c\x1e\x16\x5f\xc1\xc4\x68\x4a" 327 $ECHO -ne "\xca\x20\xb1\x40\x10\x1b\x1b\x6c\xf7\x82\xf8\xd4\x35\x29\x10\x76" 328 $ECHO -ne "\x7d\x3a\x4d\x4d\x49\x9b\x62\x65\x66\xd4\xda\x81\x24\xca\x4a\x48" 329 $ECHO -ne "\x48\x2f\x83\x48\xd1\x09\xdf\x2f\x17\x8b\xc5\x37\x89\x94\x15\xb1" 330 $ECHO -ne "\x36\x58\xcd\x80\xb4\x19\xc5\xc6\xda\xda\x16\x95\x82\x14\xc5\x19" 331 $ECHO -ne "\x61\x6e\xb5\xcc\x27\xb5\xf3\xdb\xef\x6e\x44\x37\xbf\xdc\x11\xf9" 332 $ECHO -ne "\xa0\xf2\x78\x30\x85\xc0\xc0\x07\x67\x02\x66\x56\x7c\x76\xee\x7a" 333 $ECHO -ne "\x97\x6e\x02\x5e\x08\xc0\x35\x02\x4a\x87\x39\x4c\xd6\xc4\xe0\x99" 334 $ECHO -ne "\xcd\xd9\xda\x2c\x49\x18\x5c\x22\xb6\x51\x4b\xa0\x58\x8b\x7a\x55" 335 $ECHO -ne "\x61\xdc\xa5\x21\x83\x1d\x47\x9c\x0b\xf4\x74\xba\x08\x85\xe4\xc8" 336 $ECHO -ne "\x80\xbe\x80\x46\xfc\x46\x85\x60\x64\xa6\xc4\xc1\xae\x69\x67\x0b" 337 $ECHO -ne "\x8e\xac\xa2\xc0\xf4\x6b\x6f\x7a\x9e\x00\xdd\x4d\x59\x57\x4a\x78" 338 $ECHO -ne "\x08\x64\x08\x84\x80\x50\x34\xb1\x3b\xc7\x71\x3f\x3e\x1c\x1d\x4e" 339 $ECHO -ne "\x4e\xa9\xb0\x32\x02\x10\x8e\x88\x71\xed\x87\x2c\x32\x4d\x57\x05" 340 $ECHO -ne "\xf1\xba\xa0\xf9\x61\x30\x4b\x18\x65\x6e\x38\xf9\x41\xdd\xf1\x48" 341 $ECHO -ne "\x63\x38\x50\x10\xc1\xac\x1b\xf2\x5b\xaa\x15\xf4\x89\x0e\xe9\x77" 342 $ECHO -ne "\x80\x56\x50\x18\x81\x71\xd8\xdb\x0d\x6a\xce\xd2\xb6\x76\xbd\x35" 343 $ECHO -ne "\xf0\x96\xe1\x06\x8b\x09\xab\x83\x21\x10\x10\x30\x68\x30\xad\xe0" 344 $ECHO -ne "\xc2\x62\xa2\x99\x0b\x92\x17\x19\xab\xe3\x7a\xd1\x90\xae\x5c\x2b" 345 $ECHO -ne "\x6e\xbe\x31\xec\x72\x78\x03\x7a\x85\x70\xe0\x67\x36\xe0\xdb\x63" 346 $ECHO -ne "\x6e\xed\x26\x94\xcc\x9b\x4e\xa8\x23\x57\x56\xe1\x49\x61\x31\x5e" 347 $ECHO -ne "\xc8\x2b\x81\x05\x23\x18\xdb\x68\x34\x0b\x6c\xf1\xfc\xc7\xdd\xdf" 348 $ECHO -ne "\x1a\x39\xf8\xf6\x72\xb9\x4d\xc9\x80\xbf\x23\x93\x24\x76\xdd\x6d" 349 $ECHO -ne "\x0a\x8f\x18\xe1\x81\x8f\x48\x7b\x48\x2e\xd0\xb5\xd0\xcb\xa1\x46" 350 $ECHO -ne "\xae\x1c\x26\x02\xd2\xe0\xf4\x56\x8c\x8a\x01\x97\x4e\x5f\xd1\xde" 351 $ECHO -ne "\x9a\x10\x31\x0d\x4c\xbc\x40\x06\xc5\x04\x92\x91\x88\x81\x58\x5d" 352 $ECHO -ne "\x55\x13\xab\x4f\xaa\xbd\xee\xa0\x6a\x80\xb2\x83\xd0\x46\x31\xa0" 353 $ECHO -ne "\xbc\x2c\xf9\x0d\xad\xe2\x62\xb0\xac\xa4\x91\x84\xb8\x31\x99\xb9" 354 $ECHO -ne "\x45\xb3\x47\x1e\xc2\x96\xc9\x9d\xcc\xd3\xcc\x71\xc4\xf3\x9a\x92" 355 $ECHO -ne "\x2b\xac\xc3\x8c\xe1\xdc\x40\x66\x64\xe8\x24\x35\x50\x26\x68\x0b" 356 $ECHO -ne "\x79\x96\x81\xb6\x36\xc7\xa4\x82\x0d\x32\x65\xc3\x4c\x61\x49\x32" 357 $ECHO -ne "\x09\x14\x22\xac\x37\x69\x34\xb4\x6c\xdd\xbc\x95\x54\x6b\x59\x53" 358 $ECHO -ne "\xc6\x50\x32\x09\x99\x14\x8c\x18\x74\xcc\x05\x86\x7a\x06\x48\x50" 359 $ECHO -ne "\x6e\xe0\xaa\x41\xbb\xb0\xbc\x19\xaa\x2c\x12\x9c\xcd\xa5\x1c\x6d" 360 $ECHO -ne "\x19\x0a\x62\x02\xfe\xd3\x4a\xcc\x7c\x6a\xa5\x72\x06\x35\xfb\x8d" 361 $ECHO -ne "\xf9\xab\x1e\x0b\x29\x73\x70\xb5\xe8\xf6\x54\xb6\x4c\xc8\xea\x30" 362 $ECHO -ne "\x8c\xaf\xd0\xd3\xb0\x20\x59\x80\x61\x40\xc8\x19\x99\x6d\x97\xb3" 363 $ECHO -ne "\xca\x66\x1e\x16\x3d\xa7\x74\xa6\x58\xf0\xd4\x00\x67\xdc\xbb\x8a" 364 $ECHO -ne "\x4a\x7b\x75\xa4\x6e\x89\xc4\x44\x44\x3d\x72\xb4\x52\x8a\xc0\xc2" 365 $ECHO -ne "\x11\x40\x22\x9a\x14\x09\x66\xc2\x03\xcc\x04\x86\x02\x03\xa6\x8a" 366 $ECHO -ne "\xab\x60\xe0\xe8\xdc\x2b\x5d\x0d\x73\xb5\x8f\x74\xc6\xce\xdb\xb5" 367 $ECHO -ne "\xa8\xe7\x95\x3f\x8b\xaf\xb9\x87\xbc\x63\xab\x84\xea\x93\x1e\x9d" 368 $ECHO -ne "\xb4\xe0\x83\xc8\x4a\xc9\xc7\xb9\xc7\xf2\xc6\x25\x10\x58\xc0\x21" 369 $ECHO -ne "\x64\xa1\x08\xd3\x10\x2f\x94\x40\x5a\x56\x17\xa1\x0f\xa6\xfb\xda" 370 $ECHO -ne "\xd3\x12\x42\x31\x71\x09\xa5\x2e\x8b\xd1\x69\x5c\x99\x5b\x09\x52" 371 $ECHO -ne "\xc6\x9b\x5a\x18\x0c\x06\x47\x42\x8a\xc3\xad\xef\x9a\xe9\x9d\xf6" 372 $ECHO -ne "\x2b\x81\x72\x48\x05\x20\x16\x10\xa3\xc3\xc5\xd2\x71\x0e\xca\x04" 373 $ECHO -ne "\x17\xef\xdf\x39\x64\x26\x4c\x9f\x22\xb4\x13\x1c\x3d\xe7\x55\x40" 374 $ECHO -ne "\x2e\xd1\x91\x28\xc8\x1c\x68\x69\x65\x97\x13\x75\xfe\x5b\x5c\xb1" 375 $ECHO -ne "\x9b\x5a\xf7\xd2\x02\xb2\x0b\x41\x36\x67\xe7\xa9\x10\x80\xd0\x5c" 376 $ECHO -ne "\x64\x08\x67\xda\x56\x36\x53\x4a\xa8\xca\x16\x88\xc5\x79\xdd\x3e" 377 $ECHO -ne "\x87\x71\x13\x39\xae\xfd\x2a\x93\x6e\xbb\x96\x02\x39\xea\xda\x5a" 378 $ECHO -ne "\x87\xb8\xfa\x54\x2c\x49\xa3\xa0\xbb\xa5\xc4\x10\x5c\xd2\x10\x10" 379 $ECHO -ne "\x0c\x88\xb2\xd4\xf4\x67\x6a\x93\x5b\xbb\x20\x06\xdc\x75\x7f\x3a" 380 $ECHO -ne "\x9b\xa3\xb0\x76\x98\xd9\x77\x32\x97\xa5\xdc\x64\xa4\x7b\xa5\xae" 381 $ECHO -ne "\xaa\x15\x2d\x59\x0c\xc1\x7a\x40\xd2\xc2\xbb\x45\x10\xe1\x9a\x46" 382 $ECHO -ne "\x52\x91\xe4\x24\x21\x9c\x46\xee\x05\x57\x44\x5e\x41\xad\x5a\x08" 383 $ECHO -ne "\x46\x0b\xa0\xdf\xb4\x59\x7a\xe4\x41\xa3\x0a\x59\x5e\x2b\x17\x20" 384 $ECHO -ne "\x19\x02\x6c\xe6\xe2\x48\x85\x99\xb3\xba\xfc\x9c\xe3\xcd\xf9\x31" 385 $ECHO -ne "\x5b\xf1\x86\x64\x9d\x8f\x93\x24\xa3\x29\x38\x94\xcb\x1e\x71\x87" 386 $ECHO -ne "\x54\xf2\x27\x22\x4e\x57\x26\x9a\x82\xb5\x6e\x6c\x1c\xad\x2d\x2b" 387 $ECHO -ne "\x22\x62\x0a\xd0\x23\x5d\x5a\x75\x15\xae\xa0\x26\x04\x21\x6d\x2c" 388 $ECHO -ne "\xfe\x06\xd9\x60\x61\x20\x8e\xea\xef\xba\x59\x03\x64\xda\xe5\xb2" 389 $ECHO -ne "\x30\xc0\x9c\xdc\xcf\x11\x77\xe9\x23\x54\x33\xb8\xe9\x05\xab\x4c" 390 $ECHO -ne "\x5b\xb5\x4b\x2d\x03\x0c\x51\xc5\x80\x11\x51\xac\xeb\x8d\x4c\x25" 391 $ECHO -ne "\x21\x98\x79\xb0\x38\x99\x9c\xbc\xe2\x96\xe9\x4a\xd0\xad\x56\x6a" 392 $ECHO -ne "\x65\xe1\xd4\x90\x12\x4a\xa5\x48\x06\xc6\x48\x31\xac\xaf\x21\x0a" 393 $ECHO -ne "\x56\xa2\x90\x12\xd7\x53\xa8\x48\x03\x75\x2e\x36\x14\xf4\x50\x89" 394 $ECHO -ne "\x7c\x49\x4e\x4a\x2a\xbc\x46\xc3\x2d\x16\x4e\x42\x25\x28\xd4\xf2" 395 $ECHO -ne "\x01\x47\xa3\x5a\xd1\x6a\x0c\x1c\x35\x9c\x52\xc8\x2d\xeb\xab\x15" 396 $ECHO -ne "\x2a\x99\x51\x45\x22\x9c\x77\xaf\x85\x77\xbc\x84\xb2\xf5\x99\xe9" 397 $ECHO -ne "\xd8\xd9\xc1\x90\x83\x02\xeb\xde\x8f\x91\x82\xa3\x0c\x73\x1a\x05" 398 $ECHO -ne "\x6b\x9c\x98\x28\xc5\x56\x55\xe9\xf3\x74\x24\x81\x48\xaf\x21\xb4" 399 $ECHO -ne "\x84\x2d\x6b\x45\x88\xc2\x90\xb1\x12\x12\x60\xc8\x6a\xec\x61\x33" 400 $ECHO -ne "\xa2\xc3\xb3\x58\xbf\x29\x1c\x48\x97\x7a\xea\x20\x65\x03\x7f\x22" 401 $ECHO -ne "\x45\xa5\xdd\x03\x5c\x52\xdc\x30\x85\xde\xd9\x47\x5e\xeb\x31\x65" 402 $ECHO -ne "\x0b\xf3\x13\x80\xae\x3e\x07\x52\x2a\x47\xb9\x7b\x7c\xa8\x41\x79" 403 $ECHO -ne "\x95\x2e\xcf\x3d\x60\x08\xe6\x26\x00\xd1\x82\x60\x70\x45\xa1\x4a" 404 $ECHO -ne "\x48\xa2\x18\x76\x35\xb5\xe8\x6c\x0d\x42\xd2\xba\x2c\x13\x5b\x25" 405 $ECHO -ne "\x27\xd4\x8d\x73\x7a\xf8\xd9\xfe\xf3\xd3\x81\x73\x83\xe8\x65\x60" 406 $ECHO -ne "\xf3\x5b\x18\x07\x15\x04\x60\x67\x51\xca\xab\x91\x85\xdc\x61\x3a" 407 $ECHO -ne "\xe9\x72\xc2\xd1\xa4\x68\xe2\x00\xc8\x0c\x5e\x82\xa0\x0b\x82\x16" 408 $ECHO -ne "\x40\x82\xb2\x98\x7b\x76\xf8\x5b\xb5\xf6\x8d\xfb\xc9\x36\x8c\x1e" 409 $ECHO -ne "\xa6\xc9\xb5\x95\xd8\x36\x28\x36\xee\xa9\xa2\x72\x66\x58\xf5\x90" 410 $ECHO -ne "\x02\x95\xee\xa8\xfc\x79\xfa\x6f\x66\xf6\x47\xd6\x4f\x10\x95\x86" 411 $ECHO -ne "\x54\x0d\xa0\x22\x26\x01\xbe\x63\xc5\xf1\xac\x36\x4a\xe1\x0f\x6b" 412 $ECHO -ne "\xe7\xba\x4f\x20\x17\xc0\xf9\x02\x5d\xc4\xc0\xaf\xf0\x1f\x88\x54" 413 $ECHO -ne "\xe4\x6e\xc0\xa2\xbb\x59\x6f\x82\x21\xbb\x50\x9c\x4e\x92\x83\x24" 414 $ECHO -ne "\x23\xf8\x28\x4c\x45\x79\x88\x71\x3b\x05\x79\x98\x4f\xa1\x00\x2d" 415 $ECHO -ne "\x6e\x68\x08\x46\x3b\xfb\xf0\x5c\x22\xf3\x42\x40\x7d\x5e\x67\x3f" 416 $ECHO -ne "\xdf\xff\x2e\x73\x0d\x31\xb5\xc0\x78\x4c\x0f\x85\x0f\xdb\xe6\x2b" 417 $ECHO -ne "\x86\x0f\xb3\x8f\x9d\x1a\xe6\xe2\xdb\x32\x68\xfb\x5a\x79\x0a\xf4" 418 $ECHO -ne "\x25\x28\x01\x39\xd2\x7c\x05\x7b\x0b\x18\xbb\x9c\x68\x31\x8d\xb0" 419 $ECHO -ne "\xfc\x69\x2d\x17\x2c\x33\x62\xa6\x24\x6f\x0e\xcc\xdc\xff\x7b\xdf" 420 $ECHO -ne "\x78\xd3\x88\x5c\x4a\xbd\xeb\x14\xda\xe0\x0e\xd3\xf3\x5b\xd2\xaa" 421 $ECHO -ne "\xd1\x64\x82\x42\x0c\xfe\x54\x90\x40\xeb\x75\x13\x63\x68\xb5\x52" 422 $ECHO -ne "\x0a\xd9\x3b\xc5\xd0\x14\xe1\xd2\x35\xab\x2b\x8b\xed\x21\xf3\xe1" 423 $ECHO -ne "\xcb\xed\xbc\x3e\x64\x81\x63\x5f\xaa\xf3\xb8\x05\x10\x29\xe1\x67" 424 $ECHO -ne "\xae\x0a\x16\xbb\x71\x05\x02\x46\xba\xef\x30\xda\xe7\x3a\x18\x4b" 425 $ECHO -ne "\xcb\x0e\x97\xd1\xe9\xf5\x7a\x73\xc1\x60\x91\xaf\x63\x4a\xc8\x57" 426 $ECHO -ne "\xa6\xb0\x09\xb4\x95\x98\x87\xa9\xc4\x5e\x04\xe7\xef\xbf\xe5\x8c" 427 $ECHO -ne "\x39\x8e\xe2\xdd\x9a\xc0\xbf\x37\x9c\x38\xa3\xad\xc6\x14\x86\x3f" 428 $ECHO -ne "\x7d\xc1\x9d\xb5\xbb\x68\x58\x4c\x14\x03\xf1\x36\xd4\xf2\xce\xb6" 429 $ECHO -ne "\xbc\x9d\xb3\x31\x55\x68\x0c\x5f\xd0\x30\xe2\x05\xae\x68\x4e\x11" 430 $ECHO -ne "\x5a\x28\x15\x68\x8f\xac\xa3\x1b\x89\xad\x48\x89\x08\x08\xa3\x3b" 431 $ECHO -ne "\x26\x5e\x32\x1d\x6d\x73\x2b\x20\x90\x08\x4a\x12\xb0\x1f\xf1\xa3" 432 $ECHO -ne "\x37\xf8\xec\x30\x21\x06\xf3\xbb\x3b\x46\xf9\xaa\xeb\x1a\x31\x33" 433 $ECHO -ne "\x2b\xa5\x87\x4d\x4d\xbc\x13\xda\xa9\xa0\x4c\xca\x0b\x46\xa6\x09" 434 $ECHO -ne "\x41\x73\xbb\x3f\x71\x9f\x6a\x88\x41\x02\x20\x3f\x54\x6d\x42\xc8" 435 $ECHO -ne "\x70\x6e\x64\xd0\x50\x88\x83\xc4\x33\x78\x6d\x04\xb6\x43\xed\x5e" 436 $ECHO -ne "\x72\x71\x6b\xd5\x65\x80\xcf\x66\x46\x29\x10\xdb\x79\xd1\xa9\x95" 437 $ECHO -ne "\xb7\x9d\xf4\xa9\x93\xb4\x5a\x00\xc6\xb2\xad\xbf\x7e\xaa\xe6\x8d" 438 $ECHO -ne "\x8c\xc0\x6b\xf5\xc2\xad\x00\xfb\x08\x63\xe2\xb5\xb1\xe0\x76\xac" 439 $ECHO -ne "\x0a\xe4\x72\xb5\x72\xbc\x24\x6b\xef\x62\x0f\xaa\xb9\x28\xd2\x3c" 440 $ECHO -ne "\xf6\x3e\x26\x20\x8b\xcc\xd2\x61\xcd\xd4\xc7\xed\x39\xa8\x39\x4e" 441 $ECHO -ne "\x7e\x05\x97\xeb\x29\x24\x3a\xb2\xc9\xbd\xad\xcf\xf0\x22\xbc\xdd" 442 $ECHO -ne "\xb8\x8c\x2e\x6a\xbf\x4f\x67\x2f\xfc\x07\xd0\x53\x0c\x54\x30\x35" 443 $ECHO -ne "\xf8\xf1\x76\x45\x26\x5a\x86\x11\x1e\xeb\x58\xc0\x2d\x6c\x3d\x87" 444 $ECHO -ne "\xa6\xca\x8e\x89\x4f\x75\x88\xf9\xb9\x9a\x99\x8b\x68\x22\xe2\x52" 445 $ECHO -ne "\x4d\x46\x8d\x44\x31\x2b\xc1\xb0\x19\xa7\x90\xfb\x95\xda\x19\x2f" 446 $ECHO -ne "\x6e\x0d\xe2\xc1\x85\xd0\x1f\x9b\xd3\xae\x33\xe3\x55\xa4\x77\xf2" 447 $ECHO -ne "\xf1\xd7\xa8\xf0\x57\x30\xc4\x3b\xe6\x55\x97\xf9\xe3\x89\x82\xda" 448 $ECHO -ne "\xae\x02\x45\xb1\x86\x8c\x84\x4c\xb2\xcf\x82\xdb\x4e\x04\x45\xcc" 449 $ECHO -ne "\x19\x53\x9e\x2f\x95\xa9\xc7\xa8\x08\x17\x61\xc1\x8c\x26\x7f\x9b" 450 $ECHO -ne "\x07\x8c\xe7\x77\x2d\x12\xd2\xcd\xc6\x97\xcf\x29\x3a\x1e\xac\x2b" 451 $ECHO -ne "\x69\xb9\xb4\x61\xee\xeb\xb3\xae\x60\x18\xa0\x3a\xe5\xc0\xb9\x58" 452 $ECHO -ne "\x38\x4d\x32\x57\x81\x89\x99\x29\x73\xdd\x47\x43\x2f\x1e\x39\xc6" 453 $ECHO -ne "\x06\xbf\x7f\x64\x9e\x91\xc3\x9f\x18\x1b\xba\xf8\xb5\x29\x5d\xe3" 454 $ECHO -ne "\x46\x7e\xb5\x1a\xfd\x9b\xb0\x1b\x85\x06\xc3\xc5\x09\xdb\x82\xd0" 455 $ECHO -ne "\xd1\xff\xe1\x0f\xeb\x37\x1d\xce\x65\x6d\x26\x55\xe0\x20\x00\xc4" 456 $ECHO -ne "\x36\x2f\xba\x86\x26\xc6\x7b\xa4\xe9\xb1\x41\x20\x04\x11\xeb\x24" 457 $ECHO -ne "\x3c\x72\xbf\xd3\xc5\xb3\xbd\xce\x14\x45\x2d\x50\x01\x00\x26\x39" 458 $ECHO -ne "\x3c\x85\x17\x0e\x42\x66\x8a\x1c\x94\xa8\x90\x02\xc4\x42\xd8\xd1" 459 $ECHO -ne "\xcc\x94\x7a\x25\xad\xfd\x8d\xa4\x0e\xe0\xcb\x92\x5e\x6f\x14\x2b" 460 $ECHO -ne "\x29\xbd\xc0\x81\x20\x3f\x0b\x2c\x7a\x2c\xe7\xba\x6d\x99\x14\xbe" 461 $ECHO -ne "\xd5\x39\xc8\x6f\x2e\xbd\x79\x59\x19\x75\xb6\xf5\x4f\x12\xf6\x8e" 462 $ECHO -ne "\x40\xa0\x00\x8b\x12\xe8\xfb\xb7\x27\xaa\xd3\x36\x0c\xfc\xe1\x40" 463 $ECHO -ne "\x01\xff\x8b\xb9\x22\x9c\x28\x48\x5f\xa5\xca\xf3\x80" 464 } 465 466 pbzip_4m_zeros() { 467 $ECHO -ne "\x42\x5a\x68\x31\x31\x41\x59\x26\x53\x59\x63\xe3\xec\xa2\x00\x06" 468 $ECHO -ne "\xe4\xc1\x00\xc0\x00\x02\x00\x00\x08\x20\x00\x30\xcc\x09\xaa\x69" 469 $ECHO -ne "\x94\xa1\x36\xa9\x28\x4f\x17\x72\x45\x38\x50\x90\x63\xe3\xec\xa2" 470 $ECHO -ne "\x42\x5a\x68\x31\x31\x41\x59\x26\x53\x59\x63\xe3\xec\xa2\x00\x06" 471 $ECHO -ne "\xe4\xc1\x00\xc0\x00\x02\x00\x00\x08\x20\x00\x30\xcc\x09\xaa\x69" 472 $ECHO -ne "\x94\xa1\x36\xa9\x28\x4f\x17\x72\x45\x38\x50\x90\x63\xe3\xec\xa2" 473 $ECHO -ne "\x42\x5a\x68\x31\x31\x41\x59\x26\x53\x59\x63\xe3\xec\xa2\x00\x06" 474 $ECHO -ne "\xe4\xc1\x00\xc0\x00\x02\x00\x00\x08\x20\x00\x30\xcc\x09\xaa\x69" 475 $ECHO -ne "\x94\xa1\x36\xa9\x28\x4f\x17\x72\x45\x38\x50\x90\x63\xe3\xec\xa2" 476 $ECHO -ne "\x42\x5a\x68\x31\x31\x41\x59\x26\x53\x59\x63\xe3\xec\xa2\x00\x06" 477 $ECHO -ne "\xe4\xc1\x00\xc0\x00\x02\x00\x00\x08\x20\x00\x30\xcc\x09\xaa\x69" 478 $ECHO -ne "\x94\xa1\x36\xa9\x28\x4f\x17\x72\x45\x38\x50\x90\x63\xe3\xec\xa2" 479 $ECHO -ne "\x42\x5a\x68\x31\x31\x41\x59\x26\x53\x59\xc9\xb5\x21\xef\x00\x04" 480 $ECHO -ne "\x8d\x40\x20\xc0\x00\x01\x00\x00\x08\x20\x00\x30\xcc\x05\x29\xa6" 481 $ECHO -ne "\x4a\x11\xb1\x4a\x11\xe2\xee\x48\xa7\x0a\x12\x19\x36\xa4\x3d\xe0" 33 482 } 34 483 … … 41 490 check() { 42 491 eval $2 >t_actual 2>&1 43 if echo-ne "$expected" | cmp - t_actual; then44 echo " $1: PASS"492 if $ECHO -ne "$expected" | cmp - t_actual; then 493 echo "PASS: $1" 45 494 else 46 echo "$1: FAIL" 495 echo "FAIL: $1" 496 FAILCOUNT=$((FAILCOUNT + 1)) 47 497 fi 48 498 } … … 76 526 # From old testsuite 77 527 expected="HELLO\n0\n" 78 prep; check "$unpack: stream unpack" "cat t1.$ext | ${bb}$unpack; echo $?"528 prep; check "$unpack: stream unpack" "cat t1.$ext | ${bb}$unpack; echo \$?" 79 529 80 530 expected="ok\n" … … 83 533 ) 84 534 rm -rf testdir 535 536 # This test is only for bunzip2 537 if test "${0##*/}" = "bunzip2.tests"; then 538 if test1_bz2 | ${bb}bunzip2 >/dev/null \ 539 && test "`test1_bz2 | ${bb}bunzip2 | md5sum`" = "61bbeee4be9c6f110a71447f584fda7b -" 540 then 541 echo "PASS: $unpack: test_bz2 file" 542 else 543 echo "FAIL: $unpack: test_bz2 file" 544 FAILCOUNT=$((FAILCOUNT + 1)) 545 fi 546 547 if pbzip_4m_zeros | ${bb}bunzip2 >/dev/null \ 548 && test "`pbzip_4m_zeros | ${bb}bunzip2 | md5sum`" = "b5cfa9d6c8febd618f91ac2843d50a1c -" 549 then 550 echo "PASS: $unpack: pbzip_4m_zeros file" 551 else 552 echo "FAIL: $unpack: pbzip_4m_zeros file" 553 FAILCOUNT=$((FAILCOUNT + 1)) 554 fi 555 fi 556 557 exit $((FAILCOUNT <= 255 ? FAILCOUNT : 255)) -
branches/2.2.9/mindi-busybox/testsuite/busybox.tests
r821 r2725 3 3 # Tests for busybox applet itself. 4 4 # Copyright 2005 by Rob Landley <rob@landley.net> 5 # Licensed under GPL v2, see file LICENSE for details.5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 . testing.sh7 . ./testing.sh 8 8 9 HELPDUMP=` busybox`9 HELPDUMP=`true | busybox 2>&1 | cat` 10 10 11 11 # We need to test under calling the binary under other names. 12 12 13 14 testing "busybox --help busybox" "busybox --help busybox" "$HELPDUMP\n\n" "" "" 13 optional FEATURE_VERBOSE_USAGE 14 testing "busybox --help busybox" "true | busybox --help busybox 2>&1 | cat" "$HELPDUMP\n\n" "" "" 15 SKIP= 15 16 16 17 ln -s `which busybox` busybox-suffix … … 27 28 testing "$i --help" "$i --help 2>&1" "$HELPDUMP\n\n" "" "" 28 29 29 optional CAT30 optional FEATURE_VERBOSE_USAGE CAT 30 31 testing "" "$i cat" "moo" "" "moo" 31 testing "$i --help cat" "$i --help cat 2>&1 | grep print s" \32 "Concatenate s FILE(s) and prints them to stdout.\n" "" ""33 optional ""32 testing "$i --help cat" "$i --help cat 2>&1 | grep print" \ 33 "Concatenate FILEs and print them to stdout\n" "" "" 34 SKIP= 34 35 35 36 testing "$i --help unknown" "$i --help unknown 2>&1" \ -
branches/2.2.9/mindi-busybox/testsuite/bzcat.tests
r1765 r2725 1 1 #!/bin/sh 2 3 FAILCOUNT=0 2 4 3 5 ext=bz2 … … 13 15 # Gzipped "HELLO\n" 14 16 #_________________________ vvv vvv vvv vvv - mtime 15 echo-ne "\x1f\x8b\x08\x00\x85\x1d\xef\x45\x02\x03\xf3\x70\xf5\xf1\xf1\xe7"16 echo-ne "\x02\x00\x6e\xd7\xac\xfd\x06\x00\x00\x00"17 $ECHO -ne "\x1f\x8b\x08\x00\x85\x1d\xef\x45\x02\x03\xf3\x70\xf5\xf1\xf1\xe7" 18 $ECHO -ne "\x02\x00\x6e\xd7\xac\xfd\x06\x00\x00\x00" 17 19 } 18 20 19 21 hello_bz2() { 20 22 # Bzipped "HELLO\n" 21 echo-ne "\x42\x5a\x68\x39\x31\x41\x59\x26\x53\x59\x5b\xb8\xe8\xa3\x00\x00"22 echo-ne "\x01\x44\x00\x00\x10\x02\x44\xa0\x00\x30\xcd\x00\xc3\x46\x29\x97"23 echo-ne "\x17\x72\x45\x38\x50\x90\x5b\xb8\xe8\xa3"23 $ECHO -ne "\x42\x5a\x68\x39\x31\x41\x59\x26\x53\x59\x5b\xb8\xe8\xa3\x00\x00" 24 $ECHO -ne "\x01\x44\x00\x00\x10\x02\x44\xa0\x00\x30\xcd\x00\xc3\x46\x29\x97" 25 $ECHO -ne "\x17\x72\x45\x38\x50\x90\x5b\xb8\xe8\xa3" 24 26 } 25 27 … … 32 34 check() { 33 35 eval $2 >t_actual 2>&1 34 if echo-ne "$expected" | cmp - t_actual; then35 echo " $1: PASS"36 if $ECHO -ne "$expected" | cmp - t_actual; then 37 echo "PASS: $1" 36 38 else 37 echo "$1: FAIL" 39 echo "FAIL: $1" 40 FAILCOUNT=$((FAILCOUNT + 1)) 38 41 fi 39 42 } … … 48 51 ) 49 52 rm -rf testdir 53 54 exit $((FAILCOUNT <= 255 ? FAILCOUNT : 255)) -
branches/2.2.9/mindi-busybox/testsuite/cp/cp-a-files-to-dir
r821 r2725 3 3 ln -s file2 link1 4 4 mkdir dir1 5 touch --date='Sat Jan 29 21:24:08 PST 2000' dir1/file3 5 # why??? 6 #TZ=UTC0 touch -d '2000-01-30 05:24:08' dir1/file3 6 7 mkdir there 7 8 busybox cp -a file1 file2 link1 dir1 there -
branches/2.2.9/mindi-busybox/testsuite/cp/cp-does-not-copy-unreadable-file
r821 r2725 2 2 chmod a-r foo 3 3 set +e 4 busybox cp foo bar 4 if test `id -u` = 0; then 5 # run as user with nonzero uid 6 setuidgid 1 busybox cp foo bar 7 else 8 busybox cp foo bar 9 fi 5 10 set -e 6 11 test ! -f bar -
branches/2.2.9/mindi-busybox/testsuite/cut/cut-cuts-a-field
r821 r2725 1 test $( echo-e "f1\tf2\tf3" | busybox cut -f 2) = f21 test $($ECHO -e "f1\tf2\tf3" | busybox cut -f 2) = f2 -
branches/2.2.9/mindi-busybox/testsuite/date/date-R-works
r821 r2725 1 test x"`date -R`" = x"`busybox date -R`" 1 dt1="`date -R`" 2 # Wait for the start of next second 3 dt="$dt1" 4 while test x"$dt" = x"$dt1"; do 5 dt="`date -R`" 6 done 2 7 8 test x"$dt" = x"`busybox date -R`" -
branches/2.2.9/mindi-busybox/testsuite/date/date-format-works
r821 r2725 1 test x"`date +%d/%m/%y`" = x"`busybox date +%d/%m/%y`" 1 # TODO: gnu date doesn't accept '2000.11.22-11:22:33' format, 2 # but accepts '2000-11-22 11:22:33'. We must follow. 3 test x"01/01/99" = x"`busybox date -d 1999.01.01-11:22:33 '+%d/%m/%y'`" 4 test x"22/11/00" = x"`busybox date -d 2000.11.22-11:22:33 '+%d/%m/%y'`" -
branches/2.2.9/mindi-busybox/testsuite/date/date-u-works
r821 r2725 1 test x"`date -u`" = x"`busybox date -u`" 2 1 test x"Sat Jan 1 11:22:33 UTC 2000" = x"`TZ=CET-1CEST-2 busybox date -u -d 2000.01.01-11:22:33`" -
branches/2.2.9/mindi-busybox/testsuite/date/date-works
r821 r2725 1 test x"`date`" = x"`busybox date`" 1 dt=`busybox date` 2 # Expected format: Fri Apr 25 03:47:55 CEST 2008 3 dt=`echo "$dt" | sed 's/^[^ ][^ ][^ ] [^ ][^ ][^ ] [ 0123][0-9] [012][0-9]:[0-5][0-9]:[0-6][0-9] [A-Z][A-Z]* [012][0-9][0-9][0-9]$/OK/'` 4 test x"$dt" = x"OK" 2 5 6 dt=`busybox date -d 1:2` 7 dt=`echo "$dt" | cut -b12-19` 8 test x"$dt" = x"01:02:00" 9 10 dt=`busybox date -d 1:2:3` 11 dt=`echo "$dt" | cut -b12-19` 12 test x"$dt" = x"01:02:03" 13 14 dt=`busybox date -d 1.2-3:4` 15 dt=`echo "$dt" | cut -b5-19` 16 test x"$dt" = x"Jan 2 03:04:00" 17 18 dt=`busybox date -d 1.2-3:4:5` 19 dt=`echo "$dt" | cut -b5-19` 20 test x"$dt" = x"Jan 2 03:04:05" 21 22 dt=`busybox date -d 1999.1.2-3:4` 23 dt=`echo "$dt" | cut -b1-19` 24 test x"$dt" = x"Sat Jan 2 03:04:00" 25 26 dt=`busybox date -d 1999.1.2-3:4:5` 27 dt=`echo "$dt" | cut -b1-19` 28 test x"$dt" = x"Sat Jan 2 03:04:05" 29 30 dt=`busybox date -d '1999-1-2 3:4:5'` 31 dt=`echo "$dt" | cut -b1-19` 32 test x"$dt" = x"Sat Jan 2 03:04:05" 33 34 dt=`busybox date -d 01231133` 35 dt=`echo "$dt" | cut -b5-19` 36 test x"$dt" = x"Jan 23 11:33:00" 37 38 dt=`busybox date -d 200001231133` 39 dt=`echo "$dt" | cut -b1-19` 40 test x"$dt" = x"Sun Jan 23 11:33:00" 41 42 dt=`busybox date -d 200001231133.30` 43 dt=`echo "$dt" | cut -b1-19` 44 test x"$dt" = x"Sun Jan 23 11:33:30" -
branches/2.2.9/mindi-busybox/testsuite/dirname/dirname-works
r821 r2725 1 1 test x$(dirname $(pwd)) = x$(busybox dirname $(pwd)) 2 -
branches/2.2.9/mindi-busybox/testsuite/du/du-h-works
r821 r2725 1 [ -n "$d" ] || d=.. 2 du -h "$d" > logfile.gnu 3 busybox du -h "$d" > logfile.bb 4 cmp logfile.gnu logfile.bb 1 # FEATURE: CONFIG_FEATURE_HUMAN_READABLE 2 3 dd if=/dev/zero of=file bs=1M count=1 2>/dev/null 4 test x"`busybox du -h file`" = x"1.0M file" -
branches/2.2.9/mindi-busybox/testsuite/du/du-k-works
r821 r2725 1 [ -n "$d" ] || d=.. 2 du -k "$d" > logfile.gnu 3 busybox du -k "$d" > logfile.bb 4 cmp logfile.gnu logfile.bb 1 mkdir du.testdir 2 cd du.testdir 3 dd if=/dev/zero of=file1 bs=1k count=64 2>/dev/null 4 dd if=/dev/zero of=file2 bs=1k count=16 2>/dev/null 5 test x"`busybox du -k .`" = x"80 ." \ 6 -o x"`busybox du -k .`" = x"88 ." -
branches/2.2.9/mindi-busybox/testsuite/du/du-l-works
r821 r2725 1 [ -n "$d" ] || d=.. 2 du -l "$d" > logfile.gnu 3 busybox du -l "$d" > logfile.bb 4 cmp logfile.gnu logfile.bb 1 # FEATURE: CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K 2 3 mkdir du.testdir 4 cd du.testdir 5 dd if=/dev/zero of=file1 bs=1k count=64 2>/dev/null 6 ln file1 file1.1 7 dd if=/dev/zero of=file2 bs=1k count=16 2>/dev/null 8 test x"`busybox du -l .`" = x"144 ." \ 9 -o x"`busybox du -l .`" = x"148 ." \ 10 -o x"`busybox du -l .`" = x"152 ." \ 11 -o x"`busybox du -l .`" = x"156 ." -
branches/2.2.9/mindi-busybox/testsuite/du/du-m-works
r821 r2725 1 [ -n "$d" ] || d=.. 2 du -m "$d" > logfile.gnu 3 busybox du -m "$d" > logfile.bb 4 cmp logfile.gnu logfile.bb 1 # FEATURE: CONFIG_FEATURE_HUMAN_READABLE 2 3 dd if=/dev/zero of=file bs=1M count=1 2>/dev/null 4 test x"`busybox du -m .`" = x"1 ." -
branches/2.2.9/mindi-busybox/testsuite/du/du-s-works
r821 r2725 1 [ -n "$d" ] || d=.. 1 # FEATURE: CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K 2 3 d=/bin 2 4 du -s "$d" > logfile.gnu 3 5 busybox du -s "$d" > logfile.bb 4 cmp logfile.gnu logfile.bb 6 cmp logfile.gnu logfile.bb && exit 0 7 diff -u logfile.gnu logfile.bb 8 exit 1 -
branches/2.2.9/mindi-busybox/testsuite/du/du-works
r821 r2725 1 [ -n "$d" ] || d=.. 1 # FEATURE: CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K 2 3 d=/bin 2 4 du "$d" > logfile.gnu 3 5 busybox du "$d" > logfile.bb 4 cmp logfile.gnu logfile.bb 6 cmp logfile.gnu logfile.bb && exit 0 7 diff -u logfile.gnu logfile.bb 8 exit 1 -
branches/2.2.9/mindi-busybox/testsuite/echo/echo-does-not-print-newline
r821 r2725 1 # FEATURE: CONFIG_FEATURE_FANCY_ECHO 2 1 3 test `busybox echo -n word | wc -c` -eq 4 -
branches/2.2.9/mindi-busybox/testsuite/expand/expand-works-like-GNU
r1765 r2725 1 # FEATURE: CONFIG_UNEXPAND 2 1 3 rm -f foo bar 2 echo-e "\ty" | expand -t 3 ../../busybox > foo3 echo-e "\ty" | busybox unexpand -t 3 ../../busybox > bar4 $ECHO -e "\ty" | expand -t 3 ../../busybox > foo 5 $ECHO -e "\ty" | busybox unexpand -t 3 ../../busybox > bar 4 6 set +e 5 7 test ! -f foo -a -f bar … … 9 11 fi 10 12 rm -f foo bar 11 echo-e "\ty\tx" | expand -it 3 ../../busybox > foo12 echo-e "\ty\tx" | busybox unexpand -it 3 ../../busybox > bar13 $ECHO -e "\ty\tx" | expand -it 3 ../../busybox > foo 14 $ECHO -e "\ty\tx" | busybox unexpand -it 3 ../../busybox > bar 13 15 set +e 14 16 test ! -f foo -a -f bar -
branches/2.2.9/mindi-busybox/testsuite/expr/expr-works
r821 r2725 57 57 exit 1; 58 58 fi; 59 -
branches/2.2.9/mindi-busybox/testsuite/find/find-supports-minus-xdev
r821 r2725 1 # FEATURE: CONFIG_FEATURE_FIND_XDEV 2 1 3 busybox find . -xdev >/dev/null 2>&1 -
branches/2.2.9/mindi-busybox/testsuite/grep.tests
r1765 r2725 1 1 #!/bin/sh 2 2 3 # grep tests.4 3 # Copyright 2005 by Rob Landley <rob@landley.net> 5 # Licensed under GPL v2, see file LICENSE for details.4 # Licensed under GPLv2, see file LICENSE in this source tree. 6 5 7 6 # AUDIT: 8 7 9 . testing.sh8 . ./testing.sh 10 9 11 10 # testing "test name" "options" "expected result" "file input" "stdin" … … 28 27 "one\ntwo\nthree\nthree\nthree\n" "" 29 28 30 testing "grep (no newline at EOL)" "grep bug" "bug" "bug" "" 29 # GNU grep 2.5.3 outputs a new line character after the located string 30 # even if there is no new line character in the input 31 testing "grep (no newline at EOL)" "grep bug input" "bug\n" "bug" "" 31 32 32 # Note that this assumes actual is empty. 33 testing "grep input actual (two files)" "grep two input actual 2>/dev/null" \33 >empty 34 testing "grep two files" "grep two input empty 2>/dev/null" \ 34 35 "input:two\n" "one\ntwo\nthree\nthree\nthree\n" "" 36 rm empty 35 37 36 38 testing "grep - infile (specify stdin and file)" "grep two - input" \ … … 61 63 "(standard input):domatch\n2\n" "" "nomatch\ndomatch\nend\n" 62 64 63 # This doesn't match GNU behaviour (Binary file input matches) 64 # acts like GNU grep -a 65 testing "grep handles binary files" "grep foo input" "foo\n" "\0foo\n\n" "" 66 # This doesn't match GNU behaviour (Binary file (standard input) matches) 67 # acts like GNU grep -a 68 testing "grep handles binary stdin" "grep foo" "foo\n" "" "\0foo\n\n" 65 optional EXTRA_COMPAT 66 testing "grep handles NUL in files" "grep -a foo input" "\0foo\n" "\0foo\n\n" "" 67 testing "grep handles NUL on stdin" "grep -a foo" "\0foo\n" "" "\0foo\n\n" 69 68 70 69 testing "grep matches NUL" "grep . input > /dev/null 2>&1 ; echo \$?" \ 71 70 "0\n" "\0\n" "" 71 SKIP= 72 72 73 73 # -e regex 74 74 testing "grep handles multiple regexps" "grep -e one -e two input ; echo \$?" \ 75 75 "one\ntwo\n0\n" "one\ntwo\n" "" 76 testing "grep -F handles multiple expessions" "grep -F -e one -e two input ; echo \$?" \ 77 "one\ntwo\n0\n" "one\ntwo\n" "" 78 testing "grep -F handles -i" "grep -F -i foo input ; echo \$?" \ 79 "FOO\n0\n" "FOO\n" "" 80 81 # -f file/- 82 testing "grep can read regexps from stdin" "grep -f - input ; echo \$?" \ 83 "two\nthree\n0\n" "tw\ntwo\nthree\n" "tw.\nthr\n" 76 84 77 85 optional FEATURE_GREP_EGREP_ALIAS … … 81 89 testing "egrep is not case insensitive" \ 82 90 "egrep foo ; [ \$? -ne 0 ] && echo yes" "yes\n" "" "FOO\n" 91 testing "grep -E -o prints all matches" \ 92 "grep -E -o '([[:xdigit:]]{2}[:-]){5}[[:xdigit:]]{2}'" \ 93 "00:19:3E:00:AA:5E\n00:1D:60:3D:3A:FB\n00:22:43:49:FB:AA\n" \ 94 "" "00:19:3E:00:AA:5E 00:1D:60:3D:3A:FB 00:22:43:49:FB:AA\n" 95 SKIP= 96 97 testing "grep -o does not loop forever" \ 98 'grep -o "[^/]*$"' \ 99 "test\n" \ 100 "" "/var/test\n" 101 testing "grep -o does not loop forever on zero-length match" \ 102 'grep -o "" | head -n1' \ 103 "" \ 104 "" "test\n" 83 105 84 106 exit $FAILCOUNT -
branches/2.2.9/mindi-busybox/testsuite/gunzip.tests
r1765 r2725 1 1 #!/bin/sh 2 2 3 . bunzip2.tests3 . ./bunzip2.tests -
branches/2.2.9/mindi-busybox/testsuite/hostid/hostid-works
r821 r2725 1 test x$(hostid) = x$(busybox hostid) 2 1 h=x$(busybox hostid) 2 # Is $h a sequence of hex numbers? 3 x="${h//[0123456789abcdef]/x}" 4 x="${x//xxx/x}" 5 x="${x//xxx/x}" 6 x="${x//xxx/x}" 7 x="${x//xx/x}" 8 test x"$x" = x"x" -
branches/2.2.9/mindi-busybox/testsuite/hostname/hostname-d-works
r821 r2725 1 test x$(hostname -d) = x$(busybox hostname -d) 2 1 f=$(busybox hostname -f). 2 d=$(busybox hostname -d) 3 test x"${f#*.}" = x"$d${d:+.}" -
branches/2.2.9/mindi-busybox/testsuite/hostname/hostname-i-works
r821 r2725 1 test x"$SKIP_KNOWN_BUGS" != x"" && exit 2 3 # Observed bug: 4 # # ./busybox hostname -i 5 # 127.0.0.1 6 # # hostname -i 7 # 127.0.0.1 10.0.0.2 10.32.10.45 8 1 9 test x$(hostname -i) = x$(busybox hostname -i) 2 -
branches/2.2.9/mindi-busybox/testsuite/ln/ln-preserves-soft-links
r821 r2725 7 7 fi 8 8 exit 1; 9 -
branches/2.2.9/mindi-busybox/testsuite/ls/ls-1-works
r821 r2725 1 # FEATURE: CONFIG_FEATURE_LS_SORTFILES 2 1 3 [ -n "$d" ] || d=.. 2 ls -1 "$d" > logfile.gnu3 busybox ls -1 "$d" > logfile.bb4 cmplogfile.gnu logfile.bb4 LC_ALL=C ls -1 "$d" > logfile.gnu 5 LC_ALL=C busybox ls -1 "$d" > logfile.bb 6 diff -ubw logfile.gnu logfile.bb -
branches/2.2.9/mindi-busybox/testsuite/ls/ls-h-works
r821 r2725 1 # FEATURE: CONFIG_FEATURE_LS_SORTFILES CONFIG_FEATURE_HUMAN_READABLE 2 1 3 [ -n "$d" ] || d=.. 2 ls -h "$d" > logfile.gnu3 busybox ls -h "$d" > logfile.bb4 cmplogfile.gnu logfile.bb4 LC_ALL=C ls -h "$d" > logfile.gnu 5 LC_ALL=C busybox ls -h "$d" > logfile.bb 6 diff -ubw logfile.gnu logfile.bb -
branches/2.2.9/mindi-busybox/testsuite/ls/ls-l-works
r821 r2725 1 test x"$SKIP_KNOWN_BUGS" != x"" && exit 2 3 # busybox does not emit "total NNN" line 4 1 5 [ -n "$d" ] || d=.. 2 6 LC_ALL=C ls -l "$d" > logfile.gnu 3 busybox ls -l "$d" > logfile.bb4 diff - w logfile.gnu logfile.bb7 LC_ALL=C busybox ls -l "$d" > logfile.bb 8 diff -ubw logfile.gnu logfile.bb -
branches/2.2.9/mindi-busybox/testsuite/ls/ls-s-works
r821 r2725 1 test x"$SKIP_KNOWN_BUGS" != x"" && exit 2 3 # busybox does not emit "total NNN" line 4 1 5 [ -n "$d" ] || d=.. 2 6 LC_ALL=C ls -1s "$d" > logfile.gnu 3 busybox ls -1s "$d" > logfile.bb4 cmplogfile.gnu logfile.bb7 LC_ALL=C busybox ls -1s "$d" > logfile.bb 8 diff -ubw logfile.gnu logfile.bb -
branches/2.2.9/mindi-busybox/testsuite/md5sum/md5sum-verifies-non-binary-file
r821 r2725 1 # FEATURE: CONFIG_FEATURE_MD5_SHA1_SUM_CHECK 2 1 3 touch foo 2 4 md5sum foo > bar -
branches/2.2.9/mindi-busybox/testsuite/mount.testroot
r1765 r2725 3 3 # SUSv3 compliant mount and umount tests. 4 4 # Copyright 2005 by Rob Landley <rob@landley.net> 5 # Licensed under GPL v2, see file LICENSE for details.5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 7 if [ -z "$TESTDIR" ] -
branches/2.2.9/mindi-busybox/testsuite/mv/mv-files-to-dir
r821 r2725 3 3 ln -s file2 link1 4 4 mkdir dir1 5 touch --date='Sat Jan 29 21:24:08 PST 2000' dir1/file35 TZ=UTC0 touch -d '2000-01-30 05:24:08' dir1/file3 6 6 mkdir there 7 7 busybox mv file1 file2 link1 dir1 there -
branches/2.2.9/mindi-busybox/testsuite/mv/mv-refuses-mv-dir-to-subdir
r821 r2725 3 3 ln -s file2 link1 4 4 mkdir dir1 5 touch --date='Sat Jan 29 21:24:08 PST 2000' dir1/file35 TZ=UTC0 touch -d '2000-01-30 05:24:08' dir1/file3 6 6 mkdir there 7 7 busybox mv file1 file2 link1 dir1 there -
branches/2.2.9/mindi-busybox/testsuite/pidof.tests
r1765 r2725 2 2 3 3 # pidof tests. 4 # Copyright 2005 by Bernhard Fischer5 # Licensed under GPL v2, see file LICENSE for details.4 # Copyright 2005 by Bernhard Reutner-Fischer 5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 7 # AUDIT: 8 8 9 . testing.sh9 . ./testing.sh 10 10 11 11 # testing "test name" "options" "expected result" "file input" "stdin" … … 21 21 optional FEATURE_PIDOF_SINGLE 22 22 testing "pidof -s" "pidof -s init" "1\n" "" "" 23 SKIP= 23 24 24 optional FEATURE_PIDOF_OMIT 25 testing "pidof -o %PPID" "pidof -o %PPID pidof.tests | grep -o -w $$" "" "" "" 25 optional FEATURE_PIDOF_OMIT FEATURE_PIDOF_SINGLE 26 # This test fails now because process name matching logic has changed, 27 # but new logic is not "wrong" either... see find_pid_by_name.c comments 28 #testing "pidof -o %PPID" "pidof -o %PPID pidof.tests | grep -o -w $$" "" "" "" 26 29 testing "pidof -o %PPID NOP" "pidof -o %PPID -s init" "1\n" "" "" 27 30 testing "pidof -o init" "pidof -o 1 init | grep -o -w 1" "" "" "" 31 SKIP= 28 32 29 33 exit $FAILCOUNT -
branches/2.2.9/mindi-busybox/testsuite/readlink.tests
r1765 r2725 3 3 # Readlink tests. 4 4 # Copyright 2006 by Natanael Copa <n@tanael.org> 5 # Licensed under GPL v2, see file LICENSE for details.5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 . testing.sh7 . ./testing.sh 8 8 9 9 TESTDIR=readlink_testdir … … 31 31 rm -r "$TESTLINK" "$TESTDIR" 32 32 33 exit $((FAILCOUNT <= 255 ? FAILCOUNT : 255)) -
branches/2.2.9/mindi-busybox/testsuite/runtest
r1765 r2725 1 1 #!/bin/sh 2 # Usage: 3 # runtest [applet1] [applet2...] 2 4 3 [ -n "$srcdir" ] || srcdir=$(pwd) 4 [ -n "$bindir" ] || bindir=$(dirname $(pwd)) 5 PATH=$bindir:$PATH 5 . ./testing.sh 6 6 7 # Run old-style test. 7 total_failed=0 8 8 9 # Run one old-style test. 10 # Tests are stored in applet/testcase shell scripts. 11 # They are run using "sh -x -e applet/testcase". 12 # Option -e will make testcase stop on the first failed command. 9 13 run_applet_testcase() 10 14 { 11 local applet= $112 local testcase= $215 local applet="$1" 16 local testcase="$2" 13 17 14 18 local status=0 15 local RES= 19 local uc_applet=$(echo "$applet" | tr a-z A-Z) 20 local testname="$testcase" 16 21 17 local uc_applet=$(echo $applet | tr a-z A-Z) 18 local testname=$(basename $testcase) 19 20 if grep -q "^# CONFIG_${uc_applet} is not set$" $bindir/.config; then 21 echo UNTESTED: $testname 22 testname="${testname##*/}" # take basename 23 if grep "^# CONFIG_$uc_applet is not set$" "$bindir/.config" >/dev/null; then 24 echo "UNTESTED: $testname" 22 25 return 0 23 26 fi 24 27 25 if grep -q "^# FEATURE: " $testcase; then26 local feature= `sed -ne 's/^# FEATURE: //p' $testcase`28 if grep "^# FEATURE: " "$testcase" >/dev/null; then 29 local feature=$(sed -ne 's/^# FEATURE: //p' "$testcase") 27 30 28 if grep -q "^# ${feature} is not set$" $bindir/.config; then 29 echo UNTESTED: $testname 30 return 0 31 fi 31 for f in $feature; do 32 if grep "^# $f is not set$" "$bindir/.config" >/dev/null; then 33 echo "UNTESTED: $testname" 34 return 0 35 fi 36 done 32 37 fi 33 38 34 rm -rf tmp35 mkdir -p tmp36 pushd tmp > /dev/null39 rm -rf ".tmpdir.$applet" 40 mkdir -p ".tmpdir.$applet" 41 cd ".tmpdir.$applet" || return 1 37 42 38 d=$srcdir sh -x -e $testcase >.logfile.txt 2>&1 || status=$? 39 40 if [ $status -ne 0 ] ; then 41 echo FAIL: $testname 42 if [ $verbose -gt 0 ]; then 43 cat .logfile.txt 43 # echo "Running testcase $testcase" 44 d="$tsdir" \ 45 sh -x -e "$testcase" >"$testname.stdout.txt" 2>&1 || status=$? 46 if [ $status -ne 0 ]; then 47 echo "FAIL: $testname" 48 if [ x"$VERBOSE" != x ]; then 49 cat "$testname.stdout.txt" 44 50 fi 45 status=$?46 51 else 47 echo PASS: $testname 48 rm -f .logfile.txt 49 status=$? 52 echo "PASS: $testname" 50 53 fi 51 54 52 popd > /dev/null53 rm -rf tmp55 cd .. 56 rm -rf ".tmpdir.$applet" 54 57 55 58 return $status 56 59 } 57 60 58 run_applet_tests() 61 # Run all old-style tests for given applet 62 run_oldstyle_applet_tests() 59 63 { 60 local applet=$1 61 64 local applet="$1" 62 65 local status=0 63 66 64 for testcase in $srcdir/$applet/*; do 65 if [ "$testcase" = "$srcdir/$applet/CVS" ]; then 66 continue 67 fi 68 69 if run_applet_testcase $applet $testcase; then 70 : 71 else 72 status=1 73 fi 67 for testcase in "$tsdir/$applet"/*; do 68 # switch on basename of $testcase 69 case "${testcase##*/}" in 70 .*) continue ;; # .svn, .git etc 71 *~) continue ;; # backup files 72 "CVS") continue ;; 73 \#*) continue ;; # CVS merge residues 74 *.mine) continue ;; # svn-produced junk 75 *.r[0-9]*) continue ;; # svn-produced junk 76 esac 77 run_applet_testcase "$applet" "$testcase" || status=1 78 total_failed=$((total_failed + status)) 74 79 done 75 76 80 return $status 77 81 } 78 82 79 83 80 status=0 81 verbose=0 84 85 lcwd=$(pwd) 86 [ x"$tsdir" != x"" ] || tsdir="$lcwd" 87 [ x"$bindir" != x"" ] || bindir="${lcwd%/*}" # one directory up from $lcwd 88 PATH="$bindir:$PATH" 89 export bindir # some tests need to look at $bindir/.config 90 91 if [ x"$VERBOSE" = x ]; then 92 export VERBOSE= 93 fi 82 94 83 95 if [ x"$1" = x"-v" ]; then 84 verbose=1 85 export VERBOSE=$verbose 96 export VERBOSE=1 86 97 shift 87 98 fi 88 99 100 implemented=$( 101 printf "busybox " # always implemented 102 "$bindir/busybox" 2>&1 | 103 while read line; do 104 if [ x"$line" = x"Currently defined functions:" ]; then 105 xargs | sed 's/,//g' 106 break 107 fi 108 done 109 ) 110 111 applets="$implemented" 89 112 if [ $# -ne 0 ]; then 90 applets=$(cd $srcdir ; for i in $@; do ls ${i}* ; done) 91 else 92 applets=$(ls $srcdir) 113 applets="$@" 93 114 fi 94 115 … … 96 117 97 118 LINKSDIR="$bindir/runtest-tempdir-links" 98 implemented=$($bindir/busybox 2>&1 | 99 while read line 100 do 101 if test x"$line" = x"Currently defined functions:" 102 then 103 xargs | sed 's/,//g' 104 break 105 fi 106 done 107 ) 119 120 # Comment this line out if you have put a different binary in $LINKSDIR 121 # (say, a "standard" tool's binary) in order to run tests against it: 108 122 rm -rf "$LINKSDIR" 2>/dev/null 109 mkdir "$LINKSDIR" 110 for i in $implemented 111 do 112 ln -s $bindir/busybox "$LINKSDIR"/$i 123 124 mkdir "$LINKSDIR" 2>/dev/null 125 for i in $implemented; do 126 # Note: if $LINKSDIR/applet exists, we do not overwrite it. 127 # Useful if one wants to run tests against a standard utility, 128 # not an applet. 129 ln -s "$bindir/busybox" "$LINKSDIR/$i" 2>/dev/null 113 130 done 114 131 115 132 # Set up option flags so tests can be selective. 133 export OPTIONFLAGS=:$( 134 sed -nr 's/^CONFIG_//p' "$bindir/.config" | 135 sed 's/=.*//' | xargs | sed 's/ /:/g' 136 ): 116 137 117 configfile=${bindir:-../../}/.config 118 export OPTIONFLAGS=:$(echo $(sed -nr 's/^CONFIG_(.*)=.*/\1/p' $configfile) | sed 's/ /:/g') 119 138 status=0 120 139 for applet in $applets; do 121 if [ "$applet" = "links" ]; then continue; fi 122 if [ "$applet" != "CVS" -a -d "$srcdir/$applet" ]; then 123 if run_applet_tests $applet; then 124 : 125 else 126 status=1 127 fi 140 # Any old-style tests for this applet? 141 if [ -d "$tsdir/$applet" ]; then 142 run_oldstyle_applet_tests "$applet" || status=1 128 143 fi 129 144 130 145 # Is this a new-style test? 131 applet=$(echo "$applet" | sed -n 's/\.tests$//p')132 if [ ${#applet} -ne 0 ]133 then134 if [ ! -h "$LINKSDIR/$applet" ] && [ "${applet:0:4}" != "all_" ]135 then136 echo "SKIPPED: $applet (not built)"137 continue146 if [ -f "$applet.tests" ]; then 147 if [ ! -e "$LINKSDIR/$applet" ]; then 148 # (avoiding bash'ism "${applet:0:4}") 149 if ! echo "$applet" | grep "^all_" >/dev/null; then 150 echo "SKIPPED: $applet (not built)" 151 continue 152 fi 138 153 fi 139 if PATH="$LINKSDIR":$srcdir:$bindir:$PATH \ 140 "${srcdir:-.}/$applet".tests 141 then 142 : 143 else 144 status=1 145 fi 154 # echo "Running test $tsdir/$applet.tests" 155 PATH="$LINKSDIR:$tsdir:$bindir:$PATH" \ 156 "$tsdir/$applet.tests" 157 rc=$? 158 total_failed=$((total_failed + rc)) 159 test $rc -ne 0 && status=1 146 160 fi 161 done 147 162 148 done 149 rm -rf "$LINKSDIR" 163 # Leaving the dir makes it somewhat easier to run failed test by hand 164 #rm -rf "$LINKSDIR" 165 166 if [ $status -ne 0 ] && [ x"$VERBOSE" = x ]; then 167 echo "$total_failed failure(s) detected; running with -v (verbose) will give more info" 168 fi 150 169 exit $status -
branches/2.2.9/mindi-busybox/testsuite/sed.tests
r1765 r2725 3 3 # SUSv3 compliant sed tests. 4 4 # Copyright 2005 by Rob Landley <rob@landley.net> 5 # Licensed under GPL v2, see file LICENSE for details.6 7 . testing.sh5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 7 . ./testing.sh 8 8 9 9 # testing "description" "arguments" "result" "infile" "stdin" … … 52 52 "" "foo\n" 53 53 testing "sed -n s//p" "sed -ne s/abc/def/p" "def\n" "" "abc\n" 54 test x"$SKIP_KNOWN_BUGS" = x"" && { 54 55 testing "sed s//g (exhaustive)" "sed -e 's/[[:space:]]*/,/g'" ",1,2,3,4,5,\n" \ 55 56 "" "12345\n" 57 } 56 58 testing "sed s arbitrary delimiter" "sed -e 's woo boing '" "boing\n" "" "woo\n" 57 59 testing "sed s chains" "sed -e s/foo/bar/ -e s/bar/baz/" "baz\n" "" "foo\n" 58 60 testing "sed s chains2" "sed -e s/foo/bar/ -e s/baz/nee/" "bar\n" "" "foo\n" 59 61 testing "sed s [delimiter]" "sed -e 's@[@]@@'" "onetwo" "" "one@two" 62 testing "sed s with \\t (GNU ext)" "sed 's/\t/ /'" "one two" "" "one\ttwo" 60 63 61 64 # branch … … 72 75 "1\n1\n1\nb\nb\nc\nc\n" "" "a\nb\nc\n" 73 76 77 test x"$SKIP_KNOWN_BUGS" = x"" && { 74 78 # Normal sed end-of-script doesn't print "c" because n flushed the pattern 75 79 # space. If n hits EOF, pattern space is empty when script ends. … … 77 81 testing "sed n (flushes pattern space, terminates early)" "sed -e 'n;p'" \ 78 82 "a\nb\nb\nc\n" "" "a\nb\nc\n" 79 # N does _not_ flush pattern space, therefore c is still in there @ script end. 80 testing "sed N (doesn't flush pattern space when terminating)" "sed -e 'N;p'" \ 83 } 84 # non-GNU sed: N does _not_ flush pattern space, therefore c is eaten @ script end 85 # GNU sed: N flushes pattern space, therefore c is printed too @ script end 86 testing "sed N (flushes pattern space (GNU behavior))" "sed -e 'N;p'" \ 81 87 "a\nb\na\nb\nc\n" "" "a\nb\nc\n" 88 89 testing "sed N test2" "sed ':a;N;s/\n/ /;ta'" \ 90 "a b c\n" "" "a\nb\nc\n" 91 92 testing "sed N test3" "sed 'N;s/\n/ /'" \ 93 "a b\nc\n" "" "a\nb\nc\n" 94 82 95 testing "sed address match newline" 'sed "/b/N;/b\\nc/i woo"' \ 83 96 "a\nwoo\nb\nc\nd\n" "" "a\nb\nc\nd\n" … … 99 112 100 113 # Multiple files, with varying newlines and NUL bytes 114 test x"$SKIP_KNOWN_BUGS" = x"" && { 101 115 testing "sed embedded NUL" "sed -e 's/woo/bang/'" "\0bang\0woo\0" "" \ 102 116 "\0woo\0woo\0" 117 } 103 118 testing "sed embedded NUL g" "sed -e 's/woo/bang/g'" "bang\0bang\0" "" \ 104 119 "woo\0woo\0" 105 echo -e "/woo/a he\0llo" > sed.commands 120 test x"$SKIP_KNOWN_BUGS" = x"" && { 121 $ECHO -e "/woo/a he\0llo" > sed.commands 106 122 testing "sed NUL in command" "sed -f sed.commands" "woo\nhe\0llo\n" "" "woo" 107 123 rm sed.commands 124 } 108 125 109 126 # sed has funky behavior with newlines at the end of file. Test lots of … … 120 137 testing "sed cat plus empty file" "sed -e 's/nohit//' input -" "one\ntwo" \ 121 138 "one\ntwo" "" 139 test x"$SKIP_KNOWN_BUGS" = x"" && { 122 140 testing "sed append autoinserts newline" "sed -e '/woot/a woo' -" \ 123 141 "woot\nwoo\n" "" "woot" 142 } 124 143 testing "sed insert doesn't autoinsert newline" "sed -e '/woot/i woo' -" \ 125 144 "woo\nwoot" "" "woot" … … 137 156 "sed -ne 's/woo/bang/p' input -" "a bang\nb bang" "a woo\nb woo" \ 138 157 "c no\nd no" 158 test x"$SKIP_KNOWN_BUGS" = x"" && { 139 159 testing "sed clusternewline" \ 140 160 "sed -e '/one/a 111' -e '/two/i 222' -e p input -" \ 141 161 "one\none\n111\n222\ntwo\ntwo" "one" "two" 162 } 142 163 testing "sed subst+write" \ 143 "sed -e 's/i/z/' -e 'woutputw' input -; echo-n X; cat outputw" \164 "sed -e 's/i/z/' -e 'woutputw' input -; $ECHO -n X; cat outputw" \ 144 165 "thzngy\nagaznXthzngy\nagazn" "thingy" "again" 145 166 rm outputw … … 163 184 #00000020 6f 75 72 |our| 164 185 # which looks buggy to me. 165 echo-ne "three\nfour" > input2186 $ECHO -ne "three\nfour" > input2 166 187 testing "sed match EOF inline" \ 167 188 "sed -e '"'$i ook'"' -i input input2 && cat input input2" \ … … 175 196 176 197 # Jump to nonexistent label 177 testing "sed nonexistent label" "sed -e 'b walrus' 2> /dev/null || echo yes" \ 198 test x"$SKIP_KNOWN_BUGS" = x"" && { 199 # Incompatibility: illegal jump is not detected if input is "" 200 # (that is, no lines at all). GNU sed 4.1.5 complains even in this case 201 testing "sed nonexistent label" "sed -e 'b walrus' 2>/dev/null || echo yes" \ 178 202 "yes\n" "" "" 203 } 179 204 180 205 testing "sed backref from empty s uses range regex" \ … … 201 226 # "" "12345" 202 227 228 # testing "description" "arguments" "result" "infile" "stdin" 229 230 testing "sed n command must reset 'substituted' bit" \ 231 "sed 's/1/x/;T;n;: next;s/3/y/;t quit;n;b next;: quit;q'" \ 232 "0\nx\n2\ny\n" "" "0\n1\n2\n3\n" 233 234 testing "sed d does not break n,m matching" \ 235 "sed -n '1d;1,3p'" \ 236 "second\nthird\n" "" "first\nsecond\nthird\nfourth\n" 237 238 testing "sed d does not break n,regex matching" \ 239 "sed -n '1d;1,/hir/p'" \ 240 "second\nthird\n" "" "first\nsecond\nthird\nfourth\n" 241 242 testing "sed d does not break n,regex matching #2" \ 243 "sed -n '1,5d;1,/hir/p'" \ 244 "second2\nthird2\n" "" \ 245 "first\nsecond\nthird\nfourth\n""first2\nsecond2\nthird2\nfourth2\n" 246 247 testing "sed 2d;2,1p (gnu compat)" \ 248 "sed -n '2d;2,1p'" \ 249 "third\n" "" \ 250 "first\nsecond\nthird\nfourth\n" 251 252 # Regex means: "match / at BOL or nothing, then one or more not-slashes". 253 # The bug was that second slash in /usr/lib was treated as "at BOL" too. 254 testing "sed beginning (^) matches only once" \ 255 "sed 's,\(^/\|\)[^/][^/]*,>\0<,g'" \ 256 ">/usr</>lib<\n" "" \ 257 "/usr/lib\n" 258 259 testing "sed c" \ 260 "sed 'crepl'" \ 261 "repl\nrepl\n" "" \ 262 "first\nsecond\n" 263 264 testing "sed nested {}s" \ 265 "sed '/asd/ { p; /s/ { s/s/c/ }; p; q }'" \ 266 "qwe\nasd\nacd\nacd\n" "" \ 267 "qwe\nasd\nzxc\n" 268 269 testing "sed a cmd ended by double backslash" \ 270 "sed -e '/| one /a \\ 271 | three \\\\' -e '/| one-/a \\ 272 | three-* \\\\'" \ 273 ' | one \\ 274 | three \\ 275 | two \\ 276 ' '' \ 277 ' | one \\ 278 | two \\ 279 ' 280 281 # first three lines are deleted; 4th line is matched and printed by "2,3" and by "4" ranges 282 testing "sed with N skipping lines past ranges on next cmds" \ 283 "sed -n '1{N;N;d};1p;2,3p;3p;4p'" \ 284 "4\n4\n" "" "1\n2\n3\n4\n" 285 286 testing "sed -i with address modifies all files, not only first" \ 287 "cp input input2; sed -i -e '1s/foo/bar/' input input2 && cat input input2; rm input2" \ 288 "bar\nbar\n" "foo\n" "" 289 290 291 # testing "description" "arguments" "result" "infile" "stdin" 292 203 293 exit $FAILCOUNT -
branches/2.2.9/mindi-busybox/testsuite/seq.tests
r821 r2725 3 3 # SUSv3 compliant seq tests. 4 4 # Copyright 2006 by Rob Landley <rob@landley.net> 5 # Licensed under GPL v2, see file LICENSE for details.5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 7 # AUDIT: Full SUSv3 coverage (except internationalization). 8 8 9 . testing.sh9 . ./testing.sh 10 10 11 11 # testing "test name" "options" "expected result" "file input" "stdin" … … 30 30 testing "seq count wrong way #1" "seq 4 -2 8" "" "" "" 31 31 testing "seq count wrong way #2" "seq 8 2 4" "" "" "" 32 testing "seq count by .3" "seq 3 .3 4" "3\n3.3\n3.6\n3.9\n" "" "" 33 testing "seq count by -.9" "seq .7 -.9 -2.2" "0.7\n-0.2\n-1.1\n-2\n" "" "" 34 testing "seq count by zero" "seq 4 0 8 | head -n 10" "" "" "" 32 testing "seq count by .3" "seq 3 .3 4" "3.0\n3.3\n3.6\n3.9\n" "" "" 33 testing "seq count by .30" "seq 3 .30 4" "3.00\n3.30\n3.60\n3.90\n" "" "" 34 testing "seq count by .30 to 4.000" "seq 3 .30 4.000" "3.00\n3.30\n3.60\n3.90\n" "" "" 35 testing "seq count by -.9" "seq .7 -.9 -2.2" "0.7\n-0.2\n-1.1\n-2.0\n" "" "" 36 testing "seq count by zero" "seq 4 0 8 | head -n 10" "4\n4\n4\n4\n4\n4\n4\n4\n4\n4\n" "" "" 37 38 testing "seq one argument with padding" "seq -w 003" "001\n002\n003\n" "" "" 39 testing "seq two arguments with padding" "seq -w 005 7" "005\n006\n007\n" "" "" 40 testing "seq count down by 3 with padding" "seq -w 8 -3 04" "08\n05\n" "" "" 41 # Looks like a bug in coreutils 6.10: it uses width one less than needed 42 # These tests contain the expected "fixed" output 43 testing "seq count by .3 with padding 1" "seq -w 09 .3 11" "09.0\n09.3\n09.6\n09.9\n10.2\n10.5\n10.8\n" "" "" 44 testing "seq count by .3 with padding 2" "seq -w 03 .3 0004" "0003.0\n0003.3\n0003.6\n0003.9\n" "" "" 35 45 36 46 exit $FAILCOUNT -
branches/2.2.9/mindi-busybox/testsuite/sort.tests
r1765 r2725 1 #!/bin/ bash1 #!/bin/sh 2 2 3 3 # SUSv3 compliant sort tests. 4 4 # Copyright 2005 by Rob Landley <rob@landley.net> 5 # Licensed under GPL v2, see file LICENSE for details.5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 . testing.sh7 . ./testing.sh 8 8 9 9 # The basic tests. These should work even with the small busybox. … … 28 28 " 29 29 30 # testing "description" "command(s)" "result" "infile" "stdin" 31 30 32 # Sorting with keys 31 33 … … 46 48 " "$data" "" 47 49 48 # Busybox is definitely doing this one wrong just now. FIXME 49 50 test x"$SKIP_KNOWN_BUGS" = x"" && { 51 # Busybox is definitely doing these wrong. FIXME 50 52 testing "sort key range with numeric option and global reverse" \ 51 53 "sort -k2,3n -r input" \ … … 57 59 " "$data" "" 58 60 59 #60 61 61 testing "sort key range with multiple options" "sort -k2,3rn input" \ 62 62 "7 3 42 soup … … 66 66 egg 1 2 papyrus 67 67 " "$data" "" 68 } 68 69 69 70 testing "sort key range with two -k options" "sort -k 2,2n -k 1,1r input" "\ … … 108 109 " "" 109 110 111 testing "sort -z outputs NUL terminated lines" "sort -z input" "\ 112 one\0three\0two\0\ 113 " "\ 114 one\0two\0three\0\ 115 " "" 116 110 117 testing "sort key doesn't strip leading blanks, disables fallback global sort" \ 111 118 "sort -n -k2 -t ' '" " a \n 1 \n 2 \n" "" " 2 \n 1 \n a \n" 112 119 120 testing "sort file in place" \ 121 "sort -o input input && cat input" "\ 122 111 123 222 124 " "\ 125 222 126 111 127 " "" 128 129 # testing "description" "command(s)" "result" "infile" "stdin" 130 113 131 exit $FAILCOUNT -
branches/2.2.9/mindi-busybox/testsuite/sum.tests
r1765 r2725 2 2 3 3 # unit test for sum. 4 # Copyright 2007 by Bernhard Fischer5 # Licensed under GPL v2 or later, see file LICENSE for details.4 # Copyright 2007 by Bernhard Reutner-Fischer 5 # Licensed under GPLv2 or later, see file LICENSE in this source tree. 6 6 7 7 # AUDIT: Unit tests for sum 8 8 9 . testing.sh9 . ./testing.sh 10 10 11 11 # testing "test name" "options" "expected result" "file input" "stdin" -
branches/2.2.9/mindi-busybox/testsuite/tail/tail-n-works
r821 r2725 1 [ -n "$d" ] || d=.. 2 tail -n 2 "$d/README" > logfile.gnu 3 busybox tail -n 2 "$d/README"> logfile.bb4 cmp logfile. gnulogfile.bb1 $ECHO -ne "abc\ndef\n123\n" >input 2 $ECHO -ne "def\n123\n" >logfile.ok 3 busybox tail -n 2 input > logfile.bb 4 cmp logfile.ok logfile.bb -
branches/2.2.9/mindi-busybox/testsuite/tail/tail-works
r821 r2725 1 [ -n "$d" ] || d=.. 2 tail -n 2 "$d/README" > logfile.gnu 3 busybox tail -n 2 "$d/README" > logfile.bb 4 cmp logfile.gnu logfile.bb 1 # FEATURE: CONFIG_INCLUDE_SUSv2 2 3 $ECHO -ne "abc\ndef\n123\n" >input 4 $ECHO -ne "def\n123\n" >logfile.ok 5 busybox tail -2 input > logfile.bb 6 cmp logfile.ok logfile.bb -
branches/2.2.9/mindi-busybox/testsuite/tar/tar-extracts-multiple-files
r821 r2725 1 1 touch foo bar 2 busyboxtar cf foo.tar foo bar2 tar cf foo.tar foo bar 3 3 rm foo bar 4 4 busybox tar -xf foo.tar -
branches/2.2.9/mindi-busybox/testsuite/tar/tar-handles-cz-options
r821 r2725 1 1 # FEATURE: CONFIG_FEATURE_TAR_CREATE 2 # FEATURE: CONFIG_FEATURE_ TAR_GZIP2 # FEATURE: CONFIG_FEATURE_SEAMLESS_GZ 3 3 touch foo 4 4 busybox tar czf foo.tar.gz foo -
branches/2.2.9/mindi-busybox/testsuite/taskset.tests
r1765 r2725 1 1 #!/bin/sh 2 # Copyright 2006 Bernhard Reutner-Fischer 3 # Licensed under GPLv2 or later, see file LICENSE in this source tree. 2 4 3 # Copyright 2006 Bernhard Fischer 4 # Licensed under GPL v2 or later, see file LICENSE for details. 5 6 . testing.sh 5 . ./testing.sh 7 6 a="taskset" 8 7 9 8 # testing "test name" "opts" "expected result" "file inp" "stdin" 10 testing "taskset (get from pid 1)" "$a -p 1 >/dev/null;echo \$?" "0\n" "" ""11 testing "taskset (invalid pid)" "$a -p 0 >/dev/null 2>&1;echo \$?" "1\n" "" ""9 testing "taskset (get from pid 1)" "$a -p 1 >/dev/null;echo \$?" "0\n" "" "" 10 testing "taskset (invalid pid)" "$a -p 0 >/dev/null 2>&1;echo \$?" "1\n" "" "" 12 11 testing "taskset (set_aff, needs CAP_SYS_NICE)" \ 13 "$a 0x1 $SHELL -c $a\ -p\ \$$\|grep\ \"current\ affinity\ mask:\ 1\" >/dev/null;echo \$?" \14 12 "$a 0x1 $SHELL -c '$a -p \$\$ | grep \"current affinity mask: 1\" >/dev/null'; echo \$?" \ 13 "0\n" "" "" 15 14 16 15 unset a -
branches/2.2.9/mindi-busybox/testsuite/testing.sh
r1765 r2725 1 # Simple test harness infrastructure ifor BusyBox1 # Simple test harness infrastructure for BusyBox 2 2 # 3 3 # Copyright 2005 by Rob Landley … … 5 5 # License is GPLv2, see LICENSE in the busybox tarball for full license text. 6 6 7 # This file defines two functions, "testing" and "optionflag" 7 # This file defines two functions, "testing" and "optional" 8 # and a couple more... 8 9 9 10 # The following environment variables may be set to enable optional behavior … … 11 12 # VERBOSE - Print the diff -u of each failed test case. 12 13 # DEBUG - Enable command tracing. 13 # SKIP - do not perform this test (this is set by "option flag")14 # SKIP - do not perform this test (this is set by "optional") 14 15 # 15 16 # The "testing" function takes five arguments: 16 # $1) Description to display when running command17 # $2) Command line arguments to command18 # $3) Expected result (on stdout)19 # $4) Data written to file "input"20 # $5) Data written to stdin17 # $1) Test description 18 # $2) Command(s) to run. May have pipes, redirects, etc 19 # $3) Expected result on stdout 20 # $4) Data to be written to file "input" 21 # $5) Data to be written to stdin 21 22 # 22 # The exit value of testing is the exit value of the commandit ran.23 # The exit value of testing is the exit value of $2 it ran. 23 24 # 24 25 # The environment variable "FAILCOUNT" contains a cumulative total of the … … 26 27 27 28 # The "optional" function is used to skip certain tests, ala: 28 # option flag CONFIG_FEATURE_THINGY29 # optional FEATURE_THINGY 29 30 # 30 31 # The "optional" function checks the environment variable "OPTIONFLAGS", … … 36 37 export SKIP= 37 38 39 # Helper for helpers. Oh my... 40 41 test x"$ECHO" != x"" || { 42 ECHO="echo" 43 test x"`echo -ne`" = x"" || { 44 # Compile and use a replacement 'echo' which understands -e -n 45 ECHO="$PWD/echo-ne" 46 test -x "$ECHO" || { 47 gcc -Os -o "$ECHO" ../scripts/echo.c || exit 1 48 } 49 } 50 export ECHO 51 } 52 38 53 # Helper functions 39 54 40 55 optional() 41 56 { 42 option=`echo "$OPTIONFLAGS" | egrep "(^|:)$1(:|\$)"` 43 # Not set? 44 if [ -z "$1" ] || [ -z "$OPTIONFLAGS" ] || [ ${#option} -ne 0 ] 45 then 46 SKIP="" 47 return 48 fi 49 SKIP=1 57 SKIP= 58 while test "$1"; do 59 if test x"${OPTIONFLAGS/*:$1:*/y}" != x"y"; then 60 SKIP=1 61 return 62 fi 63 shift 64 done 50 65 } 51 66 … … 55 70 { 56 71 NAME="$1" 57 [ - z "$1" ] && NAME=$272 [ -n "$1" ] || NAME="$2" 58 73 59 74 if [ $# -ne 5 ] 60 75 then 61 echo "Test $NAME has the wrong number of arguments ($# $*)" >&262 exit 76 echo "Test $NAME has wrong number of arguments: $# (must be 5)" >&2 77 exit 1 63 78 fi 64 79 65 [ - n "$DEBUG" ] &&set -x80 [ -z "$DEBUG" ] || set -x 66 81 67 82 if [ -n "$SKIP" ] … … 71 86 fi 72 87 73 echo -ne "$3" > expected 74 echo -ne "$4" > input 75 [ -z "$VERBOSE" ] || echo "echo '$5' | $2" 76 echo -ne "$5" | eval "$2" > actual 88 $ECHO -ne "$3" > expected 89 $ECHO -ne "$4" > input 90 [ -z "$VERBOSE" ] || echo "echo -ne '$4' >input" 91 [ -z "$VERBOSE" ] || echo "echo -ne '$5' | $2" 92 $ECHO -ne "$5" | eval "$2" > actual 77 93 RETVAL=$? 78 94 79 cmp expected actual >/dev/null 2>/dev/null 80 if [ $? -ne 0 ] 95 if cmp expected actual >/dev/null 2>/dev/null 81 96 then 82 FAILCOUNT=$[$FAILCOUNT+1] 97 echo "PASS: $NAME" 98 else 99 FAILCOUNT=$(($FAILCOUNT + 1)) 83 100 echo "FAIL: $NAME" 84 [ -n "$VERBOSE" ] && diff -u expected actual 85 else 86 echo "PASS: $NAME" 101 [ -z "$VERBOSE" ] || diff -u expected actual 87 102 fi 88 103 rm -f input expected actual 89 104 90 [ - n "$DEBUG" ] &&set +x105 [ -z "$DEBUG" ] || set +x 91 106 92 107 return $RETVAL … … 102 117 [ $# -lt 2 ] && return 103 118 104 echo-n .119 $ECHO -n . 105 120 106 121 dest=$1 … … 108 123 for i in "$@" 109 124 do 110 [ "${i:0:1}" == "/" ] || i=$(which $i) 125 #bashism: [ "${i:0:1}" == "/" ] || i=$(which $i) 126 i=$(which $i) # no-op for /bin/prog 111 127 [ -f "$dest/$i" ] && continue 112 128 if [ -e "$i" ] … … 136 152 # Copy utilities from command line arguments 137 153 138 echo-n "Setup chroot"154 $ECHO -n "Setup chroot" 139 155 mkchroot tmpdir4chroot $* 140 156 echo … … 152 168 rmdir tmpdir4chroot 153 169 } 154 -
branches/2.2.9/mindi-busybox/testsuite/tr/tr-d-alnum-works
r1765 r2725 1 # FEATURE: CONFIG_FEATURE_TR_CLASSES 2 1 3 echo testing | tr -d '[[:alnum:]]' > logfile.gnu 2 4 echo testing | busybox tr -d '[[:alnum:]]' > logfile.bb -
branches/2.2.9/mindi-busybox/testsuite/tr/tr-rejects-wrong-class
r1765 r2725 1 # FEATURE: CONFIG_FEATURE_TR_CLASSES 2 1 3 echo t12esting | tr -d '[[:alpha:]]' > logfile.gnu 2 4 echo t12esting | tr -d '[:alpha:]' >> logfile.gnu -
branches/2.2.9/mindi-busybox/testsuite/tr/tr-works
r1765 r2725 1 # FEATURE: CONFIG_FEATURE_TR_CLASSES 2 1 3 run_tr () 2 4 { 3 echo-n "echo '$1' | tr '$2' '$3': "5 $ECHO -n "echo '$1' | tr '$2' '$3': " 4 6 echo "$1" | $bb tr "$2" "$3" 5 7 echo -
branches/2.2.9/mindi-busybox/testsuite/uniq.tests
r1765 r2725 3 3 # SUSv3 compliant uniq tests. 4 4 # Copyright 2005 by Rob Landley <rob@landley.net> 5 # Licensed under GPL v2, see file LICENSE for details.5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 7 # AUDIT: Full SUSv3 coverage (except internationalization). 8 8 9 . testing.sh9 . ./testing.sh 10 10 11 11 # testing "test name" "options" "expected result" "file input" "stdin" … … 42 42 #-d dups only 43 43 #-u 44 #-w max chars 44 45 45 46 # Test various command line options … … 50 51 "1 one\n2 two\n3 three\n" "" \ 51 52 "one\ntwo\ntwo\nthree\nthree\nthree\n" 52 testing "uniq -d (dups only) 53 testing "uniq -d (dups only)" "uniq -d" "two\nthree\n" "" \ 53 54 "one\ntwo\ntwo\nthree\nthree\nthree\n" 54 55 … … 61 62 aa bb cc9 62 63 " 64 testing "uniq -w (compare max characters)" "uniq -w 2" \ 65 "cc1 66 " "" \ 67 "cc1 68 cc2 69 cc3 70 " 71 72 testing "uniq -s -w (skip fields and compare max chars)" \ 73 "uniq -s 2 -w 2" \ 74 "aaccaa 75 " "" \ 76 "aaccaa 77 aaccbb 78 bbccaa 79 " 63 80 64 81 # -d is "Suppress the writing fo lines that are not repeated in the input." -
branches/2.2.9/mindi-busybox/testsuite/unzip.tests
r821 r2725 3 3 # Tests for unzip. 4 4 # Copyright 2006 Rob Landley <rob@landley.net> 5 # Copyright 2006 Glenn McGrath <bug1@ihug.co.nz>6 # Licensed under GPL v2, see file LICENSE for details.5 # Copyright 2006 Glenn McGrath 6 # Licensed under GPLv2, see file LICENSE in this source tree. 7 7 8 . testing.sh8 . ./testing.sh 9 9 10 10 # testing "test name" "options" "expected result" "file input" "stdin" -
branches/2.2.9/mindi-busybox/testsuite/uptime/uptime-works
r821 r2725 1 1 busybox uptime 2 -
branches/2.2.9/mindi-busybox/testsuite/uuencode.tests
r1765 r2725 3 3 # unit test for uuencode to test functionality. 4 4 # Copyright 2006 by Erik Hovland <erik@hovland.org> 5 # Licensed under GPL v2, see file LICENSE for details.5 # Licensed under GPLv2, see file LICENSE in this source tree. 6 6 7 7 # AUDIT: Unit tests for uuencode 8 8 9 . testing.sh9 . ./testing.sh 10 10 11 11 # testing "test name" "options" "expected result" "file input" "stdin" … … 14 14 15 15 # Test setup of standard input 16 saved_umask=$(umask)17 16 umask 0 18 17 testing "uuencode sets standard input mode correctly" \ 19 18 "uuencode foo </dev/null | head -n 1 | grep -q 666 && echo yes" "yes\n" "" "" 20 umask $saved_umask19 umask 022 21 20 22 21 testing "uuencode correct encoding" "uuencode bb_uuenc_test.out" \ -
branches/2.2.9/mindi-busybox/testsuite/wget/wget--O-overrides--P
r821 r2725 1 test x"$SKIP_INTERNET_TESTS" != x"" && exit 2 1 3 mkdir foo 2 4 busybox wget -q -O index.html -P foo http://www.google.com/ -
branches/2.2.9/mindi-busybox/testsuite/wget/wget-handles-empty-path
r821 r2725 1 test x"$SKIP_INTERNET_TESTS" != x"" && exit 2 1 3 busybox wget http://www.google.com -
branches/2.2.9/mindi-busybox/testsuite/wget/wget-retrieves-google-index
r821 r2725 1 test x"$SKIP_INTERNET_TESTS" != x"" && exit 2 1 3 busybox wget -q -O foo http://www.google.com/ 2 4 test -s foo -
branches/2.2.9/mindi-busybox/testsuite/wget/wget-supports--P
r821 r2725 1 test x"$SKIP_INTERNET_TESTS" != x"" && exit 2 1 3 mkdir foo 2 4 busybox wget -q -P foo http://www.google.com/
Note:
See TracChangeset
for help on using the changeset viewer.