public async Task TestPresetSettingIsReportedOnModuleStart() { var harness = new ModuleHostHarness(); var controller = new TestController1(); await harness.RunTestAsync(controller.YieldReturn(), async (deviceId, moduleId, services) => { // Act var hub = services.Resolve <IIoTHubTwinServices>(); var twin = await hub.GetAsync(deviceId, moduleId); // Assert Assert.Equal("yearn", controller.TestSetting3); // TODO : Should report initial state of setting if not null // Assert.Equal("yearn", twin.Properties.Reported[nameof(TestController1.TestSetting3)]); }); }
public async Task TestSettingDesiredPropertyAndCheckReported1() { var harness = new ModuleHostHarness(); var controller = new TestController1(); await harness.RunTestAsync(controller.YieldReturn(), async (deviceId, moduleId, services) => { // Act var hub = services.Resolve <IIoTHubTwinServices>(); await hub.UpdatePropertyAsync(deviceId, moduleId, nameof(TestController1.TestSetting1), "test"); var twin = await hub.GetAsync(deviceId, moduleId); // Assert Assert.True(controller._applyCalled); Assert.Equal("test", controller.TestSetting1); Assert.Equal("test", twin.Properties.Reported[nameof(TestController1.TestSetting1)]); Assert.True((bool)twin.Properties.Reported[TwinProperty.kConnected]); }); }
public async Task TestSetting2DesiredPropertyAndCheckReported1() { var harness = new ModuleHostHarness(); var controller = new TestController1(); await harness.RunTestAsync(controller.YieldReturn(), async (deviceId, moduleId, services) => { var test = _serializer.FromObject("test"); var test2 = _serializer.FromObject("test2"); // Act var hub = services.Resolve <IIoTHubTwinServices>(); await hub.UpdatePropertyAsync(deviceId, moduleId, nameof(TestController1.TestSetting1), test); await hub.UpdatePropertyAsync(deviceId, moduleId, nameof(TestController1.TestSetting2), test2); var twin = await hub.GetAsync(deviceId, moduleId); // Assert Assert.True(controller._applyCalled); Assert.Equal("test", controller.TestSetting1); Assert.Equal("test2", controller.TestSetting2); Assert.Equal(test, twin.Properties.Reported[nameof(TestController1.TestSetting1)]); Assert.Equal(test2, twin.Properties.Reported[nameof(TestController1.TestSetting2)]); }); }
public async Task TestSettingDesiredPropertyToNullAndCheckReported1() { var harness = new ModuleHostHarness(); var controller = new TestController1(); await harness.RunTestAsync(controller.YieldReturn(), async (deviceId, moduleId, services) => { var hub = services.Resolve <IIoTHubTwinServices>(); var twin = await hub.GetAsync(deviceId, moduleId); // TODO : Assert precondition // Assert.True(twin.Properties.Reported.TryGetValue(nameof(TestController1.TestSetting3), out var pre)); // Act await hub.UpdatePropertyAsync(deviceId, moduleId, nameof(TestController1.TestSetting3), null); twin = await hub.GetAsync(deviceId, moduleId); // Assert Assert.True(controller._applyCalled); Assert.Null(controller.TestSetting3); Assert.False(twin.Properties.Reported.TryGetValue(nameof(TestController1.TestSetting3), out var post)); Assert.Null(post); }); }