Compare commits

..

3 commits

Author SHA1 Message Date
Fedora Release Engineering
9e2e16d045 dist-git conversion 2010-07-28 12:15:21 +00:00
Bill Nottingham
0818137754 Fix typo that causes a failure to update the common directory. (releng
#2781)
2009-11-26 01:33:52 +00:00
Jesse Keating
f783d9f338 Initialize branch F-8 for cppunit 2007-10-20 16:12:50 +00:00
11 changed files with 69 additions and 430 deletions

View file

@ -1 +0,0 @@
1

7
.gitignore vendored
View file

@ -1,6 +1 @@
cppunit-1.12.1.tar.gz
cppunit-1.12.1.tar.gz
cppunit-1.13.2.tar.gz
/cppunit-1.14.0.tar.gz
/cppunit-1.15.0.tar.gz
/cppunit-1.15.1.tar.gz
cppunit-1.12.0.tar.gz

146
changelog
View file

@ -1,146 +0,0 @@
* Mon Nov 21 2022 David Tardon <dtardon@redhat.com> - 1.15.1-8
- Convert license to SPDX
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.15.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 1.15.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.15.1-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.15.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.15.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Wed Dec 25 2019 David Tardon <dtardon@redhat.com> - 1.15.1-2
- try again
* Wed Dec 25 2019 David Tardon <dtardon@redhat.com> - 1.15.1-1
- new upstream release
* Sat Dec 21 2019 David Tardon <dtardon@redhat.com> - 1.15.0-1
- new upstream release
* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.0-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Thu Jun 28 2018 Rex Dieter <rdieter@fedoraproject.org> - 1.14.0-5
- use %%make_build %%make_install %%ldconfig_scriptlets
- -devel: tighten dep on main pkg with %%_isa
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.14.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Tue May 02 2017 David Tardon <dtardon@redhat.com> - 1.14.0-1
- new upstream release
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.13.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Sat Feb 13 2016 David Tardon <dtardon@redhat.com> - 1.13.2-2
- drop obsolete cppunit-config
* Sat Feb 13 2016 David Tardon <dtardon@redhat.com> - 1.13.2-1
- switch to new upstream
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.12.1-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat Apr 11 2015 David Tardon <dtardon@redhat.com> - 1.12.1-15
- rebuild for yet another C++ ABI break
* Fri Feb 20 2015 David Tardon <dtardon@redhat.com> - 1.12.1-14
- rebuild for C++ stdlib ABI change in gcc5
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Tue May 20 2014 David Tardon <dtardon@redhat.com> - 1.12.1-11
- rhbz#925193 add support for aarch64
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Wed Oct 05 2011 Caolán McNamara <caolanm@redhat.com> - 1.12.1-6
- add sf#2912630 fix for unused argument warnings
* Tue Jun 28 2011 Steven M. Parrish <smparrish@gmail.com> - 1.12.1-5
- Fix for bug 452340
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.12.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Thu Sep 18 2008 Patrice Dumas <pertusus@free.fr> 1.12.1-1
- Update to 1.12.1
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.12.0-5
- Autorebuild for GCC 4.3
* Mon Dec 17 2007 Patrice Dumas <pertusus@free.fr> 1.12.0-4
- remove libdir reference to cppunit-config, should fix multiarch conflict
(#340951)
- fix encoding and remove windows related files in examples
- keep timestamps
* Mon Jan 29 2007 Patrice Dumas <pertusus@free.fr> 1.12.0-3
- add rightly files to -devel (#224106)
- add necessary requires for -devel (#224106)
- ship examples
* Sun Sep 10 2006 Patrice Dumas <pertusus@free.fr> 1.12.0-2
- rebuild for FC6
* Wed Jul 5 2006 Patrice Dumas <pertusus@free.fr> 1.12.0-1
- update to 1.12
* Sun May 21 2006 Patrice Dumas <pertusus@free.fr> 1.11.6-1
- update to 1.11.6
* Wed Dec 21 2005 Patrice Dumas <pertusus@free.fr> 1.11.4-1
- update
* Mon Aug 15 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.11.0-2
- various cleanups
* Mon Jul 4 2005 Patrice Dumas <pertusus@free.fr> 1.11.0-1
- update using the fedora template
* Sat Apr 14 2001 Bastiaan Bakker <bastiaan.bakker@lifeline.nl>
- Initial release

View file

@ -1,32 +1,25 @@
%global apiversion 1.15
Name: cppunit
Version: 1.15.1
Release: %autorelease
Version: 1.12.0
Release: 3%{?dist}
Summary: C++ unit testing framework
# no license in files
License: LGPL-2.1-or-later
Url: https://www.freedesktop.org/wiki/Software/cppunit/
Source: https://dev-www.libreoffice.org/src/%{name}-%{version}.tar.gz
License: LGPL
Group: Development/Libraries
Url: http://cppunit.sourceforge.net/
Source: http://download.sf.net/cppunit/cppunit-%{version}.tar.gz
# Backport patch to run tests in deterministic order
# https://gerrit.libreoffice.org/c/cppunit/+/123963
Patch: run-tests-in-deterministic-order.patch
BuildRequires: doxygen
BuildRequires: gcc-c++
BuildRequires: graphviz
BuildRequires: make
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: doxygen, graphviz
%description
CppUnit is the C++ port of the famous JUnit framework for unit testing.
Test output is in XML for automatic testing and GUI based for supervised
tests.
Test output is in XML for automatic testing and GUI based for supervised tests.
%package devel
Summary: Libraries and headers for cppunit development
Requires: %{name}%{?_isa} = %{version}-%{release}
Group: Development/Libraries
Requires: pkgconfig, automake
Requires: %{name} = %{version}-%{release}
%description devel
This package contains the libraries and headers necessary for developing
@ -34,58 +27,86 @@ programs that use cppunit.
%package doc
Summary: HTML formatted API documention for cppunit
Group: Documentation
Requires: %{name} = %{version}-%{release}
%description doc
The cppunit-doc package contains HTML formatted API documention generated by
the popular doxygen documentation generation tool.
%prep
%autosetup -p1
%setup -q
%build
%configure --enable-doxygen --disable-static --disable-silent-rules --disable-werror
sed -i \
-e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \
-e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \
libtool
%make_build
%configure --enable-doxygen --disable-static
make %{?_smp_mflags}
%install
%make_install
rm %{buildroot}%{_libdir}/*.la
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
rm $RPM_BUILD_ROOT%{_libdir}/*.la
# remove double of doc
rm -rf %{buildroot}%{_datadir}/doc/cppunit %{buildroot}%{_datadir}/%{name}/html
rm -rf $RPM_BUILD_ROOT%{_datadir}/cppunit
# clean up examples
rm -rf __dist-examples __dist-examples-dir
cp -a examples __dist-examples
make -C __dist-examples distclean
rm -rf dist-examples dist-examples-dir
cp -a examples dist-examples
make -C dist-examples distclean
# Makefile.am files are left as documentation
find __dist-examples \( -name Makefile.in -o -name .gitignore -o -name '*.opt' -o -name '*.sln' -o -name '*.vcproj' \) -exec rm {} \;
mkdir __dist-examples-dir
mv __dist-examples __dist-examples-dir/examples
find dist-examples \( -name Makefile.in -o -name .cvsignore \) -exec rm {} \;
mkdir dist-examples-dir
mv dist-examples dist-examples-dir/examples
%clean
rm -rf $RPM_BUILD_ROOT
%ldconfig_scriptlets
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc AUTHORS NEWS README THANKS TODO BUGS doc/FAQ
%license COPYING
%defattr(-,root,root,-)
%doc AUTHORS COPYING NEWS README THANKS ChangeLog TODO BUGS doc/FAQ
%{_bindir}/DllPlugInTester
%{_libdir}/libcppunit-%{apiversion}.so.1
%{_libdir}/libcppunit-%{apiversion}.so.1.*
%{_libdir}/libcppunit*.so.*
%files devel
%defattr(-,root,root,-)
%{_bindir}/cppunit-config
%{_includedir}/cppunit
%{_libdir}/libcppunit.so
%{_datadir}/aclocal/cppunit.m4
%{_mandir}/man1/cppunit-config.1*
%{_libdir}/pkgconfig/cppunit.pc
%files doc
%license COPYING
%doc __dist-examples-dir/examples/
%doc doc/html
%defattr(-,root,root,-)
%doc dist-examples-dir/examples/
%doc doc/html/
%changelog
%autochangelog
* Mon Jan 29 2007 Patrice Dumas <pertusus@free.fr> 1.12.0-3
- add rightly files to -devel (#224106)
- add necessary requires for -devel (#224106)
- ship examples
* Sun Sep 10 2006 Patrice Dumas <pertusus@free.fr> 1.12.0-2
- rebuild for FC6
* Wed Jul 5 2006 Patrice Dumas <pertusus@free.fr> 1.12.0-1
- update to 1.12
* Sun May 21 2006 Patrice Dumas <pertusus@free.fr> 1.11.6-1
- update to 1.11.6
* Wed Dec 21 2005 Patrice Dumas <pertusus@free.fr> 1.11.4-1
- update
* Mon Aug 15 2005 Tom "spot" Callaway <tcallawa@redhat.com> 1.11.0-2
- various cleanups
* Mon Jul 4 2005 Patrice Dumas <pertusus@free.fr> 1.11.0-1
- update using the fedora template
* Sat Apr 14 2001 Bastiaan Bakker <bastiaan.bakker@lifeline.nl>
- Initial release

View file

@ -1,19 +0,0 @@
--- !Policy
product_versions:
- fedora-*
decision_context: bodhi_update_push_stable
subject_type: koji_build
rules:
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
--- !Policy
product_versions:
- rhel-9
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}

View file

@ -1,5 +0,0 @@
summary: CI Gating Plan
discover:
how: fmf
execute:
how: tmt

View file

@ -1,43 +0,0 @@
From 64eaa35c2de99581e522608e841defffb4b2923b Mon Sep 17 00:00:00 2001
From: Stephan Bergmann <sbergman@redhat.com>
Date: Thu, 21 Oct 2021 11:14:34 +0200
Subject: [PATCH] Run tests in deterministic order
LibreOffice already benefits from this (see
<https://git.libreoffice.org/core/+/2f2246d22e2a8ccbc1dc3e6f5243734a61edf270%5E!>
"external/cppunit: Run tests in deterministic order", especially as otherwise
the order in which tests happened to get run differed between --disable-lto and
--enable-lto builds.
Change-Id: I87d6d7cb0f4c2f6a0ea1ac3ba3d48b4e089eb5c7
Reviewed-on: https://gerrit.libreoffice.org/c/cppunit/+/123963
Tested-by: Stephan Bergmann <sbergman@redhat.com>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
---
diff --git a/src/cppunit/TestFactoryRegistry.cpp b/src/cppunit/TestFactoryRegistry.cpp
index 35448a6..3b68d58 100644
--- a/src/cppunit/TestFactoryRegistry.cpp
+++ b/src/cppunit/TestFactoryRegistry.cpp
@@ -143,12 +143,20 @@
void
TestFactoryRegistry::addTestToSuite( TestSuite *suite )
{
+ std::multimap<std::string, Test *> sorted;
for ( Factories::iterator it = m_factories.begin();
it != m_factories.end();
++it )
{
TestFactory *factory = *it;
- suite->addTest( factory->makeTest() );
+ Test *test = factory->makeTest();
+ sorted.insert({test->getName(), test});
+ }
+ // In the unlikely case of multiple Tests with identical names, those will
+ // still be added in random order:
+ for (auto const &i: sorted)
+ {
+ suite->addTest( i.second );
}
}

View file

@ -1 +1 @@
SHA512 (cppunit-1.15.1.tar.gz) = 0feb47faec451357bb4c4e287efa17bb60fd3ad966d5350e9f25b414aaab79e94921024b0c0497672f8d3eeb22a599213d2d71d9e1d28b243b3e37f3a9a43691
7493718733ded49a96cf763c5d3eea7f cppunit-1.12.0.tar.gz

View file

@ -1,92 +0,0 @@
#include <iostream>
#include <cppunit/TestRunner.h>
#include <cppunit/TestResult.h>
#include <cppunit/TestResultCollector.h>
#include <cppunit/extensions/HelperMacros.h>
#include <cppunit/BriefTestProgressListener.h>
#include <cppunit/extensions/TestFactoryRegistry.h>
#include <cppunit/CompilerOutputter.h>
#include <cppunit/XmlOutputter.h>
using namespace std;
class Math
{
public:
int Addition (int x, int y);
};
int
Math::Addition (int x, int y)
{
return (x + y);
}
class Test:public
CPPUNIT_NS::TestCase
{
CPPUNIT_TEST_SUITE (Test);
CPPUNIT_TEST (testAddition);
CPPUNIT_TEST_SUITE_END ();
public:
void
setUp (void);
void
tearDown (void);
protected:
void
testAddition (void);
private:
Math *
mTestObj;
};
void
Test::testAddition (void)
{
CPPUNIT_ASSERT (5 == mTestObj->Addition (2, 3));
}
void
Test::setUp (void)
{
mTestObj = new Math ();
}
void
Test::tearDown (void)
{
delete mTestObj;
}
CPPUNIT_TEST_SUITE_REGISTRATION (Test);
int
main (int ac, char **av)
{
CPPUNIT_NS::TestResult controller;
CPPUNIT_NS::TestResultCollector result;
controller.addListener (&result);
CPPUNIT_NS::BriefTestProgressListener progress;
controller.addListener (&progress);
CPPUNIT_NS::TestRunner runner;
runner.
addTest (CPPUNIT_NS::TestFactoryRegistry::getRegistry ().makeTest ());
runner.run (controller);
CPPUNIT_NS::CompilerOutputter compileroutputter (&result, std::cerr);
compileroutputter.write ();
ofstream xmlFileOut ("output.xml");
CPPUNIT_NS::XmlOutputter xmlOut (&result, xmlFileOut);
xmlOut.write ();
return result.wasSuccessful ()? 0 : 1;
}

View file

@ -1,15 +0,0 @@
summary: cppunit basic test
description: ''
contact: Edjunior Machado <emachado@redhat.com>
component:
- cppunit
test: ./runtest.sh
framework: beakerlib
require:
- bash
- coreutils
- gcc-c++
- cppunit-devel
duration: 1h
extra-summary: /tools/cppunit/Sanity/basic-test
extra-task: /tools/cppunit/Sanity/basic-test

View file

@ -1,56 +0,0 @@
#!/bin/bash
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# runtest.sh of /tools/cppunit/Sanity/basic-test
# Description: cppunit basic test
# Author: Edjunior Machado <emachado@redhat.com>
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#
# Copyright (c) 2021 Red Hat, Inc.
#
# 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, see http://www.gnu.org/licenses/.
#
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Include Beaker environment
. /usr/share/beakerlib/beakerlib.sh || exit 1
PACKAGE="cppunit"
rlJournalStart
rlPhaseStartSetup
rlAssertRpm $PACKAGE
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
rlRun "cp hello.cpp $TmpDir"
rlRun "pushd $TmpDir"
rlPhaseEnd
rlPhaseStartTest
rlRun "g++ -Wall -o hello hello.cpp -lcppunit"
rlAssertExists "hello"
rlRun "./hello > hello.log"
rlRun "cat hello.log"
rlAssertGrep 'Test::testAddition : OK' hello.log
rlRun "cat output.xml"
rlAssertGrep '<Name>Test::testAddition</Name>' output.xml
rlPhaseEnd
rlPhaseStartCleanup
rlRun "popd"
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
rlPhaseEnd
rlJournalPrintText
rlJournalEnd