public async Task WhenLoadAsyncCompletes_ThenPropertiesArePopulated( [WindowsInstance] ResourceTask <InstanceLocator> testInstance, [Credential(Role = PredefinedRole.ComputeViewer)] ResourceTask <ICredential> credential) { var locator = await testInstance; var gceAdapter = new ComputeEngineAdapter(await credential); var model = await InstanceDetailsModel.LoadAsync( await testInstance, gceAdapter, new InventoryService(gceAdapter), CancellationToken.None); Assert.AreEqual(locator.Name, model.InstanceName); Assert.IsNull(model.Hostname); Assert.AreEqual("RUNNING", model.Status); Assert.IsNotNull(model.InternalIp); Assert.IsNotNull(model.ExternalIp); Assert.IsNotNull(model.Licenses); Assert.AreEqual(model.IsOsInventoryInformationPopulated ? FeatureFlag.Enabled : FeatureFlag.Disabled, model.OsInventory); Assert.AreEqual(FeatureFlag.Disabled, model.Diagnostics); Assert.AreEqual(FeatureFlag.Enabled, model.GuestAttributes); Assert.IsNull(model.InternalDnsMode); Assert.IsFalse(model.IsSoleTenant); }
public void WhenFlagSetInCommonInstanceMetadataOnly_ThenInstanceCommonInstanceMetadataPrevails() { var project = new Project() { CommonInstanceMetadata = new Metadata() { Items = new[] { new Metadata.ItemsData() { Key = "VmDnsSetting", Value = "ZonalOnly" } } } }; var instance = new Instance { Metadata = new Metadata() }; var model = new InstanceDetailsModel(project, instance, null); Assert.AreEqual("ZonalOnly", model.InternalDnsMode); }
public void WhenMetadataIsEmpty_ThenDefaultsAreApplied() { var project = new Project(); var instance = new Instance(); var model = new InstanceDetailsModel(project, instance, null); Assert.AreEqual(FeatureFlag.Disabled, model.OsInventory); Assert.AreEqual(FeatureFlag.Disabled, model.Diagnostics); Assert.AreEqual(FeatureFlag.Disabled, model.SerialPortAccess); Assert.AreEqual(FeatureFlag.Disabled, model.GuestAttributes); Assert.IsNull(model.InternalDnsMode); }
public async Task WhenLoadAsyncCompletes_ThenPropertiesArePopulated( [WindowsInstance] InstanceRequest testInstance, [Credential(Role = PredefinedRole.ComputeViewer)] CredentialRequest credential) { await testInstance.AwaitReady(); var model = await InstanceDetailsModel.LoadAsync( await testInstance.GetInstanceAsync(), new ComputeEngineAdapter(await credential.GetCredentialAsync()), CancellationToken.None); Assert.AreEqual(testInstance.Locator.Name, model.InstanceName); Assert.IsNull(model.Hostname); Assert.AreEqual("RUNNING", model.Status); Assert.IsNotNull(model.InternalIp); Assert.IsNotNull(model.ExternalIp); Assert.IsNotNull(model.Licenses); Assert.IsFalse(model.IsSoleTenant); }