Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(754)

Side by Side Diff: pkg/dart_messages/test/dart_messages_test.dart

Issue 1582903003: Generate dart2js and analyzer files for shared messages. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Address comments (and rebase) Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 }
OLDNEW
« no previous file with comments | « pkg/dart_messages/lib/shared_messages.json ('k') | tests/compiler/dart2js/message_kind_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698