Пример #1
0
 public void testMakeErrors()
 {
     try { HCoord.make(91, 12); Assert.Fail(); } catch (ArgumentException) { Assert.IsTrue(true); }
     try { HCoord.make(-90.2, 12); Assert.Fail(); } catch (ArgumentException) { Assert.IsTrue(true); }
     try { HCoord.make(13, 180.009); Assert.Fail(); } catch (ArgumentException) { Assert.IsTrue(true); }
     try { HCoord.make(13, -181); Assert.Fail(); } catch (ArgumentException) { Assert.IsTrue(true); }
 }
Пример #2
0
 public void testIsLng()
 {
     Assert.IsFalse(HCoord.isLng(-181.0));
     Assert.IsTrue(HCoord.isLng(-179.99));
     Assert.IsTrue(HCoord.isLng(180.0));
     Assert.IsFalse(HCoord.isLng(181.0));
 }
Пример #3
0
 public void testIsLat()
 {
     Assert.IsFalse(HCoord.isLat(-91.0));
     Assert.IsTrue(HCoord.isLat(-90.0));
     Assert.IsTrue(HCoord.isLat(-89.0));
     Assert.IsTrue(HCoord.isLat(90.0));
     Assert.IsFalse(HCoord.isLat(91.0));
 }
Пример #4
0
        private void verifyCoord(double lat, double lng, string s)
        {
            HCoord c = HCoord.make(lat, lng);

            Assert.AreEqual(c.lat, lat);
            Assert.AreEqual(c.lng, lng);
            Assert.AreEqual(c.ToString(), s);
            HCoord strCoord = HCoord.make(s);

            Assert.IsTrue(strCoord.hequals(c));
        }
Пример #5
0
 [ExpectedException(typeof(FormatException))] // In Java this was parse exception
 public void RunBadZincProviderTest()
 {
     string[] badZincs =
     { "C(0.123,-.789)",
       "1,2",
       "(1,2)",
       "C(1,2",
       "C1,2)",
       "C(x,9)" };
     foreach (string strCurZinc in badZincs)
     {
         HCoord.make(strCurZinc);
     }
 }
Пример #6
0
        private HCoord parseCoord(string id)
        {
            if ("C".CompareTo(id) != 0)
            {
                err("Expecting 'C' for coord, not " + id);
            }
            consume(HaystackToken.lparen);
            HNum lat = consumeNum();

            consume(HaystackToken.comma);
            HNum lng = consumeNum();

            consume(HaystackToken.rparen);
            return(HCoord.make(lat.doubleval, lng.doubleval));
        }
Пример #7
0
        public void testWriter()
        {
            HGridBuilder gb = new HGridBuilder();

            gb.addCol("a");
            gb.addCol("b");
            gb.addRow(new HVal[] { HNA.VAL, HBool.TRUE }); // Original Unit test had null - this is not valid
            gb.addRow(new HVal[] { HMarker.VAL, HNA.VAL });
            gb.addRow(new HVal[] { HRemove.VAL, HNA.VAL });
            gb.addRow(new HVal[] { HStr.make("test"), HStr.make("with:colon") });
            gb.addRow(new HVal[] { HNum.make(12), HNum.make(72.3, "\u00b0F") });
            gb.addRow(new HVal[] { HNum.make(double.NegativeInfinity), HNum.make(Double.NaN) });
            gb.addRow(new HVal[] { HDate.make(2015, 6, 9), HTime.make(1, 2, 3) });
            var tz = HTimeZone.make("UTC", true);

            gb.addRow(new HVal[] { HDateTime.make(634429600180690000L, tz), HUri.make("foo.txt") });
            gb.addRow(new HVal[] { HRef.make("abc"), HRef.make("abc", "A B C") });
            gb.addRow(new HVal[] { HBin.make("text/plain"), HCoord.make(90, -123) });
            HGrid grid = gb.toGrid();

            string actual = HJsonWriter.gridToString(grid);

            // System.out.println(actual);
            string[] lines = actual.Split('\n');
            Assert.AreEqual(lines[0], "{");
            Assert.AreEqual(lines[1], "\"meta\": {\"ver\":\"2.0\"},");
            Assert.AreEqual(lines[2], "\"cols\":[");
            Assert.AreEqual(lines[3], "{\"name\":\"a\"},");
            Assert.AreEqual(lines[4], "{\"name\":\"b\"}");
            Assert.AreEqual(lines[5], "],");
            Assert.AreEqual(lines[6], "\"rows\":[");
            Assert.AreEqual(lines[7], "{\"a\":\"z:\", \"b\":true},");
            Assert.AreEqual(lines[8], "{\"a\":\"m:\", \"b\":\"z:\"},");
            Assert.AreEqual(lines[9], "{\"a\":\"x:\", \"b\":\"z:\"},");
            Assert.AreEqual(lines[10], "{\"a\":\"test\", \"b\":\"s:with:colon\"},");
            Assert.AreEqual(lines[11], "{\"a\":\"n:12\", \"b\":\"n:72.3 \u00b0F\"},");
            Assert.AreEqual(lines[12], "{\"a\":\"n:-INF\", \"b\":\"n:NaN\"},");
            Assert.AreEqual(lines[13], "{\"a\":\"d:2015-06-09\", \"b\":\"h:01:02:03\"},");
            Assert.AreEqual(lines[14], "{\"a\":\"t:2011-06-06T12:26:58.069Z UTC\", \"b\":\"u:foo.txt\"},");
            Assert.AreEqual(lines[15], "{\"a\":\"r:abc\", \"b\":\"r:abc A B C\"},");
            Assert.AreEqual(lines[16], "{\"a\":\"b:text/plain\", \"b\":\"c:90.0,-123.0\"}");
            Assert.AreEqual(lines[17], "]");
            Assert.AreEqual(lines[18], "}");
        }