public void SetValueWithoutExceptionTest() { // Arrange string objectId = "objId1"; string expectedValue = "toBeExpected"; _regObjectMock.Setup(o => o.StringValueProperty).Returns(expectedValue); var recipient = new Recipient(); var request = new PropertySetRequest() { objectId = objectId, propertyId = ObjectDescriptor.GetPropertyId <IRegisteredObject>(nameof(IRegisteredObject.StringValueProperty)), value = expectedValue }; // Act recipient.Register(objectId, _regObjectMock.Object); var response = recipient.Request(request) as PropertySetResponse; // Assert _serviceMock.Verify(); _regObjectMock.Verify(); Assert.AreEqual(expectedValue, _regObjectMock.Object.StringValueProperty); Assert.AreEqual(ResponseType.propertySet, response.responseType); Assert.AreEqual(request.objectId, response.objectId); Assert.AreEqual(request.propertyId, response.propertyId); }
internal bool SetValue(string propertyId, object value) { var request = new PropertySetRequest() { objectId = _objectId, propertyId = propertyId, value = value }; var response = _client.Request(request); switch (response) { case ExceptionResponse exResp: throw exResp.exception; case PropertySetResponse propertySetResp: if (propertySetResp.objectId != _objectId) { throw new InvalidResponseException($"Incorrect object ID. Expected '{_objectId}', but received '{propertySetResp.objectId}'."); } else if (propertySetResp.propertyId != propertyId) { throw new InvalidResponseException($"Incorrect property ID. Expected '{propertyId}', but received '{propertySetResp.propertyId}'."); } break; default: throw new InvalidResponseException($"Incorrect response type. Expected '{ResponseType.propertySet}', but received '{response.responseType}'."); } return(true); }
public void SetValueWithExceptionTest() { // Arrange string objectId = "objId1"; _regObjectMock.SetupSet(o => o.StringValueProperty = It.IsAny <string>()).Throws(new NotImplementedException()); var recipient = new Recipient(); var request = new PropertySetRequest() { objectId = objectId, propertyId = ObjectDescriptor.GetPropertyId <IRegisteredObject>(nameof(IRegisteredObject.StringValueProperty)), value = "toBeExpected" }; // Act recipient.Register(objectId, _regObjectMock.Object); var response = recipient.Request(request) as ExceptionResponse; // Assert _serviceMock.Verify(); _regObjectMock.Verify(); Assert.AreEqual(ResponseType.exception, response.responseType); Assert.IsTrue(response.exception.Message.Contains(objectId) && response.exception.Message.Contains(nameof(IRegisteredObject.StringValueProperty))); }