blob: 5a915e5931225b2100338ffea1327eb89ec467c7 [file] [log] [blame]
// Copyright 2014 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'package:file/file.dart';
import 'package:file/memory.dart';
import 'package:flutter_tools/src/base/logger.dart';
import 'package:flutter_tools/src/isolated/mustache_template.dart';
import 'package:flutter_tools/src/template.dart';
import '../../src/common.dart';
void main() {
testWithoutContext('kotlin reserved keywords', () {
final FileSystem fileSystem = MemoryFileSystem.test();
final BufferLogger logger = BufferLogger.test();
final Directory rootDir = fileSystem.currentDirectory;
final Directory templateSource = rootDir.childDirectory('src');
final Directory imageSourceDir = templateSource;
final Directory destination = rootDir.childDirectory('dest');
const String outputClass = 'SomeClass.kt';
final File sourceFile = templateSource.childFile('$outputClass.tmpl');
templateSource.createSync();
sourceFile.writeAsStringSync('package {{androidIdentifier}};');
final Template template = Template(
templateSource,
imageSourceDir,
fileSystem: fileSystem,
logger: logger,
templateRenderer: const MustacheTemplateRenderer(),
);
final Map<String, Object> context = <String, Object>{
'androidIdentifier': 'is.in.when.there',
};
template.render(destination, context);
final File destinationFile = destination.childFile(outputClass);
expect(destinationFile.readAsStringSync(), equals('package `is`.`in`.`when`.there;'));
});
}