|
@ -86,7 +86,7 @@ namespace { |
|
|
return boost::get<double>(results[0]); |
|
|
return boost::get<double>(results[0]); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
double analyzeReliability(std::string const &file, double bound) { |
|
|
|
|
|
|
|
|
double analyzeReliability(std::string const& file, double bound) { |
|
|
std::shared_ptr<storm::storage::DFT<double>> dft = storm::api::loadDFTGalileoFile<double>(file); |
|
|
std::shared_ptr<storm::storage::DFT<double>> dft = storm::api::loadDFTGalileoFile<double>(file); |
|
|
EXPECT_TRUE(storm::api::isWellFormed(*dft)); |
|
|
EXPECT_TRUE(storm::api::isWellFormed(*dft)); |
|
|
std::string property = "Pmin=? [F<=" + std::to_string(bound) + " \"failed\"]"; |
|
|
std::string property = "Pmin=? [F<=" + std::to_string(bound) + " \"failed\"]"; |
|
@ -221,6 +221,13 @@ namespace { |
|
|
EXPECT_FLOAT_EQ(result, storm::utility::infinity<double>()); |
|
|
EXPECT_FLOAT_EQ(result, storm::utility::infinity<double>()); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
TYPED_TEST(DftModelCheckerTest, Symmetry) { |
|
|
|
|
|
double result = this->analyzeMTTF(STORM_TEST_RESOURCES_DIR "/dft/symmetry6.dft"); |
|
|
|
|
|
EXPECT_FLOAT_EQ(result, 1.373226284); |
|
|
|
|
|
result = this->analyzeReliability(STORM_TEST_RESOURCES_DIR "/dft/symmetry6.dft", 1.0); |
|
|
|
|
|
EXPECT_FLOAT_EQ(result, 0.3421934224); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
TYPED_TEST(DftModelCheckerTest, HecsReliability) { |
|
|
TYPED_TEST(DftModelCheckerTest, HecsReliability) { |
|
|
double result = this->analyzeReliability(STORM_TEST_RESOURCES_DIR "/dft/hecs_2_2.dft", 1.0); |
|
|
double result = this->analyzeReliability(STORM_TEST_RESOURCES_DIR "/dft/hecs_2_2.dft", 1.0); |
|
|
EXPECT_FLOAT_EQ(result, 0.00021997582); |
|
|
EXPECT_FLOAT_EQ(result, 0.00021997582); |
|
|