public void Should_call_compatible_method()
        {
            var sampleVisitor = new SampleVisitor();
            var symbol        = new SymbolNode("foo");

            sampleVisitor.Invoke("Visit", symbol);

            sampleVisitor.NumberOfTimesCalled.ShouldBe(1);
        }
        public void Should_call_most_derived_visit_method()
        {
            var sampleVisitor = new SampleVisitor();
            IVisitor <AstNode, int> visitor = sampleVisitor;

            visitor.Visit(new SymbolNode("foo"));

            sampleVisitor.NumberOfTimesCalled.ShouldBe(1);
        }