public void SutDoesNotEqualAnonymousObject(object other) { var sut = new FieldInfoElement(TypeWithFields.Field); var actual = sut.Equals(other); Assert.False(actual); }
public void ToElementForFieldInfoReturnsTheCorrectElement() { FieldInfo expected = typeof(TypeWithAllElements).GetFields().Single(); FieldInfoElement actual = expected.ToElement(); Assert.Equal(new FieldInfoElement(expected), actual); }
public override IReflectionVisitor <IEnumerable> Visit( FieldInfoElement fieldInfoElement) { var value = fieldInfoElement.FieldInfo.GetValue(this.target); return(new ValueCollectingVisitor( this.target, this.values.Concat(new[] { value }).ToArray())); }
public override IReflectionVisitor <bool> Visit( FieldInfoElement fieldInfoElement) { if (_searchedType == fieldInfoElement.FieldInfo.FieldType) { value = true; } return(this); }
public void SutIsReflectionElement() { // Fixture setup // Exercise system var sut = new FieldInfoElement(TypeWithFields.Field); // Verify outcome Assert.IsAssignableFrom<IReflectionElement>(sut); // Teardown }
public override IReflectionVisitor <Action <object> > Visit( FieldInfoElement fieldInfoElement) { Action <object> a = v => fieldInfoElement.FieldInfo.SetValue(this.target, v); return(new ValueWritingVisitor( this.target, this.actions.Concat(new[] { a }).ToArray())); }
public void SutEqualsOtherIdenticalInstance() { var fi = TypeWithFields.Field; var sut = new FieldInfoElement(fi); var other = new FieldInfoElement(fi); var actual = sut.Equals(other); Assert.True(actual); }
public void AcceptNullVisitorThrows() { // Fixture setup var sut = new FieldInfoElement(TypeWithFields.Field); // Exercise system // Verify outcome Assert.Throws<ArgumentNullException>(() => sut.Accept((IReflectionVisitor<object>)null)); // Teardown }
public void SutDoesNotEqualDifferentInstanceOfSameType() { var sut = new FieldInfoElement(TypeWithFields.Field); var otherField = typeof(InterfaceMapping).GetField("InterfaceType"); var other = new FieldInfoElement(otherField); var actual = sut.Equals(other); Assert.False(actual); }
public void SutIsReflectionElement() { // Fixture setup // Exercise system var sut = new FieldInfoElement(TypeWithFields.Field); // Verify outcome Assert.IsAssignableFrom <IReflectionElement>(sut); // Teardown }
public override IReflectionVisitor <IEnumerable> Visit( FieldInfoElement fieldInfoElement) { var v = new SemanticComparisonValue( fieldInfoElement.FieldInfo.Name, fieldInfoElement.FieldInfo.FieldType); return(new SemanticReflectionVisitor( this.values.Concat(new[] { v }).ToArray())); }
public void GetHashCodeReturnsCorrectResult() { var fi = TypeWithField.Field; var sut = new FieldInfoElement(fi); var actual = sut.GetHashCode(); var expected = fi.GetHashCode(); Assert.Equal(expected, actual); }
public void FieldInfoIsCorrect() { // Fixture setup var expected = TypeWithFields.Field; var sut = new FieldInfoElement(expected); // Exercise system FieldInfo actual = sut.FieldInfo; // Verify outcome Assert.Equal(expected, actual); // Teardown }
public override IReflectionVisitor <bool> Visit(FieldInfoElement fieldInfoElement) { if (object.ReferenceEquals(fieldInfoElement, null)) { throw new ArgumentNullException(nameof(fieldInfoElement)); } var fi = fieldInfoElement.FieldInfo; return(this.Proceed(expected, this.value || this.IsMatch(fi.FieldType, fi.Name))); }
public void GetHashCodeReturnsCorrectResult() { var fi = TypeWithFields.Field; var sut = new FieldInfoElement(fi); var actual = sut.GetHashCode(); var expected = fi.GetHashCode(); Assert.Equal(expected, actual); }
public void AcceptNullVisitorThrows() { // Fixture setup var sut = new FieldInfoElement(TypeWithFields.Field); // Exercise system // Verify outcome Assert.Throws <ArgumentNullException>(() => sut.Accept((IReflectionVisitor <object>)null)); // Teardown }
public void VisitFieldInfoElementReturnsCorrectResult() { var sut = new ReflectionVisitor(); var fieldInfoElement = new FieldInfoElement(new Dummy().Field); var actual = sut.Visit(fieldInfoElement); var expected = sut; Assert.Same(expected, actual); }
public override IReflectionVisitor <IEnumerable <NameAndType> > Visit( FieldInfoElement fieldInfoElement) { if (fieldInfoElement == null) { throw new ArgumentNullException("fieldInfoElement"); } var v = new NameAndType( fieldInfoElement.FieldInfo.Name, fieldInfoElement.FieldInfo.FieldType); return(new NameAndTypeCollectingVisitor( this.values.Concat(new[] { v }).ToArray())); }
public void AcceptCallsTheCorrectVisitorMethodAndReturnsTheCorrectInstance() { // Fixture setup var expected = new DelegatingReflectionVisitor<int>(); var sut = new FieldInfoElement(TypeWithFields.Field); var visitor = new DelegatingReflectionVisitor<int> { OnVisitFieldInfoElement = e => e == sut ? expected : new DelegatingReflectionVisitor<int>() }; // Exercise system var actual = sut.Accept(visitor); // Verify outcome Assert.Same(expected, actual); // Teardown }
public void AcceptCallsTheCorrectVisitorMethodAndReturnsTheCorrectInstance() { // Fixture setup var expected = new DelegatingReflectionVisitor <int>(); var sut = new FieldInfoElement(TypeWithFields.Field); var visitor = new DelegatingReflectionVisitor <int> { OnVisitFieldInfoElement = e => e == sut ? expected : new DelegatingReflectionVisitor <int>() }; // Exercise system var actual = sut.Accept(visitor); // Verify outcome Assert.Same(expected, actual); // Teardown }
public virtual IReflectionVisitor <T> Visit(FieldInfoElement fieldInfoElement) { return(OnVisitFieldInfoElement(fieldInfoElement)); }