public void TestSyntaxTreeForRewrittenRoot() { var tree = SyntaxFactory.ParseSyntaxTree("class Class1<T> { }"); Assert.NotNull(tree.GetCompilationUnitRoot().SyntaxTree); var rewriter = new BadRewriter(); var rewrittenRoot = rewriter.Visit(tree.GetCompilationUnitRoot()); Assert.NotNull(rewrittenRoot.SyntaxTree); Assert.True(((SyntaxTree)rewrittenRoot.SyntaxTree).HasCompilationUnitRoot, "how did we get a non-CompilationUnit root?"); Assert.Same(rewrittenRoot, rewrittenRoot.SyntaxTree.GetRoot()); }