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

Unified Diff: tools/testing/dart/test_suite.dart

Issue 9950005: First check in for pub package manager. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Respond to review. Created 8 years, 9 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
« no previous file with comments | « no previous file | utils/pub/pub.dart » ('j') | utils/pub/pub.dart » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/testing/dart/test_suite.dart
diff --git a/tools/testing/dart/test_suite.dart b/tools/testing/dart/test_suite.dart
index ca063a2ccb5c10dc380d0e27e67477e81daf4d1b..b4a503cbdaeb9a3fbb7c2268ce1561e29831babd 100644
--- a/tools/testing/dart/test_suite.dart
+++ b/tools/testing/dart/test_suite.dart
@@ -984,6 +984,52 @@ class DartcCompilationTestSuite extends StandardTestSuite {
}
+/**
+ * A standard test suite whose file organization matches an expected structure.
+ * To use this, your suite should look like:
+ *
+ * dart/
+ * path/
+ * to/
+ * mytestsuite/
+ * mytestsuite.status
+ * example1_tests.dart
+ * example2_tests.dart
+ * example3_tests.dart
+ *
+ * The important parts:
+ *
+ * * The leaf directory name is the name of your test suite.
+ * * The status file uses the same name.
+ * * Test files are directly in that directory and end in "_tests.dart".
+ *
+ * If you follow that convention, then you can construct one of these like:
+ *
+ * new DirectoryTestSuite(configuration, 'path/to/mytestsuite');
+ *
+ * instead of having to create a custom [StandardTestSuite] subclass. In
+ * particular, if you add 'path/to/mytestsuite' to [TEST_SUITE_DIRECTORIES] in
+ * test.dart, this will all be set up for you.
+ */
+class DirectoryTestSuite extends StandardTestSuite {
+ factory DirectoryTestSuite(Map configuration, String directory) {
+ final name = directory.substring(directory.lastIndexOf('/') + 1);
+ print(name);
+
+ return new DirectoryTestSuite._internal(configuration,
+ name, directory, ['$directory/$name.status']);
+ }
+
+ DirectoryTestSuite._internal(Map configuration,
+ String suiteName,
+ String directoryPath,
+ List<String> statusFilePaths)
+ : super(configuration, suiteName, directoryPath, statusFilePaths);
+
+ bool isTestFile(String filename) => filename.endsWith('_tests.dart');
+}
+
+
class JUnitTestSuite implements TestSuite {
Map configuration;
String suiteName;
« no previous file with comments | « no previous file | utils/pub/pub.dart » ('j') | utils/pub/pub.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698