OSDN Git Service

戦闘APIの正常形のテストを追加する
authorKazuhiro Fujieda <fujieda@users.osdn.me>
Sat, 18 Nov 2017 15:32:52 +0000 (00:32 +0900)
committerKazuhiro Fujieda <fujieda@users.osdn.me>
Sat, 18 Nov 2017 15:39:18 +0000 (00:39 +0900)
KancolleSniffer.Test/LoggerTest.cs
KancolleSniffer.Test/SnifferTest.cs
KancolleSniffer.Test/logs

index 759e1df..2c7f00e 100644 (file)
@@ -113,6 +113,21 @@ namespace KancolleSniffer.Test
         }\r
 \r
         [TestMethod]\r
+        public void InspectBattleResult()\r
+        {\r
+            var sniffer = new Sniffer();\r
+            var result = "";\r
+            sniffer.SetLogWriter((path, s, h) => { result += s + "|"; }, () => new DateTime(2017, 1, 1));\r
+            sniffer.EnableLog(LogType.Battle);\r
+            SnifferTest.SniffLogFile(sniffer, "battle_001");\r
+            PAssert.That(() =>\r
+                "2017-01-01 00:00:00,カレー洋制圧戦,1,出撃,A,T字戦(有利),警戒陣,梯形陣,敵潜水教導艦隊,,," +\r
+                "隼鷹改二(Lv157),57/62,利根改二(Lv151),66/66,千代田航改二(Lv159),50/65,千歳航改二(Lv159),65/65,大井改二(Lv57),40/43,秋月改(Lv142),42/42," +\r
+                "潜水ヨ級(elite),34/34,潜水ヨ級,5/24,潜水ヨ級,0/24,潜水カ級(elite),0/27,潜水カ級,0/19,潜水カ級,0/19,248~249,0,制空権確保|"\r
+                == result);\r
+        }\r
+\r
+        [TestMethod]\r
         public void InspectMaterial()\r
         {\r
             var sniffer = new Sniffer();\r
index c6d03f7..9fa3e37 100644 (file)
@@ -60,6 +60,28 @@ namespace KancolleSniffer.Test
             }\r
         }\r
 \r
+\r
+        /// <summary>\r
+        /// 4-2-1で開幕対潜雷撃を含む戦闘を行う\r
+        /// </summary>\r
+        [TestMethod]\r
+        public void NormalBattleWithVriousTypesOfAttack()\r
+        {\r
+            var sniffer = new Sniffer();\r
+            SniffLogFile(sniffer, "battle_001");\r
+            PAssert.That(() => sniffer.Battle.ResultRank == BattleResultRank.A);\r
+            AssertEqualBattleResult(sniffer,\r
+                new []{57, 66, 50, 65, 40, 42}, new []{34, 5, 0, 0, 0, 0});\r
+        }\r
+\r
+        private void AssertEqualBattleResult(Sniffer sniffer, IEnumerable<int> expected, IEnumerable<int> enemy, string msg = null)\r
+        {\r
+            var result = sniffer.GetShipStatuses(0).Select(s => s.NowHp);\r
+            PAssert.That(() => expected.SequenceEqual(result), msg);\r
+            var enemyResult = sniffer.Battle.EnemyResultStatus.Select(s => s.NowHp);\r
+            PAssert.That(() => enemy.SequenceEqual(enemyResult), msg);\r
+        }\r
+\r
         /// <summary>\r
         /// 開幕夜戦で潜水艦同士がお見合いする\r
         /// </summary>\r
index d646e5d..e3f682f 160000 (submodule)
@@ -1 +1 @@
-Subproject commit d646e5daaceda98d136ff1b7c13090e4cb7772a4
+Subproject commit e3f682fca7209563e965aa823830fb3fb4e3c9de