blob: 9bff4bb2eea2b40c39837b4518b19f6c00f62eae [file] [log] [blame]
// Copyright (c) 2019, 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.
import 'package:analyzer_plugin/protocol/protocol_common.dart';
import 'package:analyzer_plugin/utilities/change_builder/change_builder_core.dart';
import 'package:test/test.dart';
import '../../../../support/abstract_context.dart';
mixin DartChangeBuilderMixin implements AbstractContextTest {
SourceEdit getEdit(ChangeBuilder builder) {
var edits = getEdits(builder);
expect(edits, hasLength(1));
return edits[0];
}
List<SourceEdit> getEdits(ChangeBuilder builder) {
var sourceChange = builder.sourceChange;
expect(sourceChange, isNotNull);
var fileEdits = sourceChange.edits;
expect(fileEdits, hasLength(1));
var fileEdit = fileEdits[0];
expect(fileEdit, isNotNull);
return fileEdit.edits;
}
/// Return a newly created Dart change builder.
ChangeBuilder newBuilder() => ChangeBuilder(session: session);
}