blob: a7a4c4ca0cbedcd38df50b429bf016001ebe7b9d [file] [log] [blame]
// 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');
}