Skip to content
Snippets Groups Projects
Commit d1009c60 authored by Pep Martí Saumell's avatar Pep Martí Saumell
Browse files

[test] added observations test

parent 5d651d9a
No related branches found
No related tags found
2 merge requests!20new tag,!19new tag
......@@ -97,6 +97,7 @@ bool equalArray(const T* array1, const T* array2, const int& size1, const int& s
}
bool equalTime(const gtime_t& time1, const gtime_t& time2);
bool equalObservations(const obsd_t& obs1, const obsd_t& obs2);
bool equalObservations(const obs_t& obs1, const obs_t& obs2);
} // namespace GNSSUtils
......
......@@ -485,4 +485,22 @@ bool equalObservations(const obsd_t& obs1, const obsd_t& obs2)
return true;
}
bool equalObservations(const obs_t& obs1, const obs_t& obs2)
{
if (obs1.n != obs2.n)
return false;
if (obs1.nmax != obs2.nmax)
return false;
if (obs1.flag != obs2.flag)
return false;
if (obs1.rcvcount != obs2.rcvcount)
return false;
if (obs1.tmcount != obs2.tmcount)
return false;
if (!equalObservations(*(obs1.data), *(obs2.data)))
return false;
return true;
}
} // namespace GNSSUtils
......@@ -14,4 +14,7 @@ include_directories(${GTEST_INCLUDE_DIRS})
# Transformations test
gnss_utils_add_gtest(gtest_transformations gtest_transformations.cpp)
gnss_utils_add_gtest(gtest_observations gtest_observations.cpp)
target_link_libraries(gtest_transformations ${PROJECT_NAME})
target_link_libraries(gtest_observations ${PROJECT_NAME})
......@@ -3,7 +3,7 @@
TEST(NavigationTests, Whatever)
{
}
int main(int argc, char **argv)
......
#include "gtest/utils_gtest.h"
#include "gnss_utils/gnss_utils.h"
#include "gnss_utils/observations.h"
using namespace GNSSUtils;
TEST(ObservationsTest, LoadFromRinex)
{
gtime_t t_start{ 0, 0 }; // no limit
gtime_t t_end{ 0, 0 }; // no limit
double dt = 0.0; // no limit
const char* opt = "-SYS=G"; // only GPS | GPS+GAL: "-SYS=G,L" | ALL: ""
const std::string& rnx_file = "../src/examples/raw_201805171357.obs";
// GNSSUtils utilities
Observations observations;
observations.loadFromRinex(rnx_file.c_str(), t_start, t_end, dt, opt);
// RTKLIB utilities
obs_t obs;
obs.data = (obsd_t*)malloc(sizeof(obsd_t) * MAXSAT);
obs.n = 0;
obs.nmax = MAXSAT;
int stat = readrnxt(rnx_file.c_str(), 1, t_start, t_end, dt, opt, &obs, NULL, NULL);
ASSERT_EQ(stat, 1);
// Comparison
ASSERT_TRUE(obs.n == observations.getObservations().size());
for (int ii = 0; ii < obs.n; ++ii)
{
ASSERT_TRUE(equalObservations(obs.data[ii], observations.getObservations()[ii]));
}
}
int main(int argc, char **argv)
int main(int argc, char** argv)
{
testing::InitGoogleTest(&argc, argv);
return RUN_ALL_TESTS();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment