aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tests
diff options
context:
space:
mode:
authorRenaud G <renaud@rolisteam.org>2019-07-28 02:49:16 +0200
committerRenaud G <renaud@rolisteam.org>2019-07-28 02:49:16 +0200
commit61497d06b2ec5ba576dad92d008de3f4835000d5 (patch)
treebb4a59e456d3c0901654f229d0e6458bbbecd4dc /tests
parentc82532d4f2afcd593305baa2ea08ecad1d7669be (diff)
downloadOneRoll-61497d06b2ec5ba576dad92d008de3f4835000d5.tar.gz
OneRoll-61497d06b2ec5ba576dad92d008de3f4835000d5.zip
add tests
Diffstat (limited to 'tests')
-rw-r--r--tests/dice/tst_dice.cpp37
1 files changed, 32 insertions, 5 deletions
diff --git a/tests/dice/tst_dice.cpp b/tests/dice/tst_dice.cpp
index 4da3474..a35f918 100644
--- a/tests/dice/tst_dice.cpp
+++ b/tests/dice/tst_dice.cpp
@@ -43,6 +43,7 @@
#include "node/splitnode.h"
#include "node/stringnode.h"
#include "node/uniquenode.h"
+#include "operationcondition.h"
#include "result/stringresult.h"
#include "testnode.h"
@@ -131,6 +132,8 @@ private slots:
void occurenceTest();
void occurenceTest_data();
+ void operatoionConditionValidatorTest();
+
private:
std::unique_ptr<Die> m_die;
std::unique_ptr<DiceParser> m_diceParser;
@@ -463,13 +466,13 @@ void TestDice::dangerousCommandsTest_data()
// QTest::addRow("cmd5") << "10d10g10";
}
-void makeResult(DiceResult& result, const QVector<int>& values)
+void makeResult(DiceResult& result, const QVector<int>& values, int base= 1, int max= 10)
{
for(int val : values)
{
auto die= new Die();
- die->setBase(1);
- die->setMaxValue(10);
+ die->setBase(base);
+ die->setMaxValue(max);
die->insertRollValue(val);
result.insertResult(die);
}
@@ -722,7 +725,7 @@ void TestDice::rerollUntilTest()
RerollDiceNode reroll(false, false);
DiceResult result;
- makeResult(result, values);
+ makeResult(result, values, 0);
node.setResult(&result);
auto validator= makeValidator(condition, BooleanCondition::Equal);
@@ -742,7 +745,6 @@ void TestDice::rerollUntilTest()
resultDiff= true;
++i;
}
-
QCOMPARE(different, resultDiff);
}
void TestDice::rerollUntilTest_data()
@@ -1062,6 +1064,31 @@ void TestDice::ifCommandTest_data()
<< QStringList({"Complete Success:", "Success with Complications:", "Failure:"});
}
+void TestDice::operatoionConditionValidatorTest()
+{
+ OperationCondition validator;
+ NumberNode number;
+ number.setNumber(2);
+ validator.setValueNode(&number);
+
+ BooleanCondition subValidator;
+ subValidator.setOperator(BooleanCondition::Equal);
+ NumberNode subnumber;
+ subnumber.setNumber(0);
+ subValidator.setValueNode(&subnumber);
+
+ validator.setBoolean(&subValidator);
+
+ std::set<qint64> data= {2, 4, 6, 8, 10};
+ auto value= validator.getPossibleValues(std::make_pair<qint64, qint64>(1, 10));
+
+ subValidator.setValueNode(nullptr);
+ validator.setValueNode(nullptr);
+ validator.setBoolean(nullptr);
+
+ QCOMPARE(value, data);
+}
+
void TestDice::cleanupTestCase() {}
QTEST_MAIN(TestDice)