sorry it took so long, but here's the patch i intended to send 9 days ago
:-/

the stats look more plausible this time too:

---
 tests/ls.test | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)


On Tue, Apr 11, 2017 at 12:56 PM, enh <[email protected]> wrote:

>
>
> On Tue, Apr 11, 2017 at 12:14 PM, Rob Landley <[email protected]> wrote:
>
>> On 04/05/2017 12:28 PM, enh wrote:
>> >  tests/ls.test | 4 ++++
>> >  1 file changed, 4 insertions(+)
>>
>> This patch removes no lines, it just adds a new test. How does this make
>> it work without awk in a way that wasn't previously the case? (The
>> description doesn't match what the patch does?)
>>
>
> yeah, i fucked up trying to manage too many patches at once. those four
> lines should replace the four lines immediately below.
>
>
>> Also, minor quibble, they're called symlinks (symbolic links) not
>> softlinks. Kinda fixed in stone on linux because that's what the syscall
>> to make 'em is called (man 2 symlink).
>>
>
> (yeah, that was me only changing the part that _needed_ to change. except
> i screwed that up so it was no longer obvious.)
>
>
>> Also, I want a grep option that ignores whitespace differences like
>> patch -l does. Squash all runs of whitespace to one ascii 32 space
>> character, then compare. Alas I'd probably have to use a --longopt for
>> the name and I dislike those slightly more than I want this feature.
>>
>
> speaking of which: all the blkid tests fail if you run it on the desktop
> because you don't output trailing spaces. i'm not sure whether to "break"
> toybox blkid to just always output trailing spaces or make the test less
> readable to allow either output. (regular expression matches rather than
> just literal matches might help here.)
>
>
>> And if you want to be really cruel to this test:
>>
>> ln -s "three -> four" "one -> two"
>> lrwxrwxrwx 1 landley landley 13 Apr 11 12:39 one -> two -> three -> four
>>
>> Which is why ls -1b and readlink exist, but my -b needs upgrading? It's
>> wildcarding stuff out ala -q but that can cause collisions, and given
>> the other one escapes spaces what it really means by "nongraphic" is
>> escape anything that prevents the shell from seeing this as a single
>> argument, and I'm not entirely sure what that list is...
>>
>> $ mkdir sub
>> $ cd sub
>> $ touch "$(echo -e "$(X=0;while [ $X -lt 255 ];do X=$(($X+1));[ $X -eq
>> 47 ]&& continue;printf '\\x%02x' $X; done)")"
>> $ ls -b
>>
>> Answer: it's anything <= 32 and >= 128, which gets an octal escape,
>> except for \a\b\t\n\v\f\r and "\ ". And backslash is escaped with
>> another backslash.
>>
>> And the FUN part is that I should add the above to the test suite. Wow
>> that's ugly. Should use the octal not hex escapes though...
>>
>> (You want to know why I can't work through my todo list until it's
>> smaller? That's why. Working through my todo list makes it BIGGER.
>> Always has.)
>>
>
> everyone else's too. this is why we give in and have bug databases. anr/or
> XFAIL tests.
>
>
>> Except... looking in ls there's code to do this. Why isn't it
>> triggering... Huh, Izabera pointed out that ubuntu's ls defaults to -q
>> and so I made it do that, and -q trumps -b. Blah.
>>
>> Ok, fixed and my code is escaping \e which ubuntu's ls isn't. But both
>> printf and echo support \e so I think I'm right. :)
>>
>> Rob
>>
>
>
>
> --
> Elliott Hughes - http://who/enh - http://jessies.org/~enh/
> Android native code/tools questions? Mail me/drop by/add me as a reviewer.
>



-- 
Elliott Hughes - http://who/enh - http://jessies.org/~enh/
Android native code/tools questions? Mail me/drop by/add me as a reviewer.
From 1d27cc12283b4b3039beac0f763bae1da1e952fd Mon Sep 17 00:00:00 2001
From: Elliott Hughes <[email protected]>
Date: Fri, 14 Apr 2017 13:43:16 -0700
Subject: [PATCH] Make ls.test work without awk.

---
 tests/ls.test | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/tests/ls.test b/tests/ls.test
index b29c478..56f7403 100755
--- a/tests/ls.test
+++ b/tests/ls.test
@@ -33,8 +33,9 @@ testing "with -F" "$IN && ls -F; $OUT" "dir1/\ndir2/\nfile1.txt\nfile2.txt\n" ""
 testing "with -dk *" "$IN && ls -dk *; $OUT" "dir1\ndir2\nfile1.txt\nfile2.txt\n" "" ""
 
 ln -s file1.txt lstest/slink
-testing "softlink - long listing" "$IN && ls -l slink | awk '{ print \$NF }' ; $OUT" \
-          "file1.txt\n" "" ""
+testing "-l symlink" \
+    "$IN && ls -l slink | grep -q -- ' slink -> file1.txt' && echo ok ; $OUT" \
+    "ok\n" "" ""
 rm -f lstest/slink
 
 ln -s /dev/null/nosuchfile lstest/nosuchfile
-- 
2.12.2.762.g0e3151a226-goog

_______________________________________________
Toybox mailing list
[email protected]
http://lists.landley.net/listinfo.cgi/toybox-landley.net

Reply via email to