EclipseState: extend test to check the TransMult class
This commit is contained in:
@@ -85,7 +85,40 @@ static DeckPtr createDeck() {
|
||||
return parser->parseString(deckData) ;
|
||||
}
|
||||
|
||||
static DeckPtr createDeckNoFaults() {
|
||||
const char *deckData =
|
||||
"RUNSPEC\n"
|
||||
"\n"
|
||||
"DIMENS\n"
|
||||
" 10 10 10 /\n"
|
||||
"GRID\n"
|
||||
"DX\n"
|
||||
"1000*0.25 /\n"
|
||||
"DYV\n"
|
||||
"10*0.25 /\n"
|
||||
"DZ\n"
|
||||
"1000*0.25 /\n"
|
||||
"TOPS\n"
|
||||
"1000*0.25 /\n"
|
||||
"-- multiply one layer for each face\n"
|
||||
"MULTX\n"
|
||||
" 100*1 100*10 800*1 /\n"
|
||||
"MULTX-\n"
|
||||
" 200*1 100*11 700*1 /\n"
|
||||
"MULTY\n"
|
||||
" 300*1 100*12 600*1 /\n"
|
||||
"MULTY-\n"
|
||||
" 400*1 100*13 500*1 /\n"
|
||||
"MULTZ\n"
|
||||
" 500*1 100*14 400*1 /\n"
|
||||
"MULTZ-\n"
|
||||
" 600*1 100*15 300*1 /\n"
|
||||
"SCHEDULE\n"
|
||||
"\n";
|
||||
|
||||
ParserPtr parser(new Parser());
|
||||
return parser->parseString(deckData) ;
|
||||
}
|
||||
|
||||
BOOST_AUTO_TEST_CASE(CreatSchedule) {
|
||||
DeckPtr deck = createDeck();
|
||||
@@ -182,3 +215,45 @@ BOOST_AUTO_TEST_CASE(GetFaults) {
|
||||
BOOST_CHECK_EQUAL( transMult->getMultiplier(4 , 3 , 0 , FaceDir::ZPlus) , 1.00 );
|
||||
}
|
||||
|
||||
|
||||
BOOST_AUTO_TEST_CASE(FaceTransMults) {
|
||||
DeckPtr deck = createDeckNoFaults();
|
||||
EclipseState state(deck);
|
||||
std::shared_ptr<const TransMult> transMult = state.getTransMult();
|
||||
|
||||
for (int i = 0; i < 10; ++ i) {
|
||||
for (int j = 0; j < 10; ++ j) {
|
||||
for (int k = 0; k < 10; ++ k) {
|
||||
if (k == 1)
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::XPlus), 10.0);
|
||||
else
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::XPlus), 1.0);
|
||||
|
||||
if (k == 2)
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::XMinus), 11.0);
|
||||
else
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::XMinus), 1.0);
|
||||
|
||||
if (k == 3)
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::YPlus), 12.0);
|
||||
else
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::YPlus), 1.0);
|
||||
|
||||
if (k == 4)
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::YMinus), 13.0);
|
||||
else
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::YMinus), 1.0);
|
||||
|
||||
if (k == 5)
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::ZPlus), 14.0);
|
||||
else
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::ZPlus), 1.0);
|
||||
|
||||
if (k == 6)
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::ZMinus), 15.0);
|
||||
else
|
||||
BOOST_CHECK_EQUAL(transMult->getMultiplier(i, j, k, FaceDir::ZMinus), 1.0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user