anchor.diff:  
     DialogTester(this.dialogAccess);
   
  +  DialogTester.fromId(String id) {
  +    dialogAccess = new DialogAccess(id);
  +  }
  +
     bool get functionallyOpened => dialogAccess.opened;
   
     bool get visuallyOpened {
  -//    SparkModal modalElement = dialogAccess.modalElement;
  -//    CssStyleDeclaration style = modalElement.getComputedStyle();
  -//    String opacity = style.opacity;
  -//    String display = style.display;
  -//    String visibility = style.visibility;
  -
  -//    return int.parse(opacity) > 0 && display != "none" && visibility == "visible";
       return dialogAccess.fullyVisible;
     }
   
  
positive.code:       expect(dialogTester.visuallyOpened, true);
        expect(dialogTester.functionallyOpened, true);
        dialogTester.clickClosingX();
      }).then((_) => new Future.delayed(const Duration(milliseconds: 1))
      ).then((_) => menuItem.dialog.onTransitionComplete.first
      ).then((_) {
        expect(dialogTester.functionallyOpened, false);
  
negative.code: //    });
  
      test('close dialog', () {
        DialogTester dialogTester = new DialogTester.fromId("aboutDialog");
        if (!dialogTester.functionallyOpened) return null;
        dialogTester.dialogAccess.clickButtonWithTitle("done");
        expect(dialogTester.functionallyOpened, false);
  
        return new Future.delayed(const Duration(milliseconds: 1000)).then((_){
          expect(dialogTester.visuallyOpened, false);
        });
      });
    });
  