1 // Copyright (C) 2018 Kazuhiro Fujieda <fujieda@users.osdn.me>
\r
3 // Licensed under the Apache License, Version 2.0 (the "License");
\r
4 // you may not use this file except in compliance with the License.
\r
5 // You may obtain a copy of the License at
\r
7 // http://www.apache.org/licenses/LICENSE-2.0
\r
9 // Unless required by applicable law or agreed to in writing, software
\r
10 // distributed under the License is distributed on an "AS IS" BASIS,
\r
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
12 // See the License for the specific language governing permissions and
\r
13 // limitations under the License.
\r
15 using System.Drawing;
\r
16 using ExpressionToCodeLib;
\r
17 using KancolleSniffer.Model;
\r
18 using KancolleSniffer.View.ListWindow;
\r
19 using Microsoft.VisualStudio.TestTools.UnitTesting;
\r
21 namespace KancolleSniffer.Test
\r
23 using Sniffer = SnifferTest.TestingSniffer;
\r
26 public class FleetDataTest
\r
29 /// 編成で艦隊をまたがって艦娘を交換する
\r
32 public void ExchangeFleetMember()
\r
34 var sniffer = new Sniffer();
\r
35 var expected = new FleetData.Record
\r
38 Color = SystemColors.Control,
\r
39 Equip = new FleetData.EquipRecord(""),
\r
45 Spec = "砲64.0 潜82.4",
\r
46 Spec2 = "雷104.0 夜158.0"
\r
49 SnifferTest.SniffLogFile(sniffer, "deck_002");
\r
50 SnifferTest.SniffLogFile(sniffer, "deck_003");
\r
51 var data = FleetData.Create(sniffer);
\r
52 PAssert.That(() => CompareFleetRecord(data[13], expected));
\r
55 private bool CompareFleetRecord(FleetData.Record a, FleetData.Record b)
\r
57 foreach (var property in typeof(FleetData.Record).GetProperties())
\r
59 var aVal = property.GetValue(a);
\r
60 var bVal = property.GetValue(b);
\r
67 if (aVal.ToString() == bVal.ToString())
\r
75 public void ShowSpeed()
\r
77 var sniffer = new Sniffer();
\r
78 SnifferTest.SniffLogFile(sniffer, "speed_001");
\r
79 var table = FleetData.Create(sniffer);
\r
80 PAssert.That(() => table[0].Fleet == "第一 高速+ 火525 空600 潜39 索724" &&
\r
81 table[37].Fleet == "第二 高速 火185 空215 潜242 索166");
\r
85 public void ItemString()
\r
87 var item = new ItemStatus
\r
91 Name = "大発動艇(八九式中戦車&陸戦隊)"
\r
94 Assert.AreEqual(item.Spec.Name, FleetData.Record.CreateItemRecord(item, 7, 7).Equip.ToString(0));
\r
96 Assert.AreEqual("大発動艇(八九式中戦車&陸戦★10", FleetData.Record.CreateItemRecord(item, 7, 7).Equip.ToString(0));
\r
98 var aircraft = new ItemStatus
\r
100 Spec = new ItemSpec
\r
102 Name = "零式艦戦53型(岩本隊)",
\r
106 Assert.AreEqual(aircraft.Spec.Name, FleetData.Record.CreateItemRecord(aircraft, 7, 7).Equip.ToString(0));
\r
107 aircraft.Level = 10;
\r
108 Assert.AreEqual("零式艦戦53型(岩本★10", FleetData.Record.CreateItemRecord(aircraft, 7, 7).Equip.ToString(0));
\r