Files
sdk/pkg/front_end/test/utils/io_utils.dart
T
Jens Johansen 8e7812fee5 [CFE] Ability to low-level compare dill bytes
Output from a comparison could be something like

Integers differ: 2 vs 3
Map with key 'nullability' has different values (tag 95, likely 'TypeParameterType')
Lists have different values at index 0
Map with key 'items' has different values
Map with key 'typeArguments' has different values (tag 93, likely 'InterfaceType')
Map with key 'returnType' has different values (tag 3, likely 'FunctionNode')
Map with key 'value' has different values (tag 1, likely 'Something<1>')
Map with key 'function' has different values (tag 6, likely 'Procedure')
Lists have different values at index 0
Map with key 'items' has different values
Map with key 'procedures' has different values (tag 2, likely 'Class')
Lists have different values at index 6
Map with key 'items' has different values
Map with key 'classes' has different values
Lists have different values at index 458
Map with key 'libraries' has different values

Which should be read bottom up as something like
Component -> the 458th library -> the 6th class ->
    the 0th procedure -> function -> returnType (a InterfaceType) ->
    0th type argument (a TypeParameterType) ->
    nullability has value 2 in one input and 3 in the other.

Change-Id: I49007a80ddb53a0ba1fae04b22d6efeae3687724
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114602
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2019-08-30 07:43:30 +00:00

19 lines
652 B
Dart

// 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.md file.
import 'dart:io' show Directory, File, Platform, Process, ProcessResult;
String computeRepoDir() {
ProcessResult result = Process.runSync(
'git', ['rev-parse', '--show-toplevel'],
runInShell: true,
workingDirectory: new File.fromUri(Platform.script).parent.path);
return (result.stdout as String).trim();
}
Uri computeRepoDirUri() {
String dirPath = computeRepoDir();
return new Directory(dirPath).uri;
}