Skip to content
Snippets Groups Projects
Commit a9cfaa44 authored by Devon Carew's avatar Devon Carew
Browse files

Merge pull request #189 from devoncarew/devoncarew_add_web_tests

Add web tests
parents 9de3209a f7ec98c6
No related branches found
No related tags found
No related merge requests found
......@@ -26,6 +26,7 @@ dependencies:
uuid: '>=0.4.0 <0.5.0'
dev_dependencies:
browser: any
ghpages_generator: any
grinder: '>=0.6.0 <0.7.0'
unittest: any
......@@ -13,8 +13,6 @@ import 'package:stagehand/src/cli_app.dart';
import 'package:unittest/unittest.dart';
import 'package:usage/usage.dart';
void main() => defineTests();
void defineTests() {
group('cli', () {
CliApp app;
......
......@@ -7,8 +7,6 @@ library stagehand.common_test;
import 'package:stagehand/src/common.dart';
import 'package:unittest/unittest.dart';
void main() => defineTests();
void defineTests() {
group('common', () {
test('normalizeProjectName', () {
......@@ -31,8 +29,11 @@ void defineTests() {
test('convertToYamlMultiLine', () {
expect(
convertToYamlMultiLine('one two three four five size seven eight nine ten eleven twelve thirteen fourteen fifteen'),
' one two three four five size seven eight nine ten eleven twelve thirteen\n fourteen fifteen');
convertToYamlMultiLine(
'one two three four five size seven eight nine '
'ten eleven twelve thirteen fourteen fifteen'),
' one two three four five size seven eight nine ten eleven twelve '
'thirteen\n fourteen fifteen');
});
});
}
......
......@@ -7,8 +7,6 @@ library stagehand.generators_test;
import 'package:stagehand/stagehand.dart';
import 'package:unittest/unittest.dart';
void main() => defineTests();
void defineTests() {
group('generators', () {
generators.forEach((generator) {
......
<!DOCTYPE html>
<!-- Copyright (c) 2014, Google Inc. 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. -->
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Stagehand Tests</title>
</head>
<body>
<script src="packages/unittest/test_controller.js"></script>
<script type="application/dart" src="web_test.dart"></script>
<script src="packages/browser/dart.js"></script>
</body>
</html>
// Copyright (c) 2014, Google Inc. 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 stagehand.web_test;
import 'dart:async';
import 'package:stagehand/stagehand.dart';
import 'package:unittest/html_config.dart';
import 'package:unittest/unittest.dart';
import 'common_test.dart' as common_test;
import 'generators_test.dart' as generators_test;
// TODO: get the tests running in content_shell
void main() {
// Set up the test environment.
useHtmlConfiguration();
// Define the tests.
common_test.defineTests();
generators_test.defineTests();
defineIntegrationTests();
}
void defineIntegrationTests() {
group('integration', () {
generators.forEach((generator) {
test(generator.id, () => testGenerator(getGenerator(generator.id)));
});
});
}
Future testGenerator(Generator generator) {
expect(generator.id, isNotNull);
MockTarget target = new MockTarget();
// Assert that we can generate the template.
return generator.generate('foo', target).then((_) {
// Run some basic validation on the generated results.
expect(target.getFileContentsAsString('.gitignore'), isNotNull);
expect(target.getFileContentsAsString('pubspec.yaml'), isNotNull);
});
}
class MockTarget extends GeneratorTarget {
Map<String, List<int>> files = {};
Future createFile(String path, List<int> contents) {
files[path] = contents;
return new Future.value();
}
bool hasFile(String path) => files.containsKey(path);
String getFileContentsAsString(String path) {
if (!hasFile(path)) return null;
return new String.fromCharCodes(files[path]);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment