blob: e0adfa4b4c030ee8b79ea4faabf6f5328fe98a6d [file] [log] [blame]
#!/usr/bin/env dart
// Copyright (c) 2015, 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 client_generator_test;
import 'package:protoc_plugin/indenting_writer.dart';
import 'package:protoc_plugin/protoc.dart';
import 'package:test/test.dart';
import 'golden_file.dart';
import 'service_util.dart';
void main() {
test('testClientGenerator', () {
var options = new GenerationOptions();
var fd = buildFileDescriptor(
"testpkg", "testpkg.proto", ["SomeRequest", "SomeReply"]);
fd.service.add(buildServiceDescriptor());
var fg = new FileGenerator(fd, options);
var fd2 = buildFileDescriptor(
"foo.bar", "foobar.proto", ["EmptyMessage", "AnotherReply"]);
var fg2 = new FileGenerator(fd2, options);
link(new GenerationOptions(), [fg, fg2]);
ClientApiGenerator cag = fg.clientApiGenerators[0];
IndentingWriter writer = new IndentingWriter();
cag.generate(writer);
expectMatchesGoldenFile(writer.toString(), 'test/goldens/client');
});
}