public void verify_logic_with_derived_context()
        {
            var parser = new Parser();
            var firstDerived = new FirstDerived {Value = true};
            var secondDerived = new SecondDerived {Value = true};

            Assert.IsTrue(parser.Parse(firstDerived.GetType(), "Value").Invoke(firstDerived));
            Assert.IsTrue(parser.Parse(secondDerived.GetType(), "Value").Invoke(secondDerived));

            Assert.IsTrue(parser.Parse(typeof(ModelBase), "Value").Invoke(firstDerived));
            Assert.IsTrue(parser.Parse(typeof(ModelBase), "Value").Invoke(secondDerived));
        }