public void ImmediateFieldSetValue_NestedTypes() { var publicNestedTypeTestObject = new PublicTestClass.PublicNestedClass { _nestedTestValue = 1 }; var immediateField = new ImmediateField(PublicNestedPublicFieldFieldInfo); immediateField.SetValue(publicNestedTypeTestObject, 12); Assert.AreEqual(12, publicNestedTypeTestObject._nestedTestValue); var internalNestedTypeTestObject = new PublicTestClass.InternalNestedClass { _nestedTestValue = 2 }; immediateField = new ImmediateField(InternalNestedPublicFieldFieldInfo); immediateField.SetValue(internalNestedTypeTestObject, 24); Assert.AreEqual(24, internalNestedTypeTestObject._nestedTestValue); var protectedNestedTypeTestObject = new ProtectedNestedClass { _nestedTestValue = 3 }; immediateField = new ImmediateField(ProtectedNestedPublicFieldFieldInfo); immediateField.SetValue(protectedNestedTypeTestObject, 48); Assert.AreEqual(48, protectedNestedTypeTestObject._nestedTestValue); var privateNestedTypeTestObject = new PrivateNestedClass { _nestedTestValue = 4 }; immediateField = new ImmediateField(PrivateNestedPublicFieldFieldInfo); immediateField.SetValue(privateNestedTypeTestObject, 96); Assert.AreEqual(96, privateNestedTypeTestObject._nestedTestValue); }
public void AccessingMethodFromNonPublicTypeIsDetected() { var expr = new PrivateNestedClass().GenerateExpression(); var processor = new MapProposalProcessor(new MemberMapper()); processor.Process(expr); Assert.IsTrue(processor.NonPublicMembersAccessed); }
public async Task PrivateNestedTypeTest() { PrivateNestedClass payload = new PrivateNestedClass(); await Assert.ThrowsAsync <TypeAccessException>(() => TestUtil.AssertJsonIsIdentical(payload)); }