Beispiel #1
0
        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);
        }
Beispiel #2
0
        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>();
        }
Beispiel #3
0
        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);
        }