| 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 | 4 |
| 5 import 'dart:convert'; | |
| 6 import 'dart:io'; | 5 import 'dart:io'; |
| 7 | 6 |
| 8 import '../lib/shared_messages.dart'; | 7 import '../lib/shared_messages.dart'; |
| 9 | 8 |
| 10 void testJsonIsUpdated() { | 9 void testJsonIsUpdated() { |
| 11 var packageRoot = Platform.packageRoot; | 10 var packageRoot = Platform.packageRoot; |
| 12 if (packageRoot == null || packageRoot == "") { | 11 if (packageRoot == null || packageRoot == "") { |
| 13 throw new UnsupportedError("This test requires a package root."); | 12 throw new UnsupportedError("This test requires a package root."); |
| 14 } | 13 } |
| 15 var jsonUri = | 14 var jsonUri = Uri.parse(packageRoot).resolve( |
| 16 Uri.parse(packageRoot).resolve('dart_messages/shared_messages.json'); | 15 'dart_messages/generated/shared_messages.json'); |
| 17 var jsonPath = jsonUri.toFilePath(); | 16 var jsonPath = jsonUri.toFilePath(); |
| 18 var content = new File(jsonPath).readAsStringSync(); | 17 var content = new File(jsonPath).readAsStringSync(); |
| 19 if (JSON.encode(MESSAGES) != content) { | 18 if (messagesAsJson != content) { |
| 20 print("The content of the Dart messages and the corresponding JSON file"); | 19 print("The content of the Dart messages and the corresponding JSON file"); |
| 21 print("is not the same."); | 20 print("is not the same."); |
| 22 print("Please run bin/json_converter to update the JSON file."); | 21 print("Please run bin/publish.dart to update the JSON file."); |
| 23 throw "Content is not the same"; | 22 throw "Content is not the same"; |
| 24 } | 23 } |
| 25 } | 24 } |
| 26 | 25 |
| 27 void testIdsAreUnique() { | 26 void testIdsAreUnique() { |
| 28 var usedIds = new Set(); | 27 var usedIds = new Set(); |
| 29 for (var entry in MESSAGES.values) { | 28 for (var entry in MESSAGES.values) { |
| 30 var id = entry['id']; | 29 var id = entry.id; |
| 31 if (!usedIds.add(id)) { | 30 if (!usedIds.add(id)) { |
| 32 throw "Id appears twice: $id"; | 31 throw "Id appears twice: $id"; |
| 33 } | 32 } |
| 34 } | 33 } |
| 35 } | 34 } |
| 36 | 35 |
| 37 void main() { | 36 void main() { |
| 38 testJsonIsUpdated(); | 37 testJsonIsUpdated(); |
| 39 testIdsAreUnique(); | 38 testIdsAreUnique(); |
| 40 } | 39 } |
| OLD | NEW |