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

Unified Diff: tests/try/poi/source_update.dart

Issue 2232273004: Delete site/try (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 4 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
Index: tests/try/poi/source_update.dart
diff --git a/tests/try/poi/source_update.dart b/tests/try/poi/source_update.dart
deleted file mode 100644
index 95ea1d18ce5239dead68d95df91c32355ed3da5d..0000000000000000000000000000000000000000
--- a/tests/try/poi/source_update.dart
+++ /dev/null
@@ -1,154 +0,0 @@
-// Copyright (c) 2014, 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 trydart.source_update;
-
-/// Returns [updates] expanded to full compilation units/source files.
-///
-/// [updates] is a convenient way to write updates/patches to a single source
-/// file without repeating common parts.
-///
-/// For example:
-/// ["head ", ["v1", "v2"], " tail"]
-/// expands to:
-/// ["head v1 tail", "head v2 tail"]
-List<String> expandUpdates(List updates) {
- int outputCount = updates.firstWhere((e) => e is Iterable).length;
- List<StringBuffer> result = new List<StringBuffer>(outputCount);
- for (int i = 0; i < outputCount; i++) {
- result[i] = new StringBuffer();
- }
- for (var chunk in updates) {
- if (chunk is Iterable) {
- int segmentCount = 0;
- for (var segment in chunk) {
- result[segmentCount++].write(segment);
- }
- if (segmentCount != outputCount) {
- throw new ArgumentError(
- "Expected ${outputCount} segments, "
- "but found ${segmentCount} in $chunk");
- }
- } else {
- for (StringBuffer buffer in result) {
- buffer.write(chunk);
- }
- }
- }
-
- return result.map((e) => '$e').toList();
-}
-
-/// Returns [files] split into multiple named files. The keys in the returned
-/// map are filenames, the values are the files' content.
-///
-/// Names are indicated by a line on the form "==> filename <==". Spaces are
-/// significant. For example, given this input:
-///
-/// ==> file1.dart <==
-/// First line of file 1.
-/// Second line of file 1.
-/// Third line of file 1.
-/// ==> empty.dart <==
-/// ==> file2.dart <==
-/// First line of file 2.
-/// Second line of file 2.
-/// Third line of file 2.
-///
-/// This function would return:
-///
-/// {
-/// "file1.dart": """
-/// First line of file 1.
-/// Second line of file 1.
-/// Third line of file 1.
-/// """,
-///
-/// "empty.dart":"",
-///
-/// "file2.dart":"""
-/// First line of file 2.
-/// Second line of file 2.
-/// Third line of file 2.
-/// """
-/// }
-Map<String, String> splitFiles(String files) {
- Map<String, String> result = <String, String>{};
- String currentName;
- List<String> content;
- void finishFile() {
- if (currentName != null) {
- if (result.containsKey(currentName)) {
- throw new ArgumentError("Duplicated filename $currentName in $files");
- }
- result[currentName] = content.join('');
- }
- content = null;
- }
- void processDirective(String line) {
- finishFile();
- if (line.length < 8 || !line.endsWith(" <==\n")) {
- throw new ArgumentError(
- "Malformed line: expected '==> ... <==', but got: '$line'");
- }
- currentName = line.substring(4, line.length - 5);
- content = <String>[];
- }
- for (String line in splitLines(files)) {
- if (line.startsWith("==>")) {
- processDirective(line);
- } else {
- content.add(line);
- }
- }
- finishFile();
- return result;
-}
-
-/// Split [text] into lines preserving trailing newlines (unlike
-/// String.split("\n"). Also, if [text] is empty, return an empty list (unlike
-/// String.split("\n")).
-List<String> splitLines(String text) {
- return text.split(new RegExp('^', multiLine: true));
-}
-
-/// Expand a file with diffs in common merge conflict format into a [List] that
-/// can be passed to [expandUpdates].
-///
-/// For example:
-/// first
-/// <<<<<<<
-/// v1
-/// =======
-/// v2
-/// =======
-/// v3
-/// >>>>>>>
-/// last
-///
-/// Would be expanded to something equivalent to:
-///
-/// ["first\n", ["v1\n", "v2\n", "v3\n"], "last\n"]
-List expandDiff(String text) {
- List result = [new StringBuffer()];
- bool inDiff = false;
- for (String line in splitLines(text)) {
- if (inDiff) {
- if (line.startsWith("=======")) {
- result.last.add(new StringBuffer());
- } else if (line.startsWith(">>>>>>>")) {
- inDiff = false;
- result.add(new StringBuffer());
- } else {
- result.last.last.write(line);
- }
- } else if (line.startsWith("<<<<<<<")) {
- inDiff = true;
- result.add(<StringBuffer>[new StringBuffer()]);
- } else {
- result.last.write(line);
- }
- }
- return result;
-}

Powered by Google App Engine
This is Rietveld 408576698