Sponsored Content
Top Forums Shell Programming and Scripting test with two conditions (OR) Post 302262897 by Franklin52 on Saturday 29th of November 2008 01:55:56 PM
Old 11-29-2008
Use square brackets instead of parenthesis and place a space around the equal signs:
Code:
[[ $1 == 'this' || $2 == 'that' ]] && echo test1 says ok
[[ $1 == 'this' || $2 == 'that' ]] && echo test2 says ok
[[ $1 = 'this' || $2 = 'that' ]] && echo test3 says ok
[[ $1 == 'this' || $2 == 'that' ]] && echo test4 says ok

 

6 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Test on string containing spacewhile test 1 -eq 1 do read a $a if test $a = quitC then break fi d

This is the code: while test 1 -eq 1 do read a $a if test $a = stop then break fi done I read a command on every loop an execute it. I check if the string equals the word stop to end the loop,but it say that I gave too many arguments to test. For example echo hello. Now the... (1 Reply)
Discussion started by: Max89
1 Replies

2. Shell Programming and Scripting

How to check weather a string is like test* or test* ot *test* in if condition

How to check weather a string is like test* or test* ot *test* in if condition (5 Replies)
Discussion started by: johnjerome
5 Replies

3. Shell Programming and Scripting

Prefixing test case methods with letter 'test'

Hi, I have a Python unit test cases source code file which contains more than a hundred test case methods. In that, some of the test case methods already have prefix 'test' where as some of them do not have. Now, I need to add the string 'test' (case-sensitive) as a prefix to those of the... (5 Replies)
Discussion started by: royalibrahim
5 Replies

4. Shell Programming and Scripting

Errors in if conditions with to many OR conditions

Hi ALL I have a script where in i need to check for several values in if conditons but when i execute the script it throws error such as "TOO MANY ARGUMENTS" if then msg="BM VAR Issue :: bmaRequestVAR=$bmaRequestVAR , nltBMVAR=$nltBMVAR , bmaResponseVAR=$bmaResponseVAR ,... (10 Replies)
Discussion started by: nikhil jain
10 Replies

5. Shell Programming and Scripting

Shc : trying to test functionality "test" compiling but can not execute

I am testing shc to see if it would help with my need. Im at a point where Im trying to compile and test the "test.ksh" file that comes in the tar ball : shc-3.8.9> shc -v -r -f test.ksh shc shll=ksh shc =-c shc =exec '%s' "$@" shc = shc opts= shc: cc test.ksh.x.c -o test.ksh.x... (7 Replies)
Discussion started by: popeye
7 Replies

6. Shell Programming and Scripting

Shell test conditions

Are these shell test conditions in any man pages? I do not see them in bash or ksh man pages. The tests below are test conditions provided by the shell: -b file = True if the file exists and is block special file. -c file = True if the file exists and is character special file. -d file... (3 Replies)
Discussion started by: cokedude
3 Replies
IO::Async::Test(3pm)					User Contributed Perl Documentation				      IO::Async::Test(3pm)

NAME
"IO::Async::Test" - utility functions for use in test scripts SYNOPSIS
use Test::More tests => 1; use IO::Async::Test; use IO::Async::Loop; my $loop = IO::Async::Loop->new; testing_loop( $loop ); my $result; $loop->do_something( some => args, on_done => sub { $result = the_outcome; } ); wait_for { defined $result }; is( $result, what_we_expected, 'The event happened' ); ... my $buffer = ""; my $handle = IO::Handle-> ... wait_for_stream { length $buffer >= 10 } $handle => $buffer; is( substr( $buffer, 0, 10, "" ), "0123456789", 'Buffer was correct' ); DESCRIPTION
This module provides utility functions that may be useful when writing test scripts for code which uses "IO::Async" (as well as being used in the "IO::Async" test scripts themselves). Test scripts are often synchronous by nature; they are a linear sequence of actions to perform, interspersed with assertions which check for given conditions. This goes against the very nature of "IO::Async" which, being an asynchronisation framework, does not provide a linear stepped way of working. In order to write a test, the "wait_for" function provides a way of synchronising the code, so that a given condition is known to hold, which would typically signify that some event has occured, the outcome of which can now be tested using the usual testing primitives. Because the primary purpose of "IO::Async" is to provide IO operations on filehandles, a great many tests will likely be based around connected pipes or socket handles. The "wait_for_stream" function provides a convenient way to wait for some content to be written through such a connected stream. FUNCTIONS
testing_loop( $loop ) Set the "IO::Async::Loop" object which the "wait_for" function will loop on. wait_for( $condfunc ) Repeatedly call the "loop_once" method on the underlying loop (given to the "testing_loop" function), until the given condition function callback returns true. To guard against stalled scripts, if the loop indicates a timeout for 10 consequentive seconds, then an error is thrown. wait_for_stream( $condfunc, $handle, $buffer ) As "wait_for", but will also watch the given IO handle for readability, and whenever it is readable will read bytes in from it into the given buffer. The buffer is NOT initialised when the function is entered, in case data remains from a previous call. $buffer can also be a CODE reference, in which case it will be invoked being passed data read from the handle, whenever it is readable. AUTHOR
Paul Evans <leonerd@leonerd.org.uk> perl v5.14.2 2012-10-24 IO::Async::Test(3pm)
All times are GMT -4. The time now is 03:47 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy