rpms/dejagnu/devel dejagnu-1.4.4-testsuite.patch, NONE, 1.1 dejagnu.spec, 1.3, 1.4

Petr Machata (pmachata) fedora-extras-commits at redhat.com
Wed Oct 3 16:43:22 UTC 2007


Author: pmachata

Update of /cvs/pkgs/rpms/dejagnu/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv24244

Modified Files:
	dejagnu.spec 
Added Files:
	dejagnu-1.4.4-testsuite.patch 
Log Message:
- Clean up spec per merge review comments.
- Fix testsuite.
- Resolves: #225679


dejagnu-1.4.4-testsuite.patch:

--- NEW FILE dejagnu-1.4.4-testsuite.patch ---
diff -Burp dejagnu-1.4.4/testsuite/libdejagnu/unit.cc dejagnu-1.4.4-pm/testsuite/libdejagnu/unit.cc
--- dejagnu-1.4.4/testsuite/libdejagnu/unit.cc	2003-08-17 03:33:06.000000000 +0200
+++ dejagnu-1.4.4-pm/testsuite/libdejagnu/unit.cc	2007-10-03 18:31:03.000000000 +0200
@@ -7,6 +7,7 @@
 #include <fstream>
 #include <set>
 #include <dejagnu.h>
+#include <sstream>
 
 using namespace std;
 
@@ -49,12 +50,8 @@ main (int argc, char *argv[]) {
     // Replace the output buffer for cout, so we can examine it to
     // see what was displayed. Otherwise, there is no way we can test
     // the logging functions completely.
-    char bbuuff[5120];
-#ifdef __STDC_HOSTED__
-    cout.rdbuf()->pubsetbuf(bbuuff, 5120);
-#else
-    cout.rdbuf()->setbuf(bbuuff, 5120);
-#endif
+    stringstream stream;
+    streambuf * buf = cout.rdbuf(stream.rdbuf());
 
     testClass1.tname = "testType1";
     testClass1.tnum = 1;
@@ -65,53 +62,59 @@ main (int argc, char *argv[]) {
 
     // Test the pass message
     test.pass ("bogus pass message for testing");
+    cout.flush();
     outstate = os2;
-    if (strncmp(bbuuff, "\tPAS: bogus pass message", 22) == 0) {
+    if (strncmp(stream.str().c_str(), "\tPAS: bogus pass message", 22) == 0) {
 	runtest.pass ("Pass message");
     } else {
 	runtest.fail ("Pass message");
     }
+    stream.str("");
 
     // Test the fail message
     outstate = os1;
     test.fail ("bogus fail message for testing");
     cout.flush();
     outstate = os2;
-    if (strncmp(bbuuff, "\tFAI: bogus fail message", 22) == 0) {
+    if (strncmp(stream.str().c_str(), "\tFAI: bogus fail message", 22) == 0) {
 	runtest.pass ("Fail message");
     } else {
 	runtest.fail ("Fail message");
     }
+    stream.str("");
 
     // Test the untested message
     outstate = os1;
     test.untested ("bogus untested message for testing");
     cout.flush();
     outstate = os2;
-    if (strncmp(bbuuff, "\tUNT: bogus untested message", 21) == 0) {
+    if (strncmp(stream.str().c_str(), "\tUNT: bogus untested message", 21) == 0) {
 	runtest.pass ("Untested message");
     } else {
 	runtest.fail ("Untested message");
     }
+    stream.str("");
 
     // Test the unresolved message
     outstate = os1;
     test.unresolved ("bogus unresolved message for testing");
     cout.flush();
     outstate = os2;
-    if (strncmp(bbuuff, "\tUNR: bogus unresolved message", 21) == 0) {
+    if (strncmp(stream.str().c_str(), "\tUNR: bogus unresolved message", 21) == 0) {
 	runtest.pass ("Unresolved message");
     } else {
 	runtest.fail ("Unresolved message");
     }
+    stream.str("");
 
     // Make sure we got everything in the totals
     regcomp (&regex_pat, "\r\n\t#passed.*#failed.*#untested.*#unresolved", REG_NOSUB|REG_NEWLINE);
-    if (regexec (&regex_pat, bbuuff, 0, (regmatch_t *)0, 0)) {
+    if (regexec (&regex_pat, stream.str().c_str(), 0, (regmatch_t *)0, 0)) {
 	runtest.pass ("Totals message");
     } else {
 	runtest.fail ("Totals message");
     }
-}
-
+    stream.str("");
 
+    cout.rdbuf(buf);
+}


Index: dejagnu.spec
===================================================================
RCS file: /cvs/pkgs/rpms/dejagnu/devel/dejagnu.spec,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- dejagnu.spec	16 Aug 2007 11:24:11 -0000	1.3
+++ dejagnu.spec	3 Oct 2007 16:42:49 -0000	1.4
@@ -1,18 +1,19 @@
 Summary: A front end for testing other programs
 Name: dejagnu
 Version: 1.4.4
-Release: 8
+Release: 9
 Epoch: 1
 License: GPLv2+
-Source: ftp://ftp.gnu.org/gnu/dejagnu/dejagnu-1.4.4.tar.gz
+Source: ftp://ftp.gnu.org/gnu/dejagnu/dejagnu-%{version}.tar.gz
 Group: Development/Tools
 URL: http://www.gnu.org/software/dejagnu/
-Requires: tcl >= 8.0, expect >= 5.21
+Requires: expect
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
-BuildArchitectures: noarch
-BuildRequires: jadetex docbook-utils-pdf tetex-dvips
+BuildArch: noarch
+BuildRequires: expect
 Patch1: dejagnu-1.4.4-smp-1.patch
 Patch2: dejagnu-1.4.4-no-info.patch
+Patch3: dejagnu-1.4.4-testsuite.patch
 
 %description
 DejaGnu is an Expect/Tcl based framework for testing other programs.
@@ -23,18 +24,17 @@
 into software development).
 
 %prep
-%setup -q -n dejagnu-%{version}
+%setup -q
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
 
 %build
 %configure -v
-make
-mv doc/html doc/overview
 
 %check
 echo ============TESTING===============
-make -k check RUNTESTFLAGS="RUNTEST=`pwd`/runtest" || :
+make check RUNTESTFLAGS="RUNTEST=`pwd`/runtest"
 echo ============END TESTING===========
 
 %install
@@ -44,7 +44,7 @@
 
 pushd doc
 make docs
-make man1dir=%{buildroot}%{_mandir}/man1 install-man
+make DESTDIR=$RPM_BUILD_ROOT install-man
 popd
 
 %clean
@@ -58,8 +58,12 @@
 %{_includedir}/dejagnu.h
 %{_mandir}/*/*
 
- 
 %changelog
+* Wed Oct  3 2007 Petr Machata <pmachata at redhat.com> - 1:1.4.4-9
+- Clean up spec per merge review comments.
+- Fix testsuite.
+- Resolves: #225679
+
 * Thu Aug 16 2007 Petr Machata <pmachata at redhat.com> - 1:1.4.4-8
 - Fix licesing tag.
 




More information about the fedora-extras-commits mailing list