threads / discuss / 5937

cogito-0.16: t/test-lib.sh: Unportable test(1) construct

Subject: cogito-0.16: t/test-lib.sh: Unportable test(1) construct

## tl;dr

2 messages between Oct 16, 2006 and Oct 16, 2006.

replies: 1people: 2as markdown or json

Thomas Klausner· Oct 16, 2006, 01:05 UTC · lore
Hi!

As of version 0.16, cogito is using an unportable bash extension "==" for test(1) in t/test-lib.sh. This is not supported by most other shells or even test(1) from GNU coreutils. Please use "=" instead. A patch is attached.

Thanks,
 Thomas
$NetBSD: patch-aa,v 1.1 2006/10/16 00:44:15 wiz Exp $

--- t/test-lib.sh.orig 2005-11-27 16:26:16.000000000 +0000 +++ t/test-lib.sh

@@ -87,16 +87,16 @@ test_failure_ () {
 	say "FAIL $test_count: $1"
 	shift
 	echo "$@" | sed -e 's/^/	/'
-	test "$immediate" == "" || exit 1
+	test "$immediate" = "" || exit 1
 }
 
 
 test_debug () {
-	test "$debug" == "" || eval "$1"
+	test "$debug" = "" || eval "$1"
 }
 
 test_expect_failure () {
-	test "$#" == 2 ||
+	test "$#" = 2 ||
 	error "bug in the test script: not 2 parameters to test-expect-failure"
 	say >&3 "expecting failure: $2"
 	if eval >&3 2>&4 "$2"
@@ -108,7 +108,7 @@ test_expect_failure () {
 }
 
 test_expect_success () {
-	test "$#" == 2 ||
+	test "$#" = 2 ||
 	error "bug in the test script: not 2 parameters to test-expect-success"
 	say >&3 "expecting success: $2"
 	if eval >&3 2>&4 "$2"
Petr Baudis· Oct 16, 2006, 01:47 UTC · re: Thomas Klausner · lore

Re: cogito-0.16: t/test-lib.sh: Unportable test(1) construct

  Hi,

Dear diary, on Mon, Oct 16, 2006 at 03:05:20AM CEST, I got a letter where Thomas Klausner <tk@giga.or.at> said that...

> As of version 0.16, cogito is using an unportable bash extension
> "==" for test(1) in t/test-lib.sh. This is not supported by most
> other shells or even test(1) from GNU coreutils. Please use "="
> instead. A patch is attached.
  thanks, applied. Please generate -p1 patches in the future and sign
them off.
-- 
				Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
#!/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj
$/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1
lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)

← back to recent threads