| <!doctype html> |
| <html> |
| <head> |
| <meta charset="utf8"> |
| <link rel="help" href="http://url.spec.whatwg.org/#dom-urlsearchparams-append"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="resources/testharness-extras.js"></script> |
| <script> |
| test(function() { |
| var params = new URLSearchParams(); |
| params.append('a', 'b'); |
| assert_equals(params + '', 'a=b'); |
| params.append('a', 'b'); |
| assert_equals(params + '', 'a=b&a=b'); |
| params.append('a', 'c'); |
| assert_equals(params + '', 'a=b&a=b&a=c'); |
| }, 'Append same name'); |
| |
| test(function() { |
| var params = new URLSearchParams(); |
| params.append('', ''); |
| assert_equals(params + '', '='); |
| params.append('', ''); |
| assert_equals(params + '', '=&='); |
| }, 'Append empty strings'); |
| |
| test(function() { |
| var params = new URLSearchParams(); |
| params.append(null, null); |
| assert_equals(params + '', 'null=null'); |
| params.append(null, null); |
| assert_equals(params + '', 'null=null&null=null'); |
| }, 'Append null'); |
| |
| test(function() { |
| var params = new URLSearchParams(); |
| params.append('first', 1); |
| params.append('second', 2); |
| params.append('third', ''); |
| params.append('first', 10); |
| assert_true(params.has('first'), 'Search params object has name "first"'); |
| assert_equals(params.get('first'), '1', 'Search params object has name "first" with value "1"'); |
| assert_equals(params.get('second'), '2', 'Search params object has name "second" with value "2"'); |
| assert_equals(params.get('third'), '', 'Search params object has name "third" with value ""'); |
| params.append('first', 10); |
| assert_equals(params.get('first'), '1', 'Search params object has name "first" with value "1"'); |
| }, 'Append multiple'); |
| </script> |
| </head> |
| </html> |