X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=KancolleSniffer.Test%2FSnifferTest.cs;h=ec3c5ef5aa9a895f9f4632cd4d099be87ba9f963;hb=29f7c97d3b67bcd3fe7f4d6e779ebe1760828ea4;hp=76d8010898b7f798b887af6ce3839770ec4e94f5;hpb=18bd104466d3f7a81d5ae7aa66986bc37e3ca54b;p=kancollesniffer%2FKancolleSniffer.git
diff --git a/KancolleSniffer.Test/SnifferTest.cs b/KancolleSniffer.Test/SnifferTest.cs
index 76d8010..ec3c5ef 100644
--- a/KancolleSniffer.Test/SnifferTest.cs
+++ b/KancolleSniffer.Test/SnifferTest.cs
@@ -17,8 +17,11 @@ using System.Collections.Generic;
using System.IO;
using System.IO.Compression;
using System.Linq;
+using DynaJson;
using ExpressionToCodeLib;
+using KancolleSniffer.Model;
using Microsoft.VisualStudio.TestTools.UnitTesting;
+using static System.Math;
namespace KancolleSniffer.Test
{
@@ -28,7 +31,7 @@ namespace KancolleSniffer.Test
public class SnifferTest
{
[ClassInitialize]
- public static void Intialize(TestContext context)
+ public static void Initialize(TestContext context)
{
ExpressionToCodeConfiguration.GlobalAssertionConfiguration = ExpressionToCodeConfiguration
.GlobalAssertionConfiguration.WithPrintedListLengthLimit(200).WithMaximumValueLength(1000);
@@ -70,7 +73,7 @@ namespace KancolleSniffer.Test
} while (!line.StartsWith(s));
triple.Add(line.Substring(s.Length));
}
- var json = JsonParser.Parse(triple[2]);
+ var json = JsonObject.Parse(triple[2]);
sniffer.Sniff(triple[0], triple[1], json);
action?.Invoke(sniffer);
}
@@ -78,194 +81,25 @@ namespace KancolleSniffer.Test
}
///
- /// 4-2-1ã§éå¹å¯¾æ½é·æãå«ãæ¦éãè¡ã
+ /// ä¸ã¤ãã¢ã¤ãã ããªãå ´åã®require_info
///
[TestMethod]
- public void NormalBattleWithVriousTypesOfAttack()
+ public void NoUseItemRequireInfo()
{
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "battle_001");
- PAssert.That(() => sniffer.Battle.ResultRank == BattleResultRank.A);
- AssertEqualBattleResult(sniffer,
- new[] {57, 66, 50, 65, 40, 42}, new[] {34, 5, 0, 0, 0, 0});
- }
-
- private void AssertEqualBattleResult(Sniffer sniffer, IEnumerable expected, IEnumerable enemy,
- string msg = null)
- {
- var result = sniffer.Fleets[0].Ships.Select(s => s.NowHp);
- PAssert.That(() => expected.SequenceEqual(result), msg);
- var enemyResult = sniffer.Battle.Result.Enemy.Main.Select(s => s.NowHp);
- PAssert.That(() => enemy.SequenceEqual(enemyResult), msg);
- }
-
- ///
- /// éå¹å¤æ¦ã§æ½æ°´è¦å士ããè¦åããã
- ///
- [TestMethod]
- public void SpMidnightWithoutBattle()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "sp_midnight_001");
- PAssert.That(() => sniffer.Battle.ResultRank == BattleResultRank.D);
- }
-
- ///
- /// å¤æ¦ã§æ¦è¦ãæ»æããã¨ä¸åã§ä¸çºåã®ãã¼ã¿ãæ¥ã
- /// ãã®ãã¡åå¨ããªãæ»æã¯ã¿ã¼ã²ããããã¡ã¼ã¸ã¨ãã«-1ã«ãªã
- ///
- [TestMethod]
- public void BattleShipAttackInMidnight()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "midnight_001");
- PAssert.That(() => sniffer.Battle.ResultRank == BattleResultRank.S);
- }
-
- ///
- /// 7é»ç·¨æã®æ¦éã§7é»ç®ãæ»æããã
- ///
- [TestMethod]
- public void Ship7Battle()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "ship7battle_001");
- PAssert.That(() => sniffer.Battle.ResultRank == BattleResultRank.P);
- }
-
- ///
- /// æ¼ç¿ã®ãã¨ã®portã§æ¦éçµæã®æ¤è¨¼ãè¡ããªã
- ///
- [TestMethod]
- public void NotVerifyBattleResultAfterPractice()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "practice_001");
- PAssert.That(() => !sniffer.IsBattleResultStatusError);
- }
-
- ///
- /// æ¼ç¿ã§ãã¡ã³ã³ãçºåãããªã
- ///
- [TestMethod]
- public void NotTriggerDameconInPractice()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "practice_002");
- PAssert.That(() => !sniffer.Battle.DisplayedResultRank.IsError);
- }
-
- ///
- /// æ¼ç¿ä¸ã®è¦ãè¦ä¿®å¾©ãªã¹ãã«è¼ããªã
- ///
- [TestMethod]
- public void DamagedShipListNotShowShipInPractice()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "practice_003");
- PAssert.That(() => sniffer.RepairList.Select(s => s.Name).SequenceEqual(new[] {"é£é¾æ¹äº", "ç¿é¶´æ¹äº"}));
- }
-
- ///
- /// é£åè¦éãéå¹é·æã§è¢«å¼¾ãã
- ///
- [TestMethod]
- public void OpeningTorpedoInCombinedBattle()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "combined_battle_001");
- PAssert.That(() => !sniffer.IsBattleResultStatusError);
- }
-
- ///
- /// é£åè¦éãéå¹é·æã§è¢«å¼¾ãã
- ///
- [TestMethod]
- public void ClosingTorpedoInCombinedBattle()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "combined_battle_002");
- PAssert.That(() => !sniffer.IsBattleResultStatusError);
- }
-
- ///
- /// 第ä¸ã6é»æªæºã®é£åè¦éã§æ¦éãã
- ///
- [TestMethod]
- public void SmallCombinedFleetBattle()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "combined_battle_003");
- PAssert.That(() => !sniffer.IsBattleResultStatusError);
- }
-
- ///
- /// è·è¡éé¿ãã
- ///
- [TestMethod]
- public void EscapeWithEscort()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "escape_001");
- var fleets = sniffer.Fleets;
- PAssert.That(() => fleets[0].Ships[5].Escaped &&
- fleets[1].Ships[2].Escaped);
- }
-
- ///
- /// éå¹å¤æ¦ã«æ¯æ´ãæ¥ã
- ///
- [TestMethod]
- public void SpMidnightSupportAttack()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "sp_midnight_002");
- PAssert.That(() => !sniffer.Battle.DisplayedResultRank.IsError);
- }
-
- ///
- /// æææ¦ãè¡ã
- ///
- [TestMethod]
- public void NightToDay()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "nighttoday_001");
- PAssert.That(() => !sniffer.Battle.DisplayedResultRank.IsError && !sniffer.IsBattleResultStatusError);
- }
-
- ///
- /// åè¦éé¿ãã
- ///
- [TestMethod]
- public void EscapeWithoutEscort()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "escape_002");
- PAssert.That(() => sniffer.Fleets[2].Ships[1].Escaped);
- PAssert.That(() => !sniffer.IsBattleResultStatusError);
- }
-
- ///
- /// åºææã«å¤§ç ´ãã¦ããè¦å¨ããããè¦åãã
- ///
- [TestMethod]
- public void DamagedShipWarningOnMapStart()
- {
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "mapstart_001");
- PAssert.That(() => sniffer.BadlyDamagedShips.SequenceEqual(new[] {"大潮"}));
+ var sniffer = new Sniffer(true);
+ SniffLogFile(sniffer, "require_info_001");
+ Assert.IsTrue(true);
}
///
- /// é£åè¦éã«å¤§ç ´è¦ãããç¶æ
ã§ç¬¬3è¦éãåºæããã¨ãã«è¦åããªã
+ /// ä¸ã¤ãã¢ã¤ãã ããªãå ´åã®useitem
///
[TestMethod]
- public void NotWarnDamagedShipInCombinedFleetOnMapStart()
+ public void NoUseItem()
{
- var sniffer = new Sniffer();
- SniffLogFile(sniffer, "mapstart_002");
- PAssert.That(() => !sniffer.BadlyDamagedShips.Any());
+ var sniffer = new Sniffer(true);
+ SniffLogFile(sniffer, "useitem_001");
+ Assert.IsTrue(true);
}
///
@@ -277,9 +111,9 @@ namespace KancolleSniffer.Test
var sniffer = new Sniffer();
SniffLogFile(sniffer, "fighterpower_001");
var fleet = sniffer.Fleets[0];
- PAssert.That(() => fleet.FighterPower.SequenceEqual(new[] {156, 159}));
+ PAssert.That(() => fleet.FighterPower == new Range(156, 159));
SniffLogFile(sniffer, "fighterpower_002");
- PAssert.That(() => fleet.FighterPower.SequenceEqual(new[] {140, 143}), "å
¨æ»
ããã¹ãããããã");
+ PAssert.That(() => fleet.FighterPower == new Range(140, 143), "å
¨æ»
ããã¹ãããããã");
}
///
@@ -290,20 +124,20 @@ namespace KancolleSniffer.Test
{
var sniffer = new Sniffer();
SniffLogFile(sniffer, "fighterpower_003");
- PAssert.That(() => sniffer.Fleets[0].FighterPower.SequenceEqual(new[] {135, 135}));
+ PAssert.That(() => sniffer.Fleets[0].FighterPower == new Range(135, 135));
}
///
/// åºå°èªç©ºéã®å¶ç©ºå¤ãæ£ããè¨ç®ãã
///
[TestMethod]
- public void FighterPowerOfBaseAirCorps()
+ public void FighterPowerOfAirBase()
{
var sniffer = new Sniffer();
- SniffLogFile(sniffer, "baseaircorps_001");
- PAssert.That(() => sniffer.BaseAirCorps[0].AirCorps[0].FighterPower.AirCombat[1] == 301);
- sniffer.BaseAirCorps[0].AirCorps[0].Action = 2; // é²ç©º
- PAssert.That(() => sniffer.BaseAirCorps[0].AirCorps[0].FighterPower.Interception[1] == 320);
+ SniffLogFile(sniffer, "airbase_001");
+ PAssert.That(() => sniffer.AirBase[0].AirCorps[0].CalcFighterPower().AirCombat.Max == 301);
+ sniffer.AirBase[0].AirCorps[0].Action = 2; // é²ç©º
+ PAssert.That(() => sniffer.AirBase[0].AirCorps[0].CalcFighterPower().Interception.Max == 320);
}
///
@@ -313,8 +147,8 @@ namespace KancolleSniffer.Test
public void FighterPowerWithReconBonus()
{
var sniffer = new Sniffer();
- SniffLogFile(sniffer, "baseaircorps_002");
- PAssert.That(() => sniffer.BaseAirCorps[0].AirCorps[2].FighterPower.Interception[0] == 353);
+ SniffLogFile(sniffer, "airbase_002");
+ PAssert.That(() => sniffer.AirBase[0].AirCorps[2].CalcFighterPower().Interception.Min == 353);
}
///
@@ -324,19 +158,19 @@ namespace KancolleSniffer.Test
public void FighterPowerOfLandBasedAttackAircraft()
{
var sniffer = new Sniffer();
- SniffLogFile(sniffer, "baseaircorps_003");
- PAssert.That(() => sniffer.BaseAirCorps[1].AirCorps[0].FighterPower.AirCombat[0] == 121);
+ SniffLogFile(sniffer, "airbase_003");
+ PAssert.That(() => sniffer.AirBase[1].AirCorps[0].CalcFighterPower().AirCombat.Min == 121);
}
///
/// åºå°èªç©ºéã®åºæã³ã¹ããè¨ç®ãã
///
[TestMethod]
- public void CostForSortieOfBaseAirCorps()
+ public void CostForSortieOfAirBase()
{
var sniffer = new Sniffer();
- SniffLogFile(sniffer, "baseaircorps_003");
- PAssert.That(() => sniffer.BaseAirCorps[1].AirCorps[0].CostForSortie.SequenceEqual(new[] {99, 47}));
+ SniffLogFile(sniffer, "airbase_003");
+ PAssert.That(() => sniffer.AirBase[1].AirCorps[0].CostForSortie.SequenceEqual(new[] {99, 47}));
}
///
@@ -346,8 +180,28 @@ namespace KancolleSniffer.Test
public void FighterPowerOfLandBAseFighter()
{
var sniffer = new Sniffer();
- SniffLogFile(sniffer, "baseaircorps_004");
- PAssert.That(() => sniffer.BaseAirCorps[1].AirCorps[0].FighterPower.AirCombat[0] == 328);
+ SniffLogFile(sniffer, "airbase_004");
+ PAssert.That(() => sniffer.AirBase[1].AirCorps[0].CalcFighterPower().AirCombat.Min == 328);
+ }
+
+ ///
+ /// é¸ä¸åµå¯æ©ã®å¹æãåæ ããå¶ç©ºå¤ãè¨ç®ãã
+ ///
+ [TestMethod]
+ public void FighterPowerWithLandBaseReconBonus()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "airbase_005");
+
+ // äºå¼é¸ä¸åµå¯æ©(çç·´)
+ var fp1 = sniffer.AirBase[0].AirCorps[0].CalcFighterPower();
+ PAssert.That(() => fp1.AirCombat.Min == 274);
+ PAssert.That(() => fp1.Interception.Min == 302);
+
+ // äºå¼é¸ä¸åµå¯æ©
+ var fp3 = sniffer.AirBase[0].AirCorps[2].CalcFighterPower();
+ PAssert.That(() => fp3.AirCombat.Min == 206);
+ PAssert.That(() => fp3.Interception.Min == 310);
}
///
@@ -359,11 +213,23 @@ namespace KancolleSniffer.Test
var sniffer = new Sniffer();
SniffLogFile(sniffer, "lineofsight_001");
var fleet = sniffer.Fleets[0];
- PAssert.That(() => Math.Abs(fleet.GetLineOfSights(1) - 39.45) < 0.01);
- PAssert.That(() => Math.Abs(fleet.GetLineOfSights(3) - 115.19) < 0.01);
- PAssert.That(() => Math.Abs(fleet.GetLineOfSights(4) - 153.06) < 0.01);
+ PAssert.That(() => Abs(fleet.GetLineOfSights(1) - 39.45) < 0.01);
+ PAssert.That(() => Abs(fleet.GetLineOfSights(3) - 115.19) < 0.01);
+ PAssert.That(() => Abs(fleet.GetLineOfSights(4) - 153.06) < 0.01);
SniffLogFile(sniffer, "lineofsight_002");
- PAssert.That(() => Math.Abs(fleet.GetLineOfSights(1) - -25.10) < 0.01, "è¦éã«ç©ºãããã");
+ PAssert.That(() => Abs(fleet.GetLineOfSights(1) - -25.10) < 0.01, "è¦éã«ç©ºãããã");
+ }
+
+ ///
+ /// è£å¼·å¢è¨ã¹ãããã«è¦å¼µãå¡ãè£
åããå ´åã®å¤å®å¼(33)
+ ///
+ [TestMethod]
+ public void LineOfSightWithExSlot()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "lineofsight_003");
+ var fleet = sniffer.Fleets[0];
+ PAssert.That(() => Abs(fleet.GetLineOfSights(1) - -28.8) < 0.01);
}
///
@@ -374,7 +240,7 @@ namespace KancolleSniffer.Test
{
var sniffer = new Sniffer();
SniffLogFile(sniffer, "contact_001");
- PAssert.That(() => Math.Abs(sniffer.Fleets[0].ContactTriggerRate - 1.8182) < 0.0001);
+ PAssert.That(() => Abs(sniffer.Fleets[0].ContactTriggerRate - 1.8182) < 0.0001);
}
///
@@ -418,17 +284,19 @@ namespace KancolleSniffer.Test
{
var sniffer = new Sniffer();
SniffLogFile(sniffer, "nightbattlepower_001");
- var ships = sniffer.Fleets[0].Ships;
+ var ships = sniffer.Fleets[0].ActualShips;
PAssert.That(() =>
ships.Select(ship => (int)(ship.NightBattlePower * 100))
.SequenceEqual(new[] {11202, 14985, 20092, 17354}));
// å¤éä½æ¦èªç©ºè¦å¡ãå¤ã
- ships[0].Slot[3] = ships[1].Slot[2] = ships[3].Slot[2] = new ItemStatus();
+ ships[0].FreeSlot(3);
+ ships[1].FreeSlot(2);
+ ships[3].FreeSlot(2);
PAssert.That(() =>
ships.Select(ship => (int)(ship.NightBattlePower * 100))
.SequenceEqual(new[] {6900, 7500, 20092, 0}));
// Ark RoyalããSwordfishãå¤ã
- ships[0].Slot[0] = new ItemStatus();
+ ships[0].FreeSlot(0);
PAssert.That(() => (int)ships[0].NightBattlePower == 0);
}
@@ -462,6 +330,50 @@ namespace KancolleSniffer.Test
}
///
+ /// 対æ½æ»æåãè¨ç®ãã
+ ///
+ [TestMethod]
+ public void AntiSubmarine()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "antisubmarine_001");
+ PAssert.That(() => Abs(sniffer.Fleets[0].Ships[0].EffectiveAntiSubmarine - 92.16) < 0.01);
+ PAssert.That(() => Abs(sniffer.Fleets[0].Ships[1].EffectiveAntiSubmarine - 84.49) < 0.01);
+ PAssert.That(() => Abs(sniffer.Fleets[0].Ships[2].EffectiveAntiSubmarine - 57.84) < 0.01);
+ PAssert.That(() => Abs(sniffer.Fleets[0].Ships[3].EffectiveAntiSubmarine - 61.37) < 0.01);
+ }
+
+ ///
+ /// å¤æ¦çºåçãè¨ç®ãã
+ ///
+ [TestMethod]
+ public void NightContactTriggerRate()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "nightrecon_001");
+ PAssert.That(() => Abs(sniffer.Fleets[0].NightContactTriggerRate - 84.64) < 0.01);
+ var ship = sniffer.Fleets[0].Ships[0];
+ var empty = Enumerable.Repeat(new ItemStatus(), 5).ToArray();
+ var orig = ship.Slot;
+ ship.Slot = empty;
+ PAssert.That(() => Abs(sniffer.Fleets[0].NightContactTriggerRate - 52) < 0.01);
+ ship.Slot = orig;
+ sniffer.Fleets[0].Ships[1].Slot = empty;
+ PAssert.That(() => Abs(sniffer.Fleets[0].NightContactTriggerRate - 68) < 0.01);
+ }
+
+ ///
+ /// èªç©ºåµå¯ã¹ã³ã¢ãè¨ç®ãã
+ ///
+ [TestMethod]
+ public void AirReconScore()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "airrecon_score_001");
+ PAssert.That(() => Abs(sniffer.Fleets[0].AirReconScore - 26.88) < 0.01);
+ }
+
+ ///
/// ç·¨æã§ç©ºãçªå·ã使ã£ããã¼ãã¼ããæ£ããåæ ãã
///
[TestMethod]
@@ -512,6 +424,18 @@ namespace KancolleSniffer.Test
}
///
+ /// éä¼´è¦ä¸æ¬è§£é¤ãå®è¡ãã
+ ///
+ [TestMethod]
+ public void WithdrawAccompanyingShipsAtOnce()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "deck_006");
+ var result = sniffer.Fleets[0].Deck;
+ PAssert.That(() => new[] {135, -1, -1, -1, -1, -1}.SequenceEqual(result));
+ }
+
+ ///
/// ç·¨æå±éãæ£ããåæ ãã
///
[TestMethod]
@@ -534,37 +458,72 @@ namespace KancolleSniffer.Test
}
///
- /// è£
åã®äº¤æãæ£ããåæ ãã
+ /// è£
å交æã®APIã®ä»æ§å¤æ´ã«å¯¾å¿ãã
///
[TestMethod]
- public void SlotExchange()
+ public void SlotExchangeVersion2()
{
var sniffer = new Sniffer();
- SniffLogFile(sniffer, "slot_exchange_001");
+ SniffLogFile(sniffer, "slot_exchange_002");
var result = sniffer.Fleets[0].Ships[0].Slot.Select(item => item.Id);
- PAssert.That(() => new[] {26096, 30571, 77694, 61383, -1}.SequenceEqual(result));
+ PAssert.That(() => new[] {157798, 59001, 157804, -1, -1}.SequenceEqual(result));
}
///
/// è¿ä»£åæ¹ä¿®ã®çµæãããã«åæ ãã
///
[TestMethod]
- public void PowerupResult()
+ public void PowerUpResult()
{
var sniffer = new Sniffer();
SniffLogFile(sniffer, "powerup_001");
- PAssert.That(() => Math.Abs(sniffer.Fleets[0].Ships[0].EffectiveFirepower - 30) < 0.0001);
+ PAssert.That(() => Abs(sniffer.Fleets[0].Ships[0].EffectiveFirepower - 30) < 0.0001);
+ }
+
+ ///
+ /// è¿ä»£åæ¹ä¿®ã«ããè¦å¨æ°ã¨è£
åæ°ã®å¤å
+ ///
+ [TestMethod]
+ public void PowerUpCount()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "powerup_001");
+ PAssert.That(() => sniffer.ShipCounter.Now == 204);
+ PAssert.That(() => sniffer.ItemCounter.Now == 932);
}
///
/// è¿ä»£åæ¹ä¿®ãäºéã«è¡ãããå ´åã«å¯¾å¿ãã
///
[TestMethod]
- public void DuplicatedPowerup()
+ public void DuplicatedPowerUp()
{
var sniffer = new Sniffer();
SniffLogFile(sniffer, "powerup_002");
- PAssert.That(() => sniffer.Item.NowShips == 218);
+ PAssert.That(() => sniffer.ShipCounter.Now == 218);
+ }
+
+ ///
+ /// è£
å解é¤å¾ã®è¿ä»£åæ¹ä¿®
+ ///
+ [TestMethod]
+ public void PowerUpDetachItem()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "powerup_003");
+ PAssert.That(() => sniffer.ShipCounter.Now == 317);
+ PAssert.That(() => sniffer.ItemCounter.Now == 1390);
+ }
+
+ ///
+ /// ship2ãå¾
ããã«ã±ãã³ã³ã®çµæãåæ ãã
+ ///
+ [TestMethod]
+ public void MarriageResult()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "marriage_001");
+ PAssert.That(() => sniffer.Fleets[0].Ships[2].Level == 100);
}
///
@@ -585,12 +544,16 @@ namespace KancolleSniffer.Test
[TestMethod]
public void CountItem()
{
- var sniffer1 = new Sniffer();
- SniffLogFile(sniffer1, "createitem_001");
- PAssert.That(() => sniffer1.Item.NowEquips == 900);
- var sniffer2 = new Sniffer();
- SniffLogFile(sniffer2, "createship_001");
- PAssert.That(() => sniffer2.Item.NowEquips == 904);
+ var createItems = new Sniffer();
+ SniffLogFile(createItems, "createitem_001");
+ Assert.AreEqual(900, createItems.ItemCounter.Now);
+ PAssert.That(() => createItems.ItemCounter.Now == 900);
+ var createShips = new Sniffer();
+ SniffLogFile(createShips, "createship_001");
+ Assert.AreEqual(904, createShips.ItemCounter.Now);
+ var multiItems = new Sniffer();
+ SniffLogFile(multiItems, "createitem_002");
+ Assert.AreEqual(1307, multiItems.ItemCounter.Now);
}
///
@@ -599,12 +562,15 @@ namespace KancolleSniffer.Test
[TestMethod]
public void WarnItemCount()
{
+ Action func = i => { };
var sniffer1 = new Sniffer();
SniffLogFile(sniffer1, "item_count_001");
- PAssert.That(() => sniffer1.Item.AlarmEquips, "åºæããæ¯æ¸¯ã«æ»ã£ãã¨ã");
+ func.Invoke(sniffer1.ItemCounter.Now); // Nowãèªã¾ãªãã¨Alarmãç«ããªã
+ PAssert.That(() => sniffer1.ItemCounter.Alarm, "åºæããæ¯æ¸¯ã«æ»ã£ãã¨ã");
var sniffer2 = new Sniffer();
SniffLogFile(sniffer2, "item_count_002");
- PAssert.That(() => sniffer2.Item.AlarmEquips, "ãã°ã¤ã³ããã¨ã");
+ func.Invoke(sniffer2.ItemCounter.Now);
+ PAssert.That(() => sniffer2.ItemCounter.Alarm, "ãã°ã¤ã³ããã¨ã");
}
///
@@ -766,8 +732,8 @@ namespace KancolleSniffer.Test
{
var sniffer = new Sniffer();
SniffLogFile(sniffer, "destroyship_001");
- PAssert.That(() => sniffer.Item.NowShips == 250);
- PAssert.That(() => sniffer.Item.NowEquips == 1118);
+ PAssert.That(() => sniffer.ShipCounter.Now == 250);
+ PAssert.That(() => sniffer.ItemCounter.Now == 1118);
PAssert.That(() => sniffer.Material.Current.Take(4).SequenceEqual(new[] {285615, 286250, 291010, 284744}));
}
@@ -779,8 +745,7 @@ namespace KancolleSniffer.Test
{
var sniffer = new Sniffer(true);
SniffLogFile(sniffer, "twofleets_001");
- var expected = Enumerable.Repeat(new ChargeStatus(5, 5), ShipInfo.FleetCount);
- PAssert.That(() => expected.SequenceEqual(sniffer.Fleets.Select(f => f.ChargeStatus)));
+ PAssert.That(() => new[]{5, 5, 0, 0}.SequenceEqual(sniffer.Fleets.Select(f => f.ChargeStatus.Fuel)));
}
///
@@ -791,7 +756,7 @@ namespace KancolleSniffer.Test
{
var sniffer = new Sniffer();
SniffLogFile(sniffer, "ship2_001");
- PAssert.That(() => sniffer.Item.NowShips == 243);
+ PAssert.That(() => sniffer.ShipCounter.Now == 243);
}
///
@@ -858,10 +823,76 @@ namespace KancolleSniffer.Test
}
///
+ /// æµ·åã²ã¼ã¸ã®æ
å ±ãçæãã
+ ///
+ [TestMethod]
+ public void AreaGauge()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "mapgauge_001");
+ PAssert.That(() =>
+ sniffer.MiscText ==
+ "[æµ·åã²ã¼ã¸]\r\n" +
+ "1-6 : æ®ã 5/7\r\n" +
+ "2-5 : æ®ã 4/4\r\n" +
+ "3-5 : æ®ã 4/4\r\n" +
+ "4-4 : æ®ã 4/4\r\n");
+ }
+
+ ///
+ /// 7-2ã®2æ¬ç®ã®æµ·åã²ã¼ã¸ãæ£ãã表示ãã
+ ///
+ [TestMethod]
+ public void SecondAreaGauge()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "mapgauge_002");
+ PAssert.That(() =>
+ sniffer.MiscText ==
+ "[æµ·åã²ã¼ã¸]\r\n" +
+ "1-6 : æ®ã 5/7\r\n" +
+ "2-5 : æ®ã 2/4\r\n" +
+ "5-5 : æ®ã 5/5\r\n" +
+ "6-5 : æ®ã 6/6\r\n" +
+ "7-2 : æ®ã 1/4\r\n");
+ }
+
+ ///
+ /// 2019å¬ã¤ãããã¯ãªã¢æ¸ã¿ãããã®ã²ã¼ã¸æ
å ±ããªã
+ ///
+ [TestMethod]
+ public void ClearedExMapGage()
+ {
+ var miscTextInfo = new MiscTextInfo(null, null);
+ using (var stream = OpenLogFile("mapgauge_003"))
+ {
+ miscTextInfo.InspectMapInfo(JsonObject.Parse(stream.ReadToEnd()));
+ }
+ PAssert.That(() =>
+ miscTextInfo.Text ==
+ "[æµ·åã²ã¼ã¸]\r\n" +
+ "1-6 : æ®ã 5/7\r\n" +
+ "5-5 : æ®ã 5/5\r\n" +
+ "7-2 : æ®ã 1/4\r\n" +
+ "43-2 : HP 1050/1400\r\n");
+ }
+
+ ///
+ /// æ¼ç¿ã®ç²å¾çµé¨å¤ãè¨ç®ãã
+ ///
+ [TestMethod]
+ public void PracticeExpPoint()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "practice_004");
+ PAssert.That(() => sniffer.MiscText == "[æ¼ç¿æ
å ±]\r\næµè¦éå : 第ä¸è¦é\r\nç²å¾çµé¨å¤ : 878\r\nSåå© : 1053");
+ }
+
+ ///
/// æ°è¦ã®ããããè¦ã®åæè£
åæ°ãç»é²ãã
///
[TestMethod]
- public void RecordNumEqipsOfNewDropShip()
+ public void RecordNumEquipsOfNewDropShip()
{
var sniffer = new Sniffer();
SniffLogFile(sniffer, "dropship_001");
@@ -878,8 +909,23 @@ namespace KancolleSniffer.Test
var sniffer = new Sniffer();
sniffer.AdditionalData.RecordNumEquips(11, "", 1);
SniffLogFile(sniffer, "dropship_002");
- PAssert.That(() => sniffer.Item.NowShips == 250);
- PAssert.That(() => sniffer.Item.NowEquips == 1159);
+ PAssert.That(() => sniffer.ShipCounter.Now == 250);
+ PAssert.That(() => sniffer.ItemCounter.Now == 1159);
+ }
+
+ ///
+ /// è¦å¨æ°ãæ°ãã
+ ///
+ [TestMethod]
+ public void CountShips()
+ {
+ var sniffer = new Sniffer();
+ SniffLogFile(sniffer, "ship_count_001");
+ PAssert.That(() => sniffer.ShipCounter.Now == 267 && sniffer.ShipCounter.Alarm, "ãã°ã¤ã³");
+ SniffLogFile(sniffer, "ship_count_002");
+ PAssert.That(() => sniffer.ShipCounter.Now == 266 && sniffer.ShipCounter.Alarm, "建é ");
+ SniffLogFile(sniffer, "ship_count_003");
+ PAssert.That(() => sniffer.ShipCounter.Now == 266 && sniffer.ShipCounter.Alarm, "ãããã");
}
}
}
\ No newline at end of file