public void TestShowVolume()
        {
            IBlockStorageProvider provider = Bootstrapper.CreateBlockStorageProvider();
            IEnumerable <Volume>  volumes  = provider.ListVolumes();

            Assert.IsNotNull(volumes);
            if (!volumes.Any())
            {
                Assert.Inconclusive("The test could not proceed because the specified account and/or region does not appear to contain any configured volumes.");
            }

            foreach (Volume volume in volumes)
            {
                Assert.IsNotNull(volume);
                Assert.IsFalse(string.IsNullOrEmpty(volume.Id));
                Volume showVolume = provider.ShowVolume(volume.Id);
                Assert.IsNotNull(showVolume);
                Assert.AreEqual(volume.AvailabilityZone, showVolume.AvailabilityZone);
                Assert.AreEqual(volume.CreatedAt, showVolume.CreatedAt);
                Assert.AreEqual(volume.DisplayDescription, showVolume.DisplayDescription);
                Assert.AreEqual(volume.DisplayName, showVolume.DisplayName);
                Assert.AreEqual(volume.Id, showVolume.Id);
                Assert.AreEqual(volume.Size, showVolume.Size);
                Assert.AreEqual(volume.SnapshotId, showVolume.SnapshotId);
                Assert.IsNotNull(volume.Status);
                Assert.AreEqual(volume.VolumeType, showVolume.VolumeType);
            }
        }
        public void TestListVolumes()
        {
            IBlockStorageProvider provider = Bootstrapper.CreateBlockStorageProvider();
            IEnumerable <Volume>  volumes  = provider.ListVolumes();

            Assert.IsNotNull(volumes);
            if (!volumes.Any())
            {
                Assert.Inconclusive("The test could not proceed because the specified account and/or region does not appear to contain any configured volumes.");
            }

            Console.WriteLine("Volumes");
            foreach (Volume volume in volumes)
            {
                Assert.IsNotNull(volume);
                Assert.IsFalse(string.IsNullOrEmpty(volume.Id));
                Console.WriteLine(JsonConvert.SerializeObject(volume, Formatting.Indented));
            }
        }
        public void CleanupTestVolumes()
        {
            IBlockStorageProvider provider = Bootstrapper.CreateBlockStorageProvider();
            IEnumerable <Volume>  volumes  = provider.ListVolumes();

            foreach (Volume volume in volumes)
            {
                if (string.IsNullOrEmpty(volume.DisplayName))
                {
                    continue;
                }

                if (!volume.DisplayName.StartsWith(UnitTestVolumePrefix))
                {
                    continue;
                }

                Console.WriteLine("Deleting unit test volume... {0} ({1})", volume.DisplayName, volume.Id);
                provider.DeleteVolume(volume.Id);
            }
        }