private void AssertLtrObjectProperty <TObj, TProperty>(TObj expected, LtrObject actual, Expression <Func <TObj, TProperty> > propertyExpr) { var propertyName = ((MemberExpression)propertyExpr.Body).Member.Name; var expectedValue = propertyExpr.Compile().Invoke(expected); var actualPV = Assert.Single(actual.Properties.Where(p => p.PropertyName == propertyName)); Assert.Equal(expectedValue?.ToString(), actualPV.Value); }
public void ShouldCreateLtrObject(IIdentityObject obj) { // Arrange & Act var sut = new LtrObject(obj); // Assert Assert.Equal(obj.Id, sut.ObjectId); Assert.Equal(obj.GetType().FullName, sut.LogObjectClass); }
public void ShouldSkipNonSerializedProperties(TestIdentityObject obj) { // Arrange var sut = new LtrObject(obj); // Act sut.SetValues(obj); // Assert Assert.Null(sut[nameof(obj.NonSerializedProperty)]); Assert.Null(sut[nameof(obj.Id)]); }
public void ShouldAddProperties(TestIdentityObject obj) { // Arrange var sut = new LtrObject(obj); // Act sut.SetValues(obj); // Assert Assert.Equal(obj.StringProperty, sut[nameof(obj.StringProperty)].Value); Assert.Equal(obj.IntProperty.ToString(), sut[nameof(obj.IntProperty)].Value); Assert.Null(sut[nameof(obj.NullProperty)].Value); }
private void AssertLtrObject(Team expected, LtrObject actual) { this.AssertLtrObjectProperty(expected, actual, t => t.Name); this.AssertLtrObjectProperty(expected, actual, t => t.Code); }