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

Unified Diff: packages/intl/test/message_extraction/failed_extraction_test.dart

Issue 1400473008: Roll Observatory packages and add a roll script (Closed) Base URL: git@github.com:dart-lang/observatory_pub_packages.git@master
Patch Set: Created 5 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: packages/intl/test/message_extraction/failed_extraction_test.dart
diff --git a/packages/intl/test/message_extraction/failed_extraction_test.dart b/packages/intl/test/message_extraction/failed_extraction_test.dart
new file mode 100644
index 0000000000000000000000000000000000000000..51b2c4bcb4489501b2e26c29764b5195c348efc5
--- /dev/null
+++ b/packages/intl/test/message_extraction/failed_extraction_test.dart
@@ -0,0 +1,46 @@
+// Copyright (c) 2014, 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.
+library failed_extraction_test;
+
+import "message_extraction_test.dart";
+import "dart:io";
+import "package:unittest/unittest.dart";
+
+main() {
+ test("Expect warnings but successful extraction", () {
+ runTestWithWarnings(warningsAreErrors: false, expectedExitCode: 0);
+ });
+}
+
+const defaultFiles = const [
+ "sample_with_messages.dart",
+ "part_of_sample_with_messages.dart"
+];
+
+void runTestWithWarnings({bool warningsAreErrors, int expectedExitCode,
+ bool embeddedPlurals: true, List<String> sourceFiles: defaultFiles}) {
+ void verify(ProcessResult result) {
+ try {
+ expect(result.exitCode, expectedExitCode);
+ } finally {
+ deleteGeneratedFiles();
+ }
+ }
+
+ copyFilesToTempDirectory();
+ var program = asTestDirPath("../../bin/extract_to_arb.dart");
+ var args = ["--output-dir=$tempDir"];
+ if (warningsAreErrors) {
+ args.add('--warnings-are-errors');
+ }
+ if (!embeddedPlurals) {
+ args.add('--no-embedded-plurals');
+ }
+ var files = sourceFiles.map(asTempDirPath).toList();
+ var allArgs = [program]
+ ..addAll(args)
+ ..addAll(files);
+ var callback = expectAsync(verify);
+ run(null, allArgs).then(callback);
+}

Powered by Google App Engine
This is Rietveld 408576698