| OLD | NEW |
| 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 Loading... |
| 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 } |
| OLD | NEW |