summaryrefslogtreecommitdiff
path: root/gr-utils/python/modtool/gr-newmod/lib
diff options
context:
space:
mode:
authorMartin Braun <martin.braun@ettus.com>2018-10-07 13:30:35 -0700
committerMarcus Müller <marcus@hostalia.de>2018-10-22 19:06:55 +0200
commit9449236cf7bf48f40b696edce68d81410d713489 (patch)
tree56052674fea45cb83a1291e6886a8154c97d1b15 /gr-utils/python/modtool/gr-newmod/lib
parentea0ee503a144aaf07a684a2dfaac58c89dbdb78d (diff)
modtool: OOTs use Boost.UTF, CMake 3.8-Aware
- This is the same change that happened for the GNU Radio core - New OOTs will now have Boost.UTF-based unit tests - modtool will be able to handle both CppUnit-based OOTs as well as Boost.UTF-based ones; this change is backward-compatible
Diffstat (limited to 'gr-utils/python/modtool/gr-newmod/lib')
-rw-r--r--gr-utils/python/modtool/gr-newmod/lib/CMakeLists.txt45
-rw-r--r--gr-utils/python/modtool/gr-newmod/lib/qa_howto.cc37
-rw-r--r--gr-utils/python/modtool/gr-newmod/lib/qa_howto.h39
-rw-r--r--gr-utils/python/modtool/gr-newmod/lib/test_howto.cc49
4 files changed, 23 insertions, 147 deletions
diff --git a/gr-utils/python/modtool/gr-newmod/lib/CMakeLists.txt b/gr-utils/python/modtool/gr-newmod/lib/CMakeLists.txt
index 64b7c1d4ab..2460b930f6 100644
--- a/gr-utils/python/modtool/gr-newmod/lib/CMakeLists.txt
+++ b/gr-utils/python/modtool/gr-newmod/lib/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright 2011,2012,2016 Free Software Foundation, Inc.
+# Copyright 2011,2012,2016,2018 Free Software Foundation, Inc.
#
# This file was generated by gr_modtool, a tool from the GNU Radio framework
# This file is a part of gr-howto
@@ -31,8 +31,8 @@ list(APPEND howto_sources
set(howto_sources "${howto_sources}" PARENT_SCOPE)
if(NOT howto_sources)
- MESSAGE(STATUS "No C++ sources... skipping lib/")
- return()
+ MESSAGE(STATUS "No C++ sources... skipping lib/")
+ return()
endif(NOT howto_sources)
add_library(gnuradio-howto SHARED ${howto_sources})
@@ -52,31 +52,32 @@ include(GrMiscUtils)
GR_LIBRARY_FOO(gnuradio-howto)
########################################################################
+# Print summary
+########################################################################
+message(STATUS "Using install prefix: ${CMAKE_INSTALL_PREFIX}")
+message(STATUS "Building for version: ${VERSION} / ${LIBVER}")
+
+########################################################################
# Build and register unit test
########################################################################
include(GrTest)
-include_directories(${CPPUNIT_INCLUDE_DIRS})
-
+# If your unit tests require special include paths, add them here
+#include_directories()
+# List all files that contain Boost.UTF unit tests here
list(APPEND test_howto_sources
- ${CMAKE_CURRENT_SOURCE_DIR}/test_howto.cc
- ${CMAKE_CURRENT_SOURCE_DIR}/qa_howto.cc
)
+# Anything we need to link to for the unit tests go here
+list(APPEND GR_TEST_TARGET_DEPS gnuradio-howto)
-add_executable(test-howto ${test_howto_sources})
+if(NOT test_howto_sources)
+ MESSAGE(STATUS "No C++ unit tests... skipping")
+ return()
+endif(NOT test_howto_sources)
-target_link_libraries(
- test-howto
- ${GNURADIO_RUNTIME_LIBRARIES}
- ${Boost_LIBRARIES}
- ${CPPUNIT_LIBRARIES}
- gnuradio-howto
-)
-
-GR_ADD_TEST(test_howto test-howto)
+foreach(qa_file ${test_howto_sources})
+ GR_ADD_CPP_TEST("howto_${qa_file}"
+ ${CMAKE_CURRENT_SOURCE_DIR}/${qa_file}
+ )
+endforeach(qa_file)
-########################################################################
-# Print summary
-########################################################################
-message(STATUS "Using install prefix: ${CMAKE_INSTALL_PREFIX}")
-message(STATUS "Building for version: ${VERSION} / ${LIBVER}")
diff --git a/gr-utils/python/modtool/gr-newmod/lib/qa_howto.cc b/gr-utils/python/modtool/gr-newmod/lib/qa_howto.cc
deleted file mode 100644
index 2f10a3a564..0000000000
--- a/gr-utils/python/modtool/gr-newmod/lib/qa_howto.cc
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright 2012 Free Software Foundation, Inc.
- *
- * This file was generated by gr_modtool, a tool from the GNU Radio framework
- * This file is a part of gr-howto
- *
- * GNU Radio 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 3, or (at your option)
- * any later version.
- *
- * GNU Radio 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 GNU Radio; see the file COPYING. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-/*
- * This class gathers together all the test cases for the gr-filter
- * directory into a single test suite. As you create new test cases,
- * add them here.
- */
-
-#include "qa_howto.h"
-
-CppUnit::TestSuite *
-qa_howto::suite()
-{
- CppUnit::TestSuite *s = new CppUnit::TestSuite("howto");
-
- return s;
-}
diff --git a/gr-utils/python/modtool/gr-newmod/lib/qa_howto.h b/gr-utils/python/modtool/gr-newmod/lib/qa_howto.h
deleted file mode 100644
index c50bde3ec7..0000000000
--- a/gr-utils/python/modtool/gr-newmod/lib/qa_howto.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2012 Free Software Foundation, Inc.
- *
- * This file was generated by gr_modtool, a tool from the GNU Radio framework
- * This file is a part of gr-howto
- *
- * GNU Radio 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 3, or (at your option)
- * any later version.
- *
- * GNU Radio 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 GNU Radio; see the file COPYING. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifndef _QA_HOWTO_H_
-#define _QA_HOWTO_H_
-
-#include <gnuradio/attributes.h>
-#include <cppunit/TestSuite.h>
-
-//! collect all the tests for the gr-filter directory
-
-class __GR_ATTR_EXPORT qa_howto
-{
- public:
- //! return suite of tests for all of gr-filter directory
- static CppUnit::TestSuite *suite();
-};
-
-#endif /* _QA_HOWTO_H_ */
diff --git a/gr-utils/python/modtool/gr-newmod/lib/test_howto.cc b/gr-utils/python/modtool/gr-newmod/lib/test_howto.cc
deleted file mode 100644
index 699bb5b640..0000000000
--- a/gr-utils/python/modtool/gr-newmod/lib/test_howto.cc
+++ /dev/null
@@ -1,49 +0,0 @@
-/* -*- c++ -*- */
-/*
- * Copyright 2012 Free Software Foundation, Inc.
- *
- * This file was generated by gr_modtool, a tool from the GNU Radio framework
- * This file is a part of gr-howto
- *
- * GNU Radio 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 3, or (at your option)
- * any later version.
- *
- * GNU Radio 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 GNU Radio; see the file COPYING. If not, write to
- * the Free Software Foundation, Inc., 51 Franklin Street,
- * Boston, MA 02110-1301, USA.
- */
-
-#ifdef HAVE_CONFIG_H
-#include "config.h"
-#endif
-
-#include <cppunit/TextTestRunner.h>
-#include <cppunit/XmlOutputter.h>
-
-#include <gnuradio/unittests.h>
-#include "qa_howto.h"
-#include <iostream>
-#include <fstream>
-
-int
-main (int argc, char **argv)
-{
- CppUnit::TextTestRunner runner;
- std::ofstream xmlfile(get_unittest_path("howto.xml").c_str());
- CppUnit::XmlOutputter *xmlout = new CppUnit::XmlOutputter(&runner.result(), xmlfile);
-
- runner.addTest(qa_howto::suite());
- runner.setOutputter(xmlout);
-
- bool was_successful = runner.run("", false);
-
- return was_successful ? 0 : 1;
-}