[Fix] Fix semantic tests were not running
authorJihoon Lee <jhoon.it.lee@samsung.com>
Fri, 10 Sep 2021 04:58:10 +0000 (13:58 +0900)
committerJijoong Moon <jijoong.moon@samsung.com>
Wed, 15 Sep 2021 03:58:02 +0000 (12:58 +0900)
This patch fixes semantic tests were not running

**Self evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped

Signed-off-by: Jihoon Lee <jhoon.it.lee@samsung.com>
Applications/Custom/LayerPlugin/meson.build
Applications/SimpleShot/test/meson.build
debian/control
test/unittest/layers/layers_common_tests.h
test/unittest/layers/layers_standalone_common_tests.cpp
test/unittest/layers/meson.build

index 34bb2c00b2a0f8a6e19dc99745ce3b2b58d18f4b..6a85a2af6c9690ac68d5623d6fc91852833241e2 100644 (file)
@@ -45,6 +45,7 @@ rnnt_loss_layer_dep = declare_dependency(
 
 if get_option('enable-test')
   test_target = [
+    layer_common_test_standalone_files,
     'layer_plugin_common_test.cpp',
     'layer_plugin_pow_test.cpp',
     'layer_plugin_mae_loss_test.cpp',
@@ -52,20 +53,20 @@ if get_option('enable-test')
   ]
 
   exe = executable(
-  'app_layer_plugin_test', test_target,
-  dependencies: [
-    gtest_main_dep,
-    nntrainer_dep,
-    nntrainer_ccapi_dep,
-    nntrainer_testutil_dep,
-    pow_layer_dep,
-    mae_loss_layer_dep,
-    rnnt_loss_layer_dep,    
-    nntrainer_layer_common_standalone_tests_dep
-  ],
-  install: get_option('enable-test'),
-  install_dir: application_install_dir)
-
+    'app_layer_plugin_test', test_target,
+    dependencies: [
+      gtest_main_dep,
+      nntrainer_dep,
+      nntrainer_ccapi_dep,
+      nntrainer_testutil_dep,
+      pow_layer_dep,
+      mae_loss_layer_dep,
+      rnnt_loss_layer_dep,
+    ],
+    install: get_option('enable-test'),
+    install_dir: application_install_dir,
+    include_directories: layer_common_test_inc
+  )
   testenv = environment()
   testenv.set('NNTRAINER_PATH', meson.current_build_dir())
   test('app_plugin_test', exe, env: testenv)
index 0944ce2840e072a4b6d23c63dd50927b7dd65048..37483c56ded35a2a856cb017fce58b5193138e9e 100644 (file)
@@ -1,4 +1,5 @@
 test_target = [
+  layer_common_test_standalone_files,
   # 'simpleshot_utils_test.cpp',
   # 'simpleshot_centering_test.cpp',
   # 'simpleshot_l2norm_test.cpp',
@@ -13,8 +14,8 @@ exe = executable(
       nntrainer_dep,
       nntrainer_ccapi_dep,
       nntrainer_testutil_dep,
-      nntrainer_layer_common_standalone_tests_dep
       ],
+  include_directories: layer_common_test_inc,
   install: get_option('enable-test'),
   install_dir: application_install_dir
 )
index ed9573306c3ecc2a939d55ddb3f21c11adc77612..a308fe410938b05750361e0284af934db4290de1 100644 (file)
@@ -8,9 +8,10 @@ Build-Depends: gcc-9 | gcc-8 | gcc-7 (>=7.5),
  libopenblas-dev, libiniparser-dev (>=4.1), tensorflow2-lite-dev, libjsoncpp-dev,
  libcurl3-gnutls-dev | libcurl4-gnutls-dev | libcurl3-openssl-dev |
  libcurl4-openssl-dev | libcurl3-nns-dev | libcurl4-nns-dev, libgtest-dev,
