| import 'dart:sky' as sky; |
| |
| import 'package:test/test.dart'; |
| |
| void main() { |
| test('should be settable using "style" attribute', () { |
| sky.LayoutRoot layoutRoot = new sky.LayoutRoot(); |
| var document = new sky.Document(); |
| var foo = document.createElement('foo'); |
| layoutRoot.rootElement = foo; |
| |
| foo.setAttribute('style', 'color: red'); |
| |
| expect(foo.getAttribute('style'), equals('color: red')); |
| expect(foo.style["color"], equals('rgb(255, 0, 0)')); |
| }); |
| |
| test('should not crash when setting style to null', () { |
| sky.LayoutRoot layoutRoot = new sky.LayoutRoot(); |
| var document = new sky.Document(); |
| var foo = document.createElement('foo'); |
| layoutRoot.rootElement = foo; |
| |
| expect(foo.style['color'], isNull); |
| foo.style["color"] = null; // This used to crash. |
| expect(foo.style['color'], isNull); |
| foo.style["color"] = "blue"; |
| expect(foo.style['color'], equals("rgb(0, 0, 255)")); |
| foo.style["color"] = null; |
| expect(foo.style['color'], isNull); |
| foo.style["color"] = "blue"; |
| expect(foo.style['color'], equals("rgb(0, 0, 255)")); |
| foo.style.removeProperty("color"); |
| expect(foo.style['color'], isNull); |
| |
| layoutRoot.layout(); |
| }); |
| } |