| // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| // @dart = 2.9 |
| |
| /// @assertion ContentType( |
| /// String primaryType, |
| /// String subType, { |
| /// String charset, |
| /// Map<String, String> parameters |
| /// }) |
| /// Creates a new content type object setting the primary type and sub type. The |
| /// charset and additional parameters can also be set using charset and |
| /// parameters. If charset is passed and parameters contains charset as well the |
| /// passed charset will override the value in parameters. Keys passed in |
| /// parameters will be converted to lower case. The charset entry, whether |
| /// passed as charset or in parameters, will have its value converted to |
| /// lower-case. |
| /// @description Checks that this constructor creates a new content type object |
| /// from parsing a Content-Type header value. Test only required parameters |
| /// @author sgrekhov@unipro.ru |
| |
| import "dart:io"; |
| import "../../../Utils/expect.dart"; |
| |
| check(String primaryType, String subType) { |
| ContentType contentType = new ContentType(primaryType, subType); |
| Expect.isNull(contentType.charset); |
| Expect.equals(primaryType + "/" + subType, contentType.mimeType); |
| Expect.equals(primaryType, contentType.primaryType); |
| Expect.equals(subType, contentType.subType); |
| Expect.mapEquals({}, contentType.parameters); |
| } |
| |
| main() { |
| |
| check("text", "html"); |
| check("ptype", "stype"); |
| check("ptype", ""); |
| check("", "stype"); |
| check("", ""); |
| } |