OSDN Git Service

8860形式のLWBBWINFの一部を反映するように変更(#25000)
[karinto/karinto.git] / KarintoTest / HiokiHicorderDataReaderTest.cs
1 /*\r
2  *      Karinto Library Project\r
3  *\r
4  *      This software is distributed under a zlib-style license.\r
5  *      See license.txt for more information.\r
6  */\r
7 \r
8 using System;\r
9 using System.Collections.Generic;\r
10 using System.Text;\r
11 using System.Diagnostics;\r
12 using Karinto;\r
13 using NUnit.Framework;\r
14 using AnalogChannel = Karinto.Xml.Hioki.HicorderAnalogChannelRow;\r
15 \r
16 namespace KarintoTest\r
17 {\r
18     [TestFixture]\r
19     public class HiokiHicorderDataReaderTest\r
20     {\r
21         private static double e = 1e-6;\r
22 \r
23         [Test]\r
24         public void Read8855()\r
25         {\r
26             HiokiHicorderDataReader reader = new HiokiHicorderDataReader();\r
27             HiokiHicorderData data = reader.Read("Resources/hioki8855.mem");\r
28 \r
29             Assert.AreEqual("8855", data.Settings.Model);\r
30             Assert.AreEqual("V 2.55", data.Settings.RomVersion);\r
31             Assert.AreEqual("MEM", data.Settings.Function);\r
32             Assert.AreEqual("100DIV", data.Settings.Shot);\r
33             Assert.AreEqual(123, data.Settings.SaveDataNumber);\r
34             DateTime d = new DateTime(2010, 11, 12, 13, 14, 15, 160, DateTimeKind.Local);\r
35             Assert.AreEqual(d, data.Settings.TrigDate);\r
36             Assert.AreEqual(100, data.Settings.SamplePerDiv);\r
37             Assert.AreEqual(200e-6m, data.Settings.TimePerDiv);\r
38             Assert.AreEqual(2e-6m, data.Settings.TimePerSample);\r
39             Assert.AreEqual("SINGLE", data.Settings.TrigMode);\r
40             Assert.AreEqual("OR", data.Settings.TrigSource);\r
41             Assert.AreEqual("0 %", data.Settings.PreTrig);\r
42             Assert.AreEqual(2, data.Settings.UseChannel);\r
43             Assert.AreEqual("SET&COM", data.Settings.TitleSetting);\r
44             Assert.AreEqual("KarintoTest", data.Settings.Title);\r
45 \r
46             AnalogChannel ch1 = data.ChannelData[0];\r
47             Assert.AreEqual(data.Ch1, ch1);\r
48             Assert.AreEqual(123, ch1.Length);\r
49             Assert.AreEqual(0.84, ch1[0], 0.84 * e);\r
50             Assert.AreEqual(0.9025, ch1[50], 0.9025 * e);\r
51             Assert.AreEqual(0.9925, ch1[122], 0.9925 * e);\r
52 \r
53             AnalogChannel ch2 = data.Ch2;\r
54             Assert.AreEqual(123, ch2.Length);\r
55             Assert.AreEqual(0.0, ch2[0], 0.0 * e);\r
56             Assert.AreEqual(0.04, ch2[50], 0.04 * e);\r
57             Assert.AreEqual(0.0976, ch2[122], 0.0976 * e);\r
58 \r
59             Assert.AreEqual(data.Ch1, data.GetAnalogChannel(1));\r
60             Assert.AreEqual(data.Ch2, data.GetAnalogChannel(2));\r
61             Assert.AreEqual(data.Units[0][1], data.GetAnalogChannel(1));\r
62             Assert.AreEqual(data.Units[0][2], data.GetAnalogChannel(2));\r
63         }\r
64 \r
65         [Test]\r
66         public void Read886050()\r
67         {\r
68             HiokiHicorderDataReader reader = new HiokiHicorderDataReader();\r
69             HiokiHicorderData data = reader.Read("Resources/hioki886050.mem");\r
70             Assert.AreEqual("8860-50", data.Settings.Model);\r
71             Assert.AreEqual("V 3.09", data.Settings.RomVersion);\r
72             Assert.AreEqual("MEM", data.Settings.Function);\r
73             Assert.AreEqual("200 DIV", data.Settings.Shot);\r
74             Assert.AreEqual(123, data.Settings.SaveDataNumber);\r
75             DateTime d = new DateTime(2010, 11, 12, 13, 14, 15, 160, DateTimeKind.Local);\r
76             Assert.AreEqual(d, data.Settings.TrigDate);\r
77             Assert.AreEqual(100, data.Settings.SamplePerDiv);\r
78             Assert.AreEqual(20e-3m, data.Settings.TimePerDiv);\r
79             Assert.AreEqual(200e-6m, data.Settings.TimePerSample);\r
80             Assert.AreEqual("AUTO", data.Settings.TrigMode);\r
81             Assert.AreEqual("OR", data.Settings.TrigSource);\r
82             Assert.AreEqual("0%", data.Settings.PreTrig);\r
83             Assert.AreEqual(2, data.Settings.UseChannel);\r
84             Assert.AreEqual("SETTING", data.Settings.TitleSetting);\r
85             Assert.AreEqual("KarintoTest", data.Settings.Title);\r
86 \r
87             AnalogChannel ch1 = data.GetAnalogChannel(1, 1);\r
88             Assert.AreEqual(123, ch1.Length);\r
89             Assert.AreEqual(-0.19, ch1[0], 0.19 * e);\r
90             Assert.AreEqual(-0.1275, ch1[50], 0.1275 * e);\r
91             Assert.AreEqual(-37.5e-3, ch1[122], 37.5e-3 * e);\r
92 \r
93             AnalogChannel ch2 = data.GetAnalogChannel(1, 2);\r
94             Assert.AreEqual(123, ch2.Length);\r
95             Assert.AreEqual(-243.75e-6, ch2[0], 243.75e-6 * e);\r
96             Assert.AreEqual(39.75625e-3, ch2[50], 39.75625e-3 * e);\r
97             Assert.AreEqual(97.35625e-3, ch2[122], 97.35625e-3 * e);\r
98         }\r
99     }\r
100 }\r