tests/cpp_ctors: move tests-cpp_ctors out of unittests

This moves 'unittests/tests-cpp_ctors' to its own test.
It prevents requiring 'cpp' in the 'unittests' that forced almost all
architectures to link the unittests with `g++`.
It also removes the need to have disabled tests for architectures.

Some boards were actually not big enough to compile unittests.
But were hidden by the 'cpp' missing feature.

Blacklist boards that were disabled for cpp test even though they
provide the 'cpp' feature.
This commit is contained in:
Gaëtan Harter
2019-08-22 12:39:47 +02:00
parent 1ec4e45f77
commit 5638881e5b
10 changed files with 44 additions and 21 deletions
+37
View File
@@ -0,0 +1,37 @@
/*
* Copyright (C) 2016-2017 Eistec AB
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*/
#include "tests-cpp_ctors.h"
using RIOTTestCPP::MyClass;
MyClass global_obj;
extern "C" {
long tests_cpp_ctors_global_value(void);
long tests_cpp_ctors_static_value(void);
long tests_cpp_ctors_local_value(long);
}
extern volatile long tests_cpp_ctors_magic2;
long tests_cpp_ctors_local_value(long number) {
MyClass local_obj(number);
local_obj.inc();
return local_obj.value();
}
long tests_cpp_ctors_static_value() {
static MyClass static_obj(tests_cpp_ctors_magic2);
static_obj.inc();
return static_obj.value();
}
long tests_cpp_ctors_global_value() {
return global_obj.value();
}