- libflatbuffers-dev, flatbuffers-compiler, libglib2.0-dev, nnstreamer-dev, libgstreamer1.0-dev,
- libgstreamer-plugins-base1.0-dev, gstreamer1.0-tools, gstreamer1.0-plugins-base,
- gstreamer1.0-plugins-good, ml-api-common-dev, ml-inference-api-dev
+ libflatbuffers-dev, flatbuffers-compiler, libglib2.0-dev, nnstreamer-tensorflow2-lite,
+ nnstreamer-dev, libgstreamer1.0-dev, libgstreamer-plugins-base1.0-dev,
+ gstreamer1.0-tools, gstreamer1.0-plugins-base, gstreamer1.0-plugins-good,
+ ml-api-common-dev, ml-inference-api-dev
 Standards-Version: 3.9.6
 Homepage: https://github.com/nnstreamer/nntrainer
 
index 677953435c7663cdf4027cad1e2ed8ffa38d66c8..b965d14a17e866e20b968b19082a6bf42ff9673c 100644 (file)
 #include <functional>
 #include <memory>
 #include <string>
+#include <tuple>
 #include <vector>
 
-#include <gtest/gtest.h>
-
-namespace nntrainer {
-class Layer;
-}
+#include <layer_devel.h>
 
 typedef enum {
   AVAILABLE_FROM_APP_CONTEXT =
@@ -55,19 +52,24 @@ public:
    * @brief Destroy the Layer Semantics object
    *
    */
-  virtual ~LayerSemantics();
+  virtual ~LayerSemantics() {}
 
   /**
    * @brief SetUp test cases here
    *
    */
-  virtual void SetUp();
+  virtual void SetUp() {
+    auto f = std::get<0>(GetParam());
+    layer = std::move(f({}));
+    std::tie(std::ignore, expected_type, valid_properties, options, must_fail) =
+      GetParam();
+  }
 
   /**
    * @brief do here if any memory needs to be released
    *
    */
-  virtual void TearDown();
+  virtual void TearDown() {}
 
 protected:
   std::unique_ptr<nntrainer::Layer> layer;
index 0d8c42dc809a5a619869d368f46c975af58e1290..fc96d6a467f30ccb9479d1be53ce9573e40616f4 100644 (file)
 
 constexpr unsigned SAMPLE_TRIES = 10;
 
-LayerSemantics::~LayerSemantics() {}
-
-void LayerSemantics::SetUp() {
-  auto f = std::get<0>(GetParam());
-  layer = std::move(f({}));
-  std::tie(std::ignore, expected_type, valid_properties, options, must_fail) =
-    GetParam();
-}
-
-void LayerSemantics::TearDown() {}
-
 TEST_P(LayerSemantics, setProperties_p) {
   /// @todo check if setProperties does not collide with layerNode designated
   /// properties
index 88537c5266af82826ea1186454498bdae5cb1150..c3f6abf03fa3adecd904f351b4848ed65e20dbd4 100644 (file)
@@ -1,4 +1,6 @@
 layer_common_test_inc = include_directories('./')
+layer_common_test_standalone_files = files('layers_standalone_common_tests.cpp')
+layer_common_test_dependent_files = files('layers_dependent_common_tests.cpp')
 
 nntrainer_layer_common_standalone_tests_lib = shared_library(
   'nntrainer_layer_common_standalone_tests',
@@ -15,7 +17,7 @@ nntrainer_layer_common_standalone_tests_dep = declare_dependency(
 nntrainer_layer_common_dependent_tests_lib = shared_library(
   'nntrainer_layer_common_dependent_tests',
   'layers_dependent_common_tests.cpp',
-  dependencies: [nntrainer_dep, gtest_dep, nntrainer_layer_common_standalone_tests_dep], # nntrainer_devel_dep
+  dependencies: [nntrainer_dep, gtest_dep], # nntrainer_devel_dep
   include_directories: layer_common_test_inc
 )
 
@@ -25,6 +27,8 @@ nntrainer_layer_common_dependent_tests_dep = declare_dependency(
   )
 
 test_target = [
+  layer_common_test_dependent_files,
+  layer_common_test_standalone_files,
   'unittest_layers_impl.cpp',
   'unittest_layers_input.cpp',
   'unittest_layers_loss.cpp',