summaryrefslogtreecommitdiff
path: root/src/unittests
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2018-03-02 05:48:13 +0300
committerAndrei Karas <akaras@inbox.ru>2018-03-03 01:13:59 +0300
commitf18d40351434f7baff2ddf1d34933c19cada5dba (patch)
tree7461cb0d74fe9049b9393e4def7a343ca55a17b0 /src/unittests
parentd7f491da52e985ea50464804d342d9d45ae407f7 (diff)
downloadManaVerse-f18d40351434f7baff2ddf1d34933c19cada5dba.tar.gz
ManaVerse-f18d40351434f7baff2ddf1d34933c19cada5dba.tar.bz2
ManaVerse-f18d40351434f7baff2ddf1d34933c19cada5dba.tar.xz
ManaVerse-f18d40351434f7baff2ddf1d34933c19cada5dba.zip
Add support for item stat ranges.
Example: ... hp="10-15" mp="1-2" ...
Diffstat (limited to 'src/unittests')
-rw-r--r--src/unittests/utils/itemxmlutils.cc75
1 files changed, 75 insertions, 0 deletions
diff --git a/src/unittests/utils/itemxmlutils.cc b/src/unittests/utils/itemxmlutils.cc
index 44eba8e61..825bc2f97 100644
--- a/src/unittests/utils/itemxmlutils.cc
+++ b/src/unittests/utils/itemxmlutils.cc
@@ -171,6 +171,41 @@ TEST_CASE("itemxmlutils readItemStatsString 1", "")
}
}
+ SECTION("test4")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test4");
+ readItemStatsString(effect, node, fields);
+ REQUIRE(effect == "HP +10 - +15");
+ }
+
+ SECTION("test5")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test5");
+ readItemStatsString(effect, node, fields);
+ REQUIRE(effect == "Weight 2");
+ }
+
+ SECTION("test6")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test6");
+ readItemStatsString(effect, node, fields);
+ REQUIRE(effect == "Weight 2 - 3");
+ }
+
+ SECTION("test7")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test7");
+ readItemStatsString(effect, node, fields);
+ REQUIRE(effect == "Weight 2-");
+ }
+
+ SECTION("test8")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test8");
+ readItemStatsString(effect, node, fields);
+ REQUIRE(effect == "Weight -2");
+ }
+
delete2(userPalette);
delete2(theme);
delete2(client);
@@ -329,6 +364,46 @@ TEST_CASE("itemxmlutils readItemStatsVector 1", "")
}
}
+ SECTION("test4")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test4");
+ readItemStatsVector(effect, node, fields);
+ REQUIRE(effect.size() == 1);
+ REQUIRE(effect[0] == "HP +10 - +15");
+ }
+
+ SECTION("test5")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test5");
+ readItemStatsVector(effect, node, fields);
+ REQUIRE(effect.size() == 1);
+ REQUIRE(effect[0] == "Weight 2");
+ }
+
+ SECTION("test6")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test6");
+ readItemStatsVector(effect, node, fields);
+ REQUIRE(effect.size() == 1);
+ REQUIRE(effect[0] == "Weight 2 - 3");
+ }
+
+ SECTION("test7")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test7");
+ readItemStatsVector(effect, node, fields);
+ REQUIRE(effect.size() == 1);
+ REQUIRE(effect[0] == "Weight 2-");
+ }
+
+ SECTION("test8")
+ {
+ XmlNodePtr node = XML::findFirstChildByName(root, "test8");
+ readItemStatsVector(effect, node, fields);
+ REQUIRE(effect.size() == 1);
+ REQUIRE(effect[0] == "Weight -2");
+ }
+
delete2(userPalette);
delete2(theme);
delete2(client);