public void GetSkyQuality_SendValidRequest() { //Arrange string commandName = "skyquality"; IRestRequest sentRequest = null; var commandSenderMock = new Mock <ICommandSender>(); commandSenderMock .Setup(x => x.ExecuteRequest <DoubleResponse>(It.IsAny <string>(), It.IsAny <RestRequest>())) .Callback((string baseUrl, IRestRequest request) => sentRequest = request) .Returns(new DoubleResponse(1.0)); var observingConditions = new ObservingConditions(_deviceConfiguration, commandSenderMock.Object); //Act observingConditions.GetSkyQuality(); //Assert Assert.Equal(Method.GET, sentRequest.Method); AssertCommonParameters(sentRequest.Parameters, _deviceConfiguration, commandName); }