8 #ifndef TEST_UFO_OPERATORUTILS_H_
9 #define TEST_UFO_OPERATORUTILS_H_
16 #include "eckit/config/LocalConfiguration.h"
17 #include "eckit/testing/Test.h"
18 #include "ioda/ObsSpace.h"
19 #include "ioda/ObsVector.h"
20 #include "oops/mpi/mpi.h"
21 #include "oops/runs/Test.h"
22 #include "oops/util/Expect.h"
23 #include "test/TestEnvironment.h"
39 return theTestFixture;
43 const eckit::Configuration & conf = ::test::TestEnvironment::config();
44 util::DateTime bgn(conf.getString(
"window begin"));
45 util::DateTime end(conf.getString(
"window end"));
46 const eckit::LocalConfiguration obsconf(conf,
"obs space");
47 ioda::ObsTopLevelParameters obsparams;
48 obsparams.validateAndDeserialize(obsconf);
49 obsspace_.reset(
new ioda::ObsSpace(obsparams, oops::mpi::world(), bgn, end,
50 oops::mpi::myself()));
51 config_ = conf.getSubConfiguration(
"cases");
59 oops::Variables expectedOperatorVariables =
61 std::vector<int> expectedOperatorVariableIndices =
62 conf.getIntVector(
"expected indices");
64 oops::Variables operatorVariables;
65 std::vector<int> operatorVariableIndices;
67 operatorVariables, operatorVariableIndices);
69 EXPECT_EQUAL(operatorVariables, expectedOperatorVariables);
70 EXPECT_EQUAL(operatorVariableIndices, expectedOperatorVariableIndices);
73 CASE(
"ufo/OperatorUtils/Without 'variables' option") {
77 CASE(
"ufo/OperatorUtils/With 'variables' option") {
83 std::string
testid()
const override {
return "ufo::test::OperatorUtils";}
oops::Variables toOopsVariables() const
std::string testid() const override
void clear() const override
void register_tests() const override
Code shared by all tests.
static TestFixture & getInstance()
static const eckit::LocalConfiguration & config()
eckit::LocalConfiguration config_
static const ioda::ObsSpace & obsspace()
std::shared_ptr< ioda::ObsSpace > obsspace_
CASE("ufo/DataExtractor/bilinearinterp/float_linear")
void testOperatorUtils(const eckit::LocalConfiguration &conf)
void getOperatorVariables(const eckit::Configuration &conf, const oops::Variables &simulatedVariables, oops::Variables &operatorVariables, std::vector< int > &operatorVariableIndices)