anchor.diff:    });
   }
   
  -_codeMirrorTests() {
  +createCodeMirrorTests() {
     CodeMirror editor;
   
     setUp(() {
  
positive.code: 
    document.body.children.add(editorHost);
  
    group('simple', _simpleTests);
    group('CodeMirror', _codeMirrorTests);
  }
  
  _simpleTests() {
    test('create works', () {
      CodeMirror editor = new CodeMirror.fromElement(editorHost);
      expect(editor, isNotNull);
  
negative.code:     expect(editorHost.parent, isNotNull);
    });
  
    test('getOption / setOption', () {
      expect(editor.getOption('lineWrapping'), false);
      editor.setOption('lineWrapping', true);
      expect(editor.getOption('lineWrapping'), true);
    });
  }
  
  createDocTests() {
    CodeMirror editor;
  
    setUp(() {
      editor = new CodeMirror.fromElement(editorHost);
    });
  
    tearDown(() {
      editor.dispose();
      editorHost.children.clear();
    });
  
    test('getValue / getValue', () {
      Doc doc = editor.getDoc();
      expect(doc.getValue(), '');
      doc.setValue('foo bar');
      expect(doc.getValue(), 'foo bar');
    });
  
    test('getLine', () {
      Doc doc = editor.getDoc();
      doc.setValue('one\ntwo\nthree');
      expect(doc.getLine(0), 'one');
      expect(doc.getLine(1), 'two');
      expect(doc.getLine(2), 'three');
    });
  }
  