Added test cases for utils_tcp

git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1730 f882894a-f735-0410-b71e-b25c423dba1c
This commit is contained in:
Matthias Eble 2007-06-03 15:00:34 +00:00
parent d059eeb294
commit 0ad5dc6189
4 changed files with 70 additions and 1 deletions

View file

@ -155,7 +155,7 @@ AC_SUBST(MATHLIBS)
dnl Check for libtap, to run perl-like tests
AC_CHECK_LIB(tap, plan_tests,
EXTRA_TEST="test_utils test_disk"
EXTRA_TEST="test_utils test_disk test_tcp"
AC_SUBST(EXTRA_TEST)
)

View file

@ -2,4 +2,5 @@ Makefile
Makefile.in
test_utils
test_disk
test_tcp
.deps

62
lib/tests/test_tcp.c Normal file
View file

@ -0,0 +1,62 @@
/******************************************************************************
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
$Id$
******************************************************************************/
#include "common.h"
#include "utils_tcp.h"
#include "tap.h"
int
main (int argc, char **argv)
{
int i;
char** server_expect;
char* status;
bool verbose;
bool exact_match;
int server_expect_count = 3;
plan_tests(8);
server_expect = malloc(sizeof(char*) * server_expect_count);
server_expect[0] = strdup("AA");
server_expect[1] = strdup("bb");
server_expect[2] = strdup("CC");
ok(np_expect_match("AA bb CC XX", server_expect, server_expect_count, false, true, false) == true,
"Test matching any string at the beginning (first expect string)");
ok(np_expect_match("bb AA CC XX", server_expect, server_expect_count, false, true, false) == true,
"Test matching any string at the beginning (second expect string)");
ok(np_expect_match("XX bb AA CC XX", server_expect, server_expect_count, false, true, false) == false,
"Test with strings not matching at the beginning");
ok(np_expect_match("XX CC XX", server_expect, server_expect_count, false, true, false) == false,
"Test matching any string");
ok(np_expect_match("XX", server_expect, server_expect_count, false, false, false) == false,
"Test not matching any string");
ok(np_expect_match("XX AA bb CC XX", server_expect, server_expect_count, true, false, false) == true,
"Test matching all strings");
ok(np_expect_match("XX bb CC XX", server_expect, server_expect_count, true, false, false) == false,
"Test not matching all strings");
ok(np_expect_match("XX XX", server_expect, server_expect_count, true, false, false) == false,
"Test not matching any string (testing all)");
return exit_status();
}

6
lib/tests/test_tcp.t Executable file
View file

@ -0,0 +1,6 @@
#!/usr/bin/perl
use Test::More;
if (! -e "./test_tcp") {
plan skip_all => "./test_tcp not compiled - please install tap library to test";
}
exec "./test_tcp";