blob: 58c8a0d759d0e2b4a2e901688009395db30779ff [file] [log] [blame]
// Copyright (c) 2024, 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 'dart:async';
import 'package:test_reflective_loader/test_reflective_loader.dart';
import '../../test/shared/shared_dtd_tests.dart';
import 'integration_tests.dart';
void main() {
defineReflectiveSuite(() {
defineReflectiveTests(DtdTest);
});
}
@reflectiveTest
class DtdTest
// This is an integration test that runs with an out-of-process server.
// Because each test spawns a DTD instance and running this suite can be
// slow we don't have an in-memory copy of these tests, but the base class
// can temporarily be changed to `AbstractLspAnalysisServerTest` to run
// with an in-process (analysis) server for easier debugging. DTD always
// runs out-of-process.
extends
AbstractLspAnalysisServerIntegrationTest
// Test implementations come from this mixin because they
// are shared with the legacy server integration tests.
with
SharedDtdTests {
@override
String get testFile => mainFilePath;
@override
Uri get testFileUri => mainFileUri;
@override
void createFile(String path, String content) {
newFile(path, content);
}
@override
Future<void> initializeServer() async {
await initialize();
}
@override
Future<void> setUp() async {
await super.setUp();
await setUpDtd();
}
@override
Future<void> shutdownServer() async {
await sendShutdown();
}
@override
Future<void> tearDown() async {
await tearDownDtd();
super.tearDown();
}
}