public void CanGetExtensionTypeVersionAndImage() { using (var context = FluentMockContext.Start(GetType().FullName)) { var azure = TestHelper.CreateRollupClient(); var extensionImages = azure.VirtualMachineExtensionImages .ListByRegion(Region.USEast); string dockerExtensionPublisherName = "Microsoft.Azure.Extensions"; string dockerExtensionImageTypeName = "DockerExtension"; // Lookup Azure docker extension publisher // var publishers = azure.VirtualMachineExtensionImages .Publishers .ListByRegion(Region.USEast); IVirtualMachinePublisher azureDockerExtensionPublisher = publishers .Where(publisher => publisher.Name.Equals(dockerExtensionPublisherName, StringComparison.OrdinalIgnoreCase)) .FirstOrDefault(); Assert.NotNull(azureDockerExtensionPublisher); // Lookup Azure docker extension type // var extensionImageTypes = azureDockerExtensionPublisher.ExtensionTypes; Assert.True(extensionImageTypes.List().Count() > 0); var dockerExtensionImageType = extensionImageTypes .List() .Where(imageType => imageType.Name.Equals(dockerExtensionImageTypeName, StringComparison.OrdinalIgnoreCase)) .FirstOrDefault(); Assert.NotNull(dockerExtensionImageType); Assert.NotNull(dockerExtensionImageType.Id); Assert.Equal(dockerExtensionImageType.Name, dockerExtensionImageTypeName, ignoreCase: true); Assert.Equal("eastus", dockerExtensionImageType.RegionName, ignoreCase: true); Assert.EndsWith("/Providers/Microsoft.Compute/Locations/eastus/Publishers/Microsoft.Azure.Extensions/ArtifactTypes/VMExtension/Types/DockerExtension".ToLower(), dockerExtensionImageType.Id .ToLower() ); Assert.NotNull(dockerExtensionImageType.Publisher); Assert.Equal(dockerExtensionImageType.Publisher.Name, dockerExtensionPublisherName, ignoreCase: true); // Fetch Azure docker extension versions // var extensionImageVersions = dockerExtensionImageType.Versions; Assert.True(extensionImageVersions.List().Count() > 0); IVirtualMachineExtensionImageVersion extensionImageFirstVersion = extensionImageVersions.List().FirstOrDefault(); Assert.NotNull(extensionImageFirstVersion); String versionName = extensionImageFirstVersion.Name; Assert.EndsWith(("/Providers/Microsoft.Compute/Locations/eastus/Publishers/Microsoft.Azure.Extensions/ArtifactTypes/VMExtension/Types/DockerExtension/Versions/" + versionName).ToLower(), extensionImageFirstVersion.Id .ToLower() ); Assert.NotNull(extensionImageFirstVersion.Type); // Fetch the Azure docker extension image // var dockerExtensionImage = extensionImageFirstVersion.GetImage(); Assert.Equal("eastus", dockerExtensionImage.RegionName, ignoreCase: true); Assert.Equal(dockerExtensionImage.PublisherName, dockerExtensionPublisherName, ignoreCase: true); Assert.Equal(dockerExtensionImage.TypeName, dockerExtensionImageTypeName, ignoreCase: true); Assert.Equal(dockerExtensionImage.VersionName, versionName, ignoreCase: true); Assert.True(dockerExtensionImage.OSType == OperatingSystemTypes.Linux || dockerExtensionImage.OSType == OperatingSystemTypes.Windows); } }
///GENMHASH:F79343A72AA4295A5E1D16B5530DD18B:34FB4BF5848191FF7F26FBB50A9F1E95 internal VirtualMachineOffersImpl(IVirtualMachineImagesOperations innerCollection, IVirtualMachinePublisher publisher) { this.publisher = publisher; this.innerCollection = innerCollection; }
///GENMHASH:BC226EF2EAB4AB4B0C4E94FED5D962F0:D11D3C231EE92D6F7F22BDA2782F6427 internal VirtualMachineExtensionImageTypesImpl(IVirtualMachineExtensionImagesOperations client, IVirtualMachinePublisher publisher) { this.client = client; this.publisher = publisher; }
///GENMHASH:2EFBA576A3195EDB2F27440330CF3856:B4E2AB9962FF6934486C326E46FDA9B8 internal VirtualMachineOfferImpl(IVirtualMachinePublisher publisher, string offer, IVirtualMachineImagesOperations client) { this.publisher = publisher; this.offerName = offer; skus = new VirtualMachineSkusImpl(this, client); }