public void CannotConvertSummaryJsonPayloadMissingPermUriToServer()
        {
            var serverId        = "1";
            var serverPublicUri = "http://www.server.com/v2/servers/1";
            var serverAdminPass = "******";

            var computeServerSummaryJsonResponseFixture = @"{{
                ""server"": {{
                    ""security_groups"": [
                        {{
                            ""name"": ""default""
                        }},
                        {{
                            ""name"": ""MyGroup""
                        }}
                    ],
                    ""OS-DCF:diskConfig"": ""MANUAL"",
                    ""id"": ""{0}"",
                    ""links"": [
                        {{
                            ""href"": ""{1}"",
                            ""rel"": ""self""
                        }}
                    ],
                    ""adminPass"": ""{2}""
                }}
            }}";

            var missingFixture = string.Format(computeServerSummaryJsonResponseFixture, serverId, serverPublicUri, serverAdminPass);

            var converter = new ComputeServerPayloadConverter();

            converter.ConvertSummary(missingFixture);
        }
        public void CannotConvertNonObjectJsonToServer()
        {
            var nonObjectJson = @"[]";

            var converter = new ComputeServerPayloadConverter();

            converter.ConvertSummary(nonObjectJson);
        }
        public void CannotConvertInvalidJsonToServer()
        {
            var badJsonFixture = @"{ NOT JSON";

            var converter = new ComputeServerPayloadConverter();

            converter.ConvertSummary(badJsonFixture);
        }
        public void CannotConvertJsonPayloadEmptyObjectToServer()
        {
            var emptyObjectFixture = @"{ }";

            var converter = new ComputeServerPayloadConverter();

            converter.ConvertSummary(emptyObjectFixture);
        }
        public void CanConvertSummaryJsonPayloadToServer()
        {
            var serverId        = "1";
            var serverPublicUri = "http://www.server.com/v2/servers/1";
            var serverPermUri   = "http://www.server.com/servers/1";
            var serverAdminPass = "******";

            var computeServerFixture = CreateServerRequstSummaryJsonFixtrue(serverId, serverPermUri, serverPublicUri, serverAdminPass);

            var converter = new ComputeServerPayloadConverter();
            var server    = converter.ConvertSummary(computeServerFixture);

            Assert.IsNotNull(server);
            Assert.AreEqual(serverId, server.Id);
            Assert.AreEqual(serverAdminPass, server.AdminPassword);
            Assert.AreEqual(new Uri(serverPermUri), server.PermanentUri);
            Assert.AreEqual(new Uri(serverPublicUri), server.PublicUri);
        }