public void Should_be_able_to_retreive_last_reference_field_after_multiple_set() { //Given const string dummyFieldName = "dummyField"; var initialValue = new ProxyReferenceType(); Dictionary <string, ReferenceType> referenceFields = new Dictionary <string, ReferenceType> { { dummyFieldName, initialValue }, }; var refType = new ProxyReferenceType(referenceFields); var fieldValue = new ProxyReferenceType(); var fieldValue2 = new ProxyReferenceType(); var fieldValue3 = new ProxyReferenceType(); //When refType.SetField(dummyFieldName, fieldValue); refType.SetField(dummyFieldName, fieldValue2); refType.SetField(dummyFieldName, fieldValue3); //Then var retreivedValue = refType.GetReference(dummyFieldName); Check.That(retreivedValue).Not.IsSameReferenceAs(initialValue); Check.That(retreivedValue).Not.IsSameReferenceAs(fieldValue); Check.That(retreivedValue).Not.IsSameReferenceAs(fieldValue2); Check.That(retreivedValue).IsSameReferenceAs(fieldValue3); }
public void Should_not_be_able_to_get_non_existing_reference_field() { //Given var refType = new ProxyReferenceType(); //When Then Check.ThatCode(() => _ = refType.GetReference("not existing field")).Throws <KeyNotFoundException>(); }
public void Should_be_able_to_retreive_reference_field() { //Given const string dummyFieldName = "dummyField"; var fieldValue = new ProxyReferenceType(); Dictionary <string, ReferenceType> referenceFields = new Dictionary <string, ReferenceType> { { dummyFieldName, fieldValue }, }; //When var refType = new ProxyReferenceType(referenceFields); //Then var retreivedValue = refType.GetReference(dummyFieldName); Check.That(retreivedValue).IsSameReferenceAs(fieldValue); }