示例#1
0
        public void DefaultSettings()
        {
            Widget widget = new Widget {
                Title = "title", Kind = new WidgetKind {
                    WeightInGrams = 1.2, ReleaseDate = new DateTime(2010, 9, 8, 7, 6, 5, DateTimeKind.Utc)
                }
            };
            const string jsonTo = @"{""title"":""title"",""kind"":{""weightInGrams"":1.2,""releaseDate"":""2010-09-08T07:06:05Z""}}";

            Assert.AreEqual(JsonUtility.ToJson(widget), jsonTo);
            Assert.AreEqual(StringUtility.Decompress(JsonUtility.ToCompressedJson(widget)), jsonTo);
            Assert.AreEqual(JsonUtility.ToJToken(widget).ToString(Formatting.None), jsonTo);
            Assert.AreEqual(JsonUtility.ToJsonByteCount(widget), jsonTo.Length);

            const string jsonFrom = @"{""kind"":{""weightInGrams"":2.4,""releaseDate"":""2010-11-12T13:14:15Z""},""title"":""whatever""}";

            widget = JsonUtility.FromJson <Widget>(jsonFrom);
            Assert.AreEqual(widget.Title, "whatever");
            Assert.AreEqual(widget.Kind.ReleaseDate.Second, 15);

            widget = JsonUtility.FromCompressedJson <Widget>(StringUtility.Compress(jsonFrom));
            Assert.AreEqual(widget.Title, "whatever");
            Assert.AreEqual(widget.Kind.ReleaseDate.Second, 15);

            widget = JsonUtility.FromJToken <Widget>(JsonUtility.FromJson <JToken>(jsonFrom));
            Assert.AreEqual(widget.Title, "whatever");
            Assert.AreEqual(widget.Kind.ReleaseDate.Second, 15);
        }
示例#2
0
        public void CompressAndDecompressShortString()
        {
            const string text = "1234";

            byte[] bytes = StringUtility.Compress(text);
            Assert.AreEqual(bytes[0], (byte)2);
            Assert.AreEqual(StringUtility.Decompress(bytes), text);
        }
示例#3
0
        public void CompressAndDecompressLongString()
        {
            StringBuilder textBuilder = new StringBuilder();

            for (int i = 0; i < 100000; i++)
            {
                textBuilder.AppendLine(Guid.NewGuid().ToString());
            }
            string text = textBuilder.ToString();

            byte[] bytes = StringUtility.Compress(text);
            Assert.AreEqual(bytes[0], (byte)1);
            Assert.AreEqual(StringUtility.Decompress(bytes), text);
        }
示例#4
0
 public void CompressAndDecompress(string text)
 {
     byte[] bytes = StringUtility.Compress(text);
     Assert.AreEqual(StringUtility.Decompress(bytes), text);
 }