| if (typeof TypedObject === 'undefined') |
| quit(); |
| |
| var StructType = TypedObject.StructType; |
| var uint8 = TypedObject.uint8; |
| |
| function check(c) { |
| assertEq(c.r, 129); |
| } |
| |
| function run() { |
| var RgbColor = new StructType({r: uint8, g: uint8, b: uint8}); |
| var Fade = new StructType({from: RgbColor, to: RgbColor}); |
| |
| var BrgColor = new StructType({b: uint8, r: uint8, g: uint8}); |
| var BrgFade = new StructType({from: BrgColor, to: BrgColor}); |
| |
| var gray = new RgbColor({r: 129, g: 128, b: 127}); |
| |
| var fade = new Fade({from: gray, to: gray}); |
| fade.to = {r: 129, g: 128, b: 127}; |
| |
| var brgGray = new BrgColor(gray); |
| fade.from = brgGray; |
| |
| var brgFade = new BrgFade(fade); |
| |
| check(fade.to); |
| check(brgFade.to); |
| check(fade.to); |
| check(brgFade.to); |
| } |
| |
| run(); |