| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 library swarm_tests; | 5 library swarm_tests; |
| 6 | 6 |
| 7 import 'dart:html'; | 7 import 'dart:html'; |
| 8 import 'dart:async'; | 8 import 'dart:async'; |
| 9 import 'package:expect/expect.dart'; | 9 import 'package:expect/expect.dart'; |
| 10 import 'package:unittest/html_config.dart'; | 10 import 'package:unittest/html_config.dart'; |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 // TODO(jmesserly): should be adding the full stylesheet here | 26 // TODO(jmesserly): should be adding the full stylesheet here |
| 27 Dom.addStyle(''' | 27 Dom.addStyle(''' |
| 28 .story-content { | 28 .story-content { |
| 29 -webkit-column-width: 300px; | 29 -webkit-column-width: 300px; |
| 30 -webkit-column-gap: 26px; /* 2em */ | 30 -webkit-column-gap: 26px; /* 2em */ |
| 31 }'''); | 31 }'''); |
| 32 | 32 |
| 33 getStoryNode() => swarm.frontView.storyView.node; | 33 getStoryNode() => swarm.frontView.storyView.node; |
| 34 | 34 |
| 35 getView(Section section) { | 35 getView(Section section) { |
| 36 return CollectionUtils.find(swarm.frontView.sections.childViews, | 36 return CollectionUtils.find( |
| 37 (view) => view.section == section); | 37 swarm.frontView.sections.childViews, (view) => view.section == section); |
| 38 } | 38 } |
| 39 | 39 |
| 40 getHistory(Article article) { | 40 getHistory(Article article) { |
| 41 final feed = article.dataSource; | 41 final feed = article.dataSource; |
| 42 return { | 42 return { |
| 43 'section': CollectionUtils.find(swarm.sections, | 43 'section': CollectionUtils |
| 44 (s) => s.feeds.indexOf(feed, 0) >= 0).id, | 44 .find(swarm.sections, (s) => s.feeds.indexOf(feed, 0) >= 0) |
| 45 .id, |
| 45 'feed': feed.id, | 46 'feed': feed.id, |
| 46 'article': article.id | 47 'article': article.id |
| 47 }; | 48 }; |
| 48 } | 49 } |
| 49 | 50 |
| 50 test('BackButton', () { | 51 test('BackButton', () { |
| 51 _serialInvokeAsync([ | 52 _serialInvokeAsync([ |
| 52 () { | 53 () { |
| 53 Expect.equals(null, swarm.frontView.storyView); // verify initial state | 54 Expect.equals(null, swarm.frontView.storyView); // verify initial state |
| 54 | 55 |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 }); | 107 }); |
| 107 } | 108 } |
| 108 | 109 |
| 109 /** Triggers the click event, like [http://api.jquery.com/click/] */ | 110 /** Triggers the click event, like [http://api.jquery.com/click/] */ |
| 110 click(Element element) { | 111 click(Element element) { |
| 111 // TODO(rnystrom): This should be on the DOM API somewhere. | 112 // TODO(rnystrom): This should be on the DOM API somewhere. |
| 112 MouseEvent event = new MouseEvent('click'); | 113 MouseEvent event = new MouseEvent('click'); |
| 113 element.dispatchEvent(event); | 114 element.dispatchEvent(event); |
| 114 } | 115 } |
| 115 | 116 |
| 116 | |
| 117 /** A proxy so we can intercept history calls */ | 117 /** A proxy so we can intercept history calls */ |
| 118 class UIStateProxy extends SwarmState { | 118 class UIStateProxy extends SwarmState { |
| 119 List<Map<String, String>> history; | 119 List<Map<String, String>> history; |
| 120 | 120 |
| 121 UIStateProxy(Sections dataModel) : super(dataModel) { | 121 UIStateProxy(Sections dataModel) : super(dataModel) { |
| 122 clearHistory(); | 122 clearHistory(); |
| 123 } | 123 } |
| 124 | 124 |
| 125 void pushToHistory() { | 125 void pushToHistory() { |
| 126 history.add(toHistory()); | 126 history.add(toHistory()); |
| (...skipping 19 matching lines...) Expand all Loading... |
| 146 final length = closures.length; | 146 final length = closures.length; |
| 147 if (length > 0) { | 147 if (length > 0) { |
| 148 int i = 0; | 148 int i = 0; |
| 149 void invokeNext() { | 149 void invokeNext() { |
| 150 closures[i](); | 150 closures[i](); |
| 151 i++; | 151 i++; |
| 152 if (i < length) { | 152 if (i < length) { |
| 153 Timer.run(expectAsync(invokeNext)); | 153 Timer.run(expectAsync(invokeNext)); |
| 154 } | 154 } |
| 155 } | 155 } |
| 156 |
| 156 Timer.run(expectAsync(invokeNext)); | 157 Timer.run(expectAsync(invokeNext)); |
| 157 } | 158 } |
| 158 } | 159 } |
| OLD | NEW |