Example #1
0
        public async Task GetArmingOffTimeAsync_Returns_IntegerAsync()
        {
            // Arrange
            var miioDevice = new Mock <IMiioTransport>();

            miioDevice.Setup(x => x.SendMessageAsync(It.IsAny <string>())).Returns(Task.FromResult("{\"result\":[30],\"id\":1}"));
            var miioGateway = new MiioGateway(miioDevice.Object);

            // Act
            var armingOffTime = await miioGateway.GetArmingOffTimeAsync();

            // Assert
            miioDevice.Verify(x => x.SendMessageAsync("{\"id\": 1, \"method\": \"get_device_prop\", \"params\": [\"lumi.0\",\"alarm_time_len\"]}"), Times.Once());
            Assert.Equal(30, armingOffTime);
        }