From 6b68a4f7ddac183f460b668bee7a385daada0ce5 Mon Sep 17 00:00:00 2001 From: Claudius 'keldu' Holeksa Date: Mon, 15 Jul 2024 16:38:25 +0200 Subject: Move files and ammend remote-sycl --- modules/codec/tests/remote_loopback.cpp | 73 -------------------------------- modules/remote-sycl/.nix/derivation.nix | 1 + modules/remote-sycl/SConstruct | 1 + modules/remote-sycl/c++/common.hpp | 2 +- modules/remote-sycl/c++/transfer.hpp | 2 +- modules/remote/tests/SConscript | 31 ++++++++++++++ modules/remote/tests/remote_loopback.cpp | 73 ++++++++++++++++++++++++++++++++ 7 files changed, 108 insertions(+), 75 deletions(-) delete mode 100644 modules/codec/tests/remote_loopback.cpp create mode 100644 modules/remote/tests/SConscript create mode 100644 modules/remote/tests/remote_loopback.cpp (limited to 'modules') diff --git a/modules/codec/tests/remote_loopback.cpp b/modules/codec/tests/remote_loopback.cpp deleted file mode 100644 index 2895ee7..0000000 --- a/modules/codec/tests/remote_loopback.cpp +++ /dev/null @@ -1,73 +0,0 @@ -#include - -#include "../c++/remote_loopback.hpp" - -namespace { -namespace sch { -using namespace saw::schema; - -using TestInterface = Interface< - Member, "foo"> ->; - -using GroupedSchemas = saw::tmpl_group< - UInt64, - String, - Array, - Float64 ->; -} - -SAW_TEST("Remote Loopback Data"){ - using namespace saw; - - remote rmt; - - auto eov = rmt.parse_address(); - SAW_EXPECT(eov.is_value(), "Didn't parse correctly"); - auto& val = eov.get_value(); - - interface iface{ - [](data& foo){ - return foo.template cast_to(); - } - }; - - auto srv = data_server{}; - auto client = data_client{srv}; - - data foo{421}; - id sent_id = [&](){ - auto eov = client.send(foo); - SAW_EXPECT(eov.is_value(), "Failed send."); - return eov.get_value(); - }(); - - event_loop loop; - wait_scope wait{loop}; - - { - auto conv = client.receive(sent_id); - auto eov = conv.take(); - - SAW_EXPECT(eov.is_value(), "Failed receive."); - SAW_EXPECT(eov.get_value() == foo, "Wrong received value."); - } - { - auto eov = client.find(sent_id); - SAW_EXPECT(eov.is_value(), "Failed find."); - auto& f_val = eov.get_value(); - SAW_EXPECT(f_val, "Nullptr in find."); - SAW_EXPECT(*f_val == foo, "Wrong received value."); - } - { - auto eov = client.erase(sent_id); - SAW_EXPECT(eov.is_value(), "Failed erase."); - } - { - auto conv = client.receive(sent_id); - auto eov = conv.take(); - SAW_EXPECT(!eov.is_value(), "Failed receive. Value should already be erased."); - } -} -} diff --git a/modules/remote-sycl/.nix/derivation.nix b/modules/remote-sycl/.nix/derivation.nix index ba6d1ec..c63dd19 100644 --- a/modules/remote-sycl/.nix/derivation.nix +++ b/modules/remote-sycl/.nix/derivation.nix @@ -34,6 +34,7 @@ in stdenv.mkDerivation { forstio.core forstio.codec forstio.async + forstio.remote keldu.adaptivecpp-dev ocl-icd openmp diff --git a/modules/remote-sycl/SConstruct b/modules/remote-sycl/SConstruct index 40344e7..07ca30b 100644 --- a/modules/remote-sycl/SConstruct +++ b/modules/remote-sycl/SConstruct @@ -63,6 +63,7 @@ env=Environment(ENV=os.environ, variables=env_vars, CPPPATH=[], LIBS=['forstio-core' ,'forstio-codec' ,'forstio-async' + ,'forstio-remote' ,'acpp-rt' ,'OpenCL' ,'omp' diff --git a/modules/remote-sycl/c++/common.hpp b/modules/remote-sycl/c++/common.hpp index cb2d73f..8c008c3 100644 --- a/modules/remote-sycl/c++/common.hpp +++ b/modules/remote-sycl/c++/common.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include #include #include diff --git a/modules/remote-sycl/c++/transfer.hpp b/modules/remote-sycl/c++/transfer.hpp index 2a95f67..5d76e7c 100644 --- a/modules/remote-sycl/c++/transfer.hpp +++ b/modules/remote-sycl/c++/transfer.hpp @@ -6,7 +6,7 @@ #include #include -#include +#include namespace saw { diff --git a/modules/remote/tests/SConscript b/modules/remote/tests/SConscript new file mode 100644 index 0000000..f8ffc92 --- /dev/null +++ b/modules/remote/tests/SConscript @@ -0,0 +1,31 @@ +#!/bin/false + +import os +import os.path +import glob + + +Import('env') + +dir_path = Dir('.').abspath + +# Environment for base library +test_cases_env = env.Clone(); + +test_cases_env.Append(LIBS=['forstio-test']); + +test_cases_env.sources = sorted(glob.glob(dir_path + "/*.cpp")) +test_cases_env.headers = sorted(glob.glob(dir_path + "/*.hpp")) + +env.sources += test_cases_env.sources; +env.headers += test_cases_env.headers; + +objects_static = [] +test_cases_env.add_source_files(objects_static, test_cases_env.sources, shared=False); +test_cases_env.program = test_cases_env.Program('#bin/tests', [objects_static, env.library_static]); + +# Set Alias +env.Alias('test', test_cases_env.program); +env.Alias('check', test_cases_env.program); + +env.targets += ['test','check']; diff --git a/modules/remote/tests/remote_loopback.cpp b/modules/remote/tests/remote_loopback.cpp new file mode 100644 index 0000000..2895ee7 --- /dev/null +++ b/modules/remote/tests/remote_loopback.cpp @@ -0,0 +1,73 @@ +#include + +#include "../c++/remote_loopback.hpp" + +namespace { +namespace sch { +using namespace saw::schema; + +using TestInterface = Interface< + Member, "foo"> +>; + +using GroupedSchemas = saw::tmpl_group< + UInt64, + String, + Array, + Float64 +>; +} + +SAW_TEST("Remote Loopback Data"){ + using namespace saw; + + remote rmt; + + auto eov = rmt.parse_address(); + SAW_EXPECT(eov.is_value(), "Didn't parse correctly"); + auto& val = eov.get_value(); + + interface iface{ + [](data& foo){ + return foo.template cast_to(); + } + }; + + auto srv = data_server{}; + auto client = data_client{srv}; + + data foo{421}; + id sent_id = [&](){ + auto eov = client.send(foo); + SAW_EXPECT(eov.is_value(), "Failed send."); + return eov.get_value(); + }(); + + event_loop loop; + wait_scope wait{loop}; + + { + auto conv = client.receive(sent_id); + auto eov = conv.take(); + + SAW_EXPECT(eov.is_value(), "Failed receive."); + SAW_EXPECT(eov.get_value() == foo, "Wrong received value."); + } + { + auto eov = client.find(sent_id); + SAW_EXPECT(eov.is_value(), "Failed find."); + auto& f_val = eov.get_value(); + SAW_EXPECT(f_val, "Nullptr in find."); + SAW_EXPECT(*f_val == foo, "Wrong received value."); + } + { + auto eov = client.erase(sent_id); + SAW_EXPECT(eov.is_value(), "Failed erase."); + } + { + auto conv = client.receive(sent_id); + auto eov = conv.take(); + SAW_EXPECT(!eov.is_value(), "Failed receive. Value should already be erased."); + } +} +} -- cgit v1.2.3