Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(207)

Side by Side Diff: test/iron_form_test.dart

Issue 1418513006: update elements and fix some bugs (Closed) Base URL: git@github.com:dart-lang/polymer_elements.git@master
Patch Set: update pubspec/changelog Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 @TestOn('browser') 4 @TestOn('browser')
5 library polymer_elements.test.iron_form_test; 5 library polymer_elements.test.iron_form_test;
6 6
7 import 'dart:async'; 7 import 'dart:async';
8 import 'dart:html'; 8 import 'dart:html';
9 import 'dart:js'; 9 import 'dart:js';
10 import 'package:polymer_elements/iron_form.dart'; 10 import 'package:polymer_elements/iron_form.dart';
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 form = fixture('FormGet'); 180 form = fixture('FormGet');
181 181
182 var submitted = false; 182 var submitted = false;
183 form.on['iron-form-submit'].take(1).listen((_) { 183 form.on['iron-form-submit'].take(1).listen((_) {
184 submitted = true; 184 submitted = true;
185 }); 185 });
186 186
187 form.on['iron-form-response'].take(1).listen((event) { 187 form.on['iron-form-response'].take(1).listen((event) {
188 expect(submitted, isTrue); 188 expect(submitted, isTrue);
189 189
190 var response = new JsObject.fromBrowserObject(event)['detail']; 190 var response = convertToDart(event).detail.response;
191 expect(response, isNotNull); 191 expect(response, isNotNull);
192 expect(response is JsObject, isTrue); 192 expect(response is JsObject, isTrue);
193 expect(response['success'], isTrue); 193 expect(response['success'], isTrue);
194 done.complete(); 194 done.complete();
195 }); 195 });
196 196
197 form.submit(); 197 form.submit();
198 return done.future; 198 return done.future;
199 }); 199 });
200 200
201 test('can submit with method=post', () { 201 test('can submit with method=post', () {
202 var done = new Completer(); 202 var done = new Completer();
203 form = fixture('FormPost'); 203 form = fixture('FormPost');
204 204
205 var submitted = false; 205 var submitted = false;
206 form.on['iron-form-submit'].take(1).listen((_) { 206 form.on['iron-form-submit'].take(1).listen((_) {
207 submitted = true; 207 submitted = true;
208 }); 208 });
209 209
210 form.on['iron-form-response'].take(1).listen((event) { 210 form.on['iron-form-response'].take(1).listen((event) {
211 expect(submitted, isTrue); 211 expect(submitted, isTrue);
212 var response = event.detail; 212 var response = convertToDart(event).detail.response;
213 expect(response, isNotNull); 213 expect(response, isNotNull);
214 expect(response is JsObject, isTrue); 214 expect(response is JsObject, isTrue);
215 expect(response['success'], isTrue); 215 expect(response['success'], isTrue);
216 done.complete(); 216 done.complete();
217 }); 217 });
218 218
219 form.submit(); 219 form.submit();
220 return done.future; 220 return done.future;
221 }, skip: 'https://github.com/dart-lang/polymer_elements/issues/16'); 221 }, skip: 'https://github.com/dart-lang/polymer_elements/issues/16');
222 222
223 test('can relay errors', () { 223 test('can relay errors', () {
224 var done = new Completer(); 224 var done = new Completer();
225 form = fixture('FormPost'); 225 form = fixture('FormPost');
226 form.action = "/responds_with_error"; 226 form.action = "/responds_with_error";
227 227
228 form.on['iron-form-error'].take(1).listen((event) { 228 form.on['iron-form-error'].take(1).listen((event) {
229 var error = convertToDart(event).detail; 229 var error = convertToDart(event).detail;
230 230
231 expect(error, isNotNull); 231 expect(error, isNotNull);
232 expect(error is Map, isTrue); 232 expect(error is Map, isTrue);
233 expect(error['error'], isNotNull); 233 expect(error['error'], isNotNull);
234 done.complete(); 234 done.complete();
235 }); 235 });
236 236
237 form.submit(); 237 form.submit();
238 return done.future; 238 return done.future;
239 }); 239 });
240 }); 240 });
241 } 241 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698