OSDN Git Service

NMEAパケットの部分実装(GPDTM, GPGBS, GPGLL)
[yubeshi/yubeshi.git] / YubeshiTest / HeightTest.cs
1 /*\r
2  *      Yubeshi GPS Parser\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 NUnit.Framework;\r
12 using Yubeshi;\r
13 \r
14 namespace YubeshiTest\r
15 {\r
16     [TestFixture]\r
17     class HeightTest\r
18     {\r
19 \r
20         [Test]\r
21         public void FromDouble()\r
22         {\r
23             Height h = new Height(123.45);\r
24             Assert.AreEqual(123.45, (double)h);\r
25             Assert.AreEqual(Height.Base.Unknown, h.BaseLevel);\r
26         }\r
27 \r
28         [Test]\r
29         public void Add()\r
30         {\r
31             Height h = new Height(123.45, Height.Base.Wgs84Ellipsoid);\r
32             Height ha = h + 1.0;\r
33             ha = 2.0 + ha;\r
34             Assert.AreEqual(126.45, (double)ha);\r
35             Assert.AreEqual(Height.Base.Wgs84Ellipsoid, ha.BaseLevel);\r
36         }\r
37 \r
38         [Test]\r
39         public void Sub()\r
40         {\r
41             Height h1 = new Height(123.45, Height.Base.Wgs84Ellipsoid);\r
42             Height h2 = new Height(67.89, Height.Base.Wgs84Ellipsoid);\r
43 \r
44             double hs = h1 - h2;\r
45             Assert.AreEqual(55.56, (double)hs);\r
46         }\r
47 \r
48         [Test]\r
49         [ExpectedException(typeof(InvalidOperationException))]\r
50         public void InvalidSub()\r
51         {\r
52             Height h1 = new Height(123.45, Height.Base.Wgs84Ellipsoid);\r
53             Height h2 = new Height(67.89, Height.Base.Geoid);\r
54             double hs = h1 - h2;\r
55         }\r
56 \r
57         [Test]\r
58         public void IsAltitude()\r
59         {\r
60             Assert.True(new Height(0, Height.Base.Geoid).IsAltitude);\r
61             Assert.True(new Height(1, Height.Base.MeanSeaLevel).IsAltitude);\r
62             Assert.False(new Height(2, Height.Base.Wgs84Ellipsoid).IsAltitude);\r
63         }\r
64     }\r
65 }\r