Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(813)

Unified Diff: pkg/analysis_server/test/source/optimizing_pub_package_map_provider_test.dart

Issue 1256793006: Stop optimizing uses of "pub list". (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/analysis_server/test/mocks.dart ('k') | pkg/analysis_server/test/source/test_all.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analysis_server/test/source/optimizing_pub_package_map_provider_test.dart
diff --git a/pkg/analysis_server/test/source/optimizing_pub_package_map_provider_test.dart b/pkg/analysis_server/test/source/optimizing_pub_package_map_provider_test.dart
deleted file mode 100644
index 4f6848572a7cec0c566a455e21bcada43d7dd486..0000000000000000000000000000000000000000
--- a/pkg/analysis_server/test/source/optimizing_pub_package_map_provider_test.dart
+++ /dev/null
@@ -1,244 +0,0 @@
-// 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 test.source.optimizing_pub_package_map_provider;
-
-import 'dart:convert';
-import 'dart:io' as io;
-
-import 'package:analysis_server/src/source/optimizing_pub_package_map_provider.dart';
-import 'package:analyzer/file_system/file_system.dart';
-import 'package:analyzer/file_system/memory_file_system.dart';
-import 'package:path/path.dart';
-import 'package:test_reflective_loader/test_reflective_loader.dart';
-import 'package:unittest/unittest.dart';
-
-main() {
- groupSep = ' | ';
- defineReflectiveTests(OptimizingPubPackageMapProviderTest);
- defineReflectiveTests(OptimizingPubPackageMapInfoTest);
-}
-
-@reflectiveTest
-class OptimizingPubPackageMapInfoTest {
- MemoryResourceProvider resourceProvider;
-
- int createFile(String path) {
- return resourceProvider.newFile(path, 'contents').modificationStamp;
- }
-
- void createFolder(String path) {
- resourceProvider.newFolder(path);
- }
-
- void modifyFile(String path) {
- resourceProvider.modifyFile(path, 'contents');
- }
-
- void setUp() {
- resourceProvider = new MemoryResourceProvider();
- }
-
- test_isChangedDependency_fileNotPresent() {
- String path = '/dep';
- int timestamp = 1;
- OptimizingPubPackageMapInfo info =
- new OptimizingPubPackageMapInfo({}, [path].toSet(), {path: timestamp});
- expect(info.isChangedDependency(path, resourceProvider), isTrue);
- }
-
- test_isChangedDependency_matchingTimestamp() {
- String path = '/dep';
- int timestamp = createFile(path);
- OptimizingPubPackageMapInfo info =
- new OptimizingPubPackageMapInfo({}, [path].toSet(), {path: timestamp});
- expect(info.isChangedDependency(path, resourceProvider), isFalse);
- }
-
- test_isChangedDependency_mismatchedTimestamp() {
- String path = '/dep';
- int timestamp = createFile(path);
- OptimizingPubPackageMapInfo info =
- new OptimizingPubPackageMapInfo({}, [path].toSet(), {path: timestamp});
- modifyFile(path);
- expect(info.isChangedDependency(path, resourceProvider), isTrue);
- }
-
- test_isChangedDependency_nonDependency() {
- OptimizingPubPackageMapInfo info =
- new OptimizingPubPackageMapInfo({}, ['/dep1'].toSet(), {});
- expect(info.isChangedDependency('/dep2', resourceProvider), isFalse);
- }
-
- test_isChangedDependency_nonFile() {
- String path = '/dep';
- int timestamp = 1;
- createFolder(path);
- OptimizingPubPackageMapInfo info =
- new OptimizingPubPackageMapInfo({}, [path].toSet(), {path: timestamp});
- expect(info.isChangedDependency(path, resourceProvider), isTrue);
- }
-
- test_isChangedDependency_noTimestampInfo() {
- String path = '/dep';
- OptimizingPubPackageMapInfo info =
- new OptimizingPubPackageMapInfo({}, [path].toSet(), {});
- expect(info.isChangedDependency(path, resourceProvider), isTrue);
- }
-}
-
-@reflectiveTest
-class OptimizingPubPackageMapProviderTest {
- MemoryResourceProvider resourceProvider;
- OptimizingPubPackageMapProvider provider;
- Folder projectFolder;
- io.ProcessResult pubListResult;
-
- void setPubListError() {
- pubListResult = new _MockProcessResult(0, 1, '', 'ERROR');
- }
-
- void setPubListResult({Map<String, String> packages: const {},
- List<String> input_files: const []}) {
- pubListResult = new _MockProcessResult(0, 0,
- JSON.encode({'packages': packages, 'input_files': input_files}), '');
- }
-
- void setUp() {
- resourceProvider = new MemoryResourceProvider();
- provider = new OptimizingPubPackageMapProvider(
- resourceProvider, null, _runPubList);
- projectFolder = resourceProvider.newFolder('/my/proj');
- }
-
- test_computePackageMap_noPreviousInfo() {
- String dep = posix.join(projectFolder.path, 'dep');
- String pkgName = 'foo';
- String pkgPath = '/pkg/foo';
- setPubListResult(packages: {pkgName: pkgPath}, input_files: [dep]);
- OptimizingPubPackageMapInfo info =
- provider.computePackageMap(projectFolder);
- expect(info.dependencies, hasLength(1));
- expect(info.dependencies, contains(dep));
- expect(info.packageMap, hasLength(1));
- expect(info.packageMap, contains(pkgName));
- expect(info.packageMap[pkgName], hasLength(1));
- expect(info.packageMap[pkgName][0].path, pkgPath);
- expect(info.modificationTimes, isEmpty);
- }
-
- test_computePackageMap_noPreviousInfo_pubListError() {
- String pubspecLock = posix.join(projectFolder.path, 'pubspec.lock');
- setPubListError();
- OptimizingPubPackageMapInfo info =
- provider.computePackageMap(projectFolder);
- expect(info.dependencies, hasLength(1));
- expect(info.dependencies, contains(pubspecLock));
- expect(info.packageMap, isNull);
- expect(info.modificationTimes, isEmpty);
- }
-
- test_computePackageMap_withPreviousInfo() {
- String dep = posix.join(projectFolder.path, 'dep');
- int timestamp = resourceProvider.newFile(dep, 'contents').modificationStamp;
- setPubListResult(input_files: [dep]);
- OptimizingPubPackageMapInfo info1 =
- provider.computePackageMap(projectFolder);
- OptimizingPubPackageMapInfo info2 =
- provider.computePackageMap(projectFolder, info1);
- expect(info2.dependencies, hasLength(1));
- expect(info2.dependencies, contains(dep));
- expect(info2.modificationTimes, hasLength(1));
- expect(info2.modificationTimes, contains(dep));
- expect(info2.modificationTimes[dep], timestamp);
- }
-
- test_computePackageMap_withPreviousInfo_newDependency() {
- String dep = posix.join(projectFolder.path, 'dep');
- resourceProvider.newFile(dep, 'contents').modificationStamp;
- setPubListResult(input_files: []);
- OptimizingPubPackageMapInfo info1 =
- provider.computePackageMap(projectFolder);
- setPubListResult(input_files: [dep]);
- OptimizingPubPackageMapInfo info2 =
- provider.computePackageMap(projectFolder, info1);
- expect(info2.modificationTimes, isEmpty);
- }
-
- test_computePackageMap_withPreviousInfo_oldDependencyNoLongerAFile() {
- String dep = posix.join(projectFolder.path, 'dep');
- resourceProvider.newFile(dep, 'contents').modificationStamp;
- setPubListResult(input_files: [dep]);
- OptimizingPubPackageMapInfo info1 =
- provider.computePackageMap(projectFolder);
- resourceProvider.deleteFile(dep);
- resourceProvider.newFolder(dep);
- OptimizingPubPackageMapInfo info2 =
- provider.computePackageMap(projectFolder, info1);
- expect(info2.modificationTimes, isEmpty);
- }
-
- test_computePackageMap_withPreviousInfo_oldDependencyNoLongerPresent() {
- String dep = posix.join(projectFolder.path, 'dep');
- resourceProvider.newFile(dep, 'contents').modificationStamp;
- setPubListResult(input_files: [dep]);
- OptimizingPubPackageMapInfo info1 =
- provider.computePackageMap(projectFolder);
- resourceProvider.deleteFile(dep);
- OptimizingPubPackageMapInfo info2 =
- provider.computePackageMap(projectFolder, info1);
- expect(info2.modificationTimes, isEmpty);
- }
-
- test_computePackageMap_withPreviousInfo_oldDependencyNoLongerRelevant() {
- String dep = posix.join(projectFolder.path, 'dep');
- resourceProvider.newFile(dep, 'contents').modificationStamp;
- setPubListResult(input_files: [dep]);
- OptimizingPubPackageMapInfo info1 =
- provider.computePackageMap(projectFolder);
- setPubListResult(input_files: []);
- OptimizingPubPackageMapInfo info2 =
- provider.computePackageMap(projectFolder, info1);
- expect(info2.modificationTimes, isEmpty);
- }
-
- test_computePackageMap_withPreviousInfo_pubListError() {
- String dep = posix.join(projectFolder.path, 'dep');
- String pubspecLock = posix.join(projectFolder.path, 'pubspec.lock');
- int timestamp = resourceProvider.newFile(dep, 'contents').modificationStamp;
- setPubListResult(input_files: [dep]);
- OptimizingPubPackageMapInfo info1 =
- provider.computePackageMap(projectFolder);
- setPubListError();
- OptimizingPubPackageMapInfo info2 =
- provider.computePackageMap(projectFolder, info1);
- expect(info2.dependencies, hasLength(2));
- expect(info2.dependencies, contains(dep));
- expect(info2.dependencies, contains(pubspecLock));
- expect(info2.modificationTimes, hasLength(1));
- expect(info2.modificationTimes, contains(dep));
- expect(info2.modificationTimes[dep], timestamp);
- }
-
- io.ProcessResult _runPubList(Folder folder) {
- expect(folder, projectFolder);
- return pubListResult;
- }
-}
-
-class _MockProcessResult implements io.ProcessResult {
- @override
- final int pid;
-
- @override
- final int exitCode;
-
- @override
- final stdout;
-
- @override
- final stderr;
-
- _MockProcessResult(this.pid, this.exitCode, this.stdout, this.stderr);
-}
« no previous file with comments | « pkg/analysis_server/test/mocks.dart ('k') | pkg/analysis_server/test/source/test_all.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698