public void Deserialize_GoodJson()
        {
            var json = @"
{ 
    ""instanceId"":""localhost:foo"",
    ""hostName"":""localhost"",
    ""app"":""FOO"",
    ""ipAddr"":""192.168.56.1"",
    ""status"":""UP"",
    ""overriddenstatus"":""UNKNOWN"",
    ""port"":{""$"":8080,""@enabled"":""true""},
    ""securePort"":{""$"":443,""@enabled"":""false""},
    ""countryId"":1,
    ""dataCenterInfo"":{""@class"":""com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo"",""name"":""MyOwn""},
    ""leaseInfo"":{""renewalIntervalInSecs"":30,""durationInSecs"":90,""registrationTimestamp"":1457714988223,""lastRenewalTimestamp"":1457716158319,""evictionTimestamp"":0,""serviceUpTimestamp"":1457714988223},
    ""metadata"":{""@class"":""java.util.Collections$EmptyMap""},
    ""homePageUrl"":""http://*****:*****@class"));
            Assert.True(metadata.ContainsValue("java.util.Collections$EmptyMap"));
            Assert.Equal("http://localhost:8080/", result.HomePageUrl);
            Assert.Equal("http://localhost:8080/info", result.StatusPageUrl);
            Assert.Equal("http://localhost:8080/health", result.HealthCheckUrl);
            Assert.Equal("foo", result.VipAddress);
            Assert.False(result.IsCoordinatingDiscoveryServer);
            Assert.Equal(1457714988223, result.LastUpdatedTimestamp);
            Assert.Equal(1457714988172, result.LastDirtyTimestamp);
            Assert.Equal(ActionType.ADDED, result.Actiontype);
        }
        public void Deserialize_GoodJson()
        {
            var json = @"
{ 
    'instanceId':'localhost:foo',
    'hostName':'localhost',
    'app':'FOO',
    'ipAddr':'192.168.56.1',
    'status':'UP',
    'overriddenstatus':'UNKNOWN',
    'port':{'$':8080,'@enabled':'true'},
    'securePort':{'$':443,'@enabled':'false'},
    'countryId':1,
    'dataCenterInfo':{'@class':'com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo','name':'MyOwn'},
    'leaseInfo':{'renewalIntervalInSecs':30,'durationInSecs':90,'registrationTimestamp':1457714988223,'lastRenewalTimestamp':1457716158319,'evictionTimestamp':0,'serviceUpTimestamp':1457714988223},
    'metadata':{'@class':'java.util.Collections$EmptyMap'},
    'homePageUrl':'http://*****:*****@class"));
            Assert.True(metadata.ContainsValue("java.util.Collections$EmptyMap"));
            Assert.Equal("http://localhost:8080/", result.HomePageUrl);
            Assert.Equal("http://localhost:8080/info", result.StatusPageUrl);
            Assert.Equal("http://localhost:8080/health", result.HealthCheckUrl);
            Assert.Equal("foo", result.VipAddress);
            Assert.False(result.IsCoordinatingDiscoveryServer);
            Assert.Equal(1457714988223, result.LastUpdatedTimestamp);
            Assert.Equal(1457714988172, result.LastDirtyTimestamp);
            Assert.Equal(ActionType.ADDED, result.Actiontype);
        }