private string GenerateKeyPairPayload(ComputeKeyPair keyPair)
 {
     var payloadFixture = @"{{
         ""keypair"": {{
             ""public_key"": ""{1}"",
             ""name"": ""{0}"",
             ""fingerprint"": ""{2}""
         }}
     }}";
     return string.Format(payloadFixture, keyPair.Name, keyPair.PublicKey, keyPair.Fingerprint);
 }
        public async Task CanGetKeyPairs()
        {
            var expKeyPair1 = new ComputeKeyPair("1", "ABCDEF","12345");
            var expKeyPair2 = new ComputeKeyPair("2", "FEDCBA", "54321");
            var pairs = new List<ComputeKeyPair>() { expKeyPair1, expKeyPair2 };

            this.ServicePocoClient.GetKeyPairsDelegate = () => Task.Factory.StartNew(() => (IEnumerable<ComputeKeyPair>)pairs);

            var client = new ComputeServiceClient(GetValidCreds(), "Nova", CancellationToken.None, this.ServiceLocator);
            var resp = await client.GetKeyPairs();
            Assert.IsNotNull(resp);

            var respPairs = resp.ToList();
            Assert.AreEqual(2, respPairs.Count());
            Assert.AreEqual(expKeyPair1, respPairs[0]);
            Assert.AreEqual(expKeyPair2, respPairs[1]);
        }
        public async Task CanGetKeyPair()
        {
            var keyName = "1";
            var expKeyPair1 = new ComputeKeyPair(keyName, "ABCDEF", "12345");

            this.ServicePocoClient.GetKeyPairDelegate = (name) =>
            {
                Assert.AreEqual(keyName, name);
                return Task.Factory.StartNew(() => expKeyPair1);
            };

            var client = new ComputeServiceClient(GetValidCreds(), "Nova", CancellationToken.None, this.ServiceLocator);
            var keyPair = await client.GetKeyPair(keyName);

            Assert.IsNotNull(keyPair);
            Assert.AreEqual(expKeyPair1, keyPair);
        }
        public async Task CanGetKeyPair()
        {
            var keyPairName = "Key1";
            var keyPair = new ComputeKeyPair(keyPairName, "12345", "ABCDEF");
            this.simulator.KeyPairs.Add(keyPair);

            var client = new ComputeServiceRestClient(GetValidContext(), this.ServiceLocator);

            var resp = await client.GetKeyPair(keyPairName);
            Assert.AreEqual(HttpStatusCode.OK, resp.StatusCode);

            var respContent = TestHelper.GetStringFromStream(resp.Content);
            Assert.IsTrue(respContent.Length > 0);
        }