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 |