Files
sdk/pkg/smoke/test/codegen/common.dart
T
2014-03-19 00:21:23 +00:00

26 lines
1008 B
Dart

// 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 smoke.test.codegen.common;
import 'package:smoke/codegen/generator.dart';
import 'package:unittest/unittest.dart';
checkResults(SmokeCodeGenerator generator, {List<String> imports: const [],
String topLevel: '', String initCall}) {
var allImports = []..addAll(DEFAULT_IMPORTS)..addAll(imports)..add('');
var genImports = new StringBuffer();
generator.writeImports(genImports);
expect(genImports.toString(), allImports.join('\n'));
var genTopLevel = new StringBuffer();
generator.writeTopLevelDeclarations(genTopLevel);
expect(genTopLevel.toString(), topLevel);
var indentedCode = initCall.replaceAll("\n", "\n ").trim();
var genInitCall = new StringBuffer();
generator.writeInitCall(genInitCall);
expect(genInitCall.toString(), ' $indentedCode\n');
}