aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.tests/unittests/com/android/ide/eclipse/adt/internal/editors/formatting/AndroidXmlFormattingStrategyTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.tests/unittests/com/android/ide/eclipse/adt/internal/editors/formatting/AndroidXmlFormattingStrategyTest.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.tests/unittests/com/android/ide/eclipse/adt/internal/editors/formatting/AndroidXmlFormattingStrategyTest.java335
1 files changed, 0 insertions, 335 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.tests/unittests/com/android/ide/eclipse/adt/internal/editors/formatting/AndroidXmlFormattingStrategyTest.java b/eclipse/plugins/com.android.ide.eclipse.tests/unittests/com/android/ide/eclipse/adt/internal/editors/formatting/AndroidXmlFormattingStrategyTest.java
deleted file mode 100644
index 9c7e25d4b..000000000
--- a/eclipse/plugins/com.android.ide.eclipse.tests/unittests/com/android/ide/eclipse/adt/internal/editors/formatting/AndroidXmlFormattingStrategyTest.java
+++ /dev/null
@@ -1,335 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Eclipse Public License, Version 1.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.eclipse.org/org/documents/epl-v10.php
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.ide.eclipse.adt.internal.editors.formatting;
-
-import com.android.ide.common.xml.XmlFormatPreferences;
-
-import org.eclipse.jface.text.BadLocationException;
-import org.eclipse.jface.text.Document;
-import org.eclipse.text.edits.MalformedTreeException;
-import org.eclipse.text.edits.ReplaceEdit;
-
-import junit.framework.TestCase;
-
-@SuppressWarnings("javadoc")
-public class AndroidXmlFormattingStrategyTest extends TestCase {
- // In the given before document, replace in the range replaceStart to replaceEnd
- // the formatted string, and assert that it's identical to the given after string
- private void check(String before, int replaceStart, int replaceEnd, String formatted,
- String expected, XmlFormatPreferences prefs)
- throws MalformedTreeException, BadLocationException {
- Document document = new Document();
- document.set(before);
- ReplaceEdit edit = AndroidXmlFormattingStrategy.createReplaceEdit(document, replaceStart,
- replaceEnd, formatted, prefs);
- assertNotNull(edit);
- edit.apply(document);
- String contents = document.get();
- // Ensure that we don't have any mangled CRLFs
- char prev = 0;
- boolean haveCrlf = false;
- for (int i = 0, n = contents.length(); i < n; i++) {
- char c = contents.charAt(i);
- if (c == '\r') {
- haveCrlf = true;
- }
- if (!(c != '\r' || prev != '\r')) {
- fail("Mangled document: Found adjacent \\r's starting at " + i
- + ": " + contents.substring(i - 1, Math.min(contents.length(), i + 10))
- + "...");
- }
- if (haveCrlf && c == '\n' && prev != '\r') {
- fail("Mangled document: In a CRLF document, found \\n without preceeding \\r");
- }
-
- prev = c;
- }
-
- assertEquals(expected, contents);
- }
-
- // In the given before document, replace the range indicated by [ and ] with the given
- // formatted string, and assert that it's identical to the given after string
- private void check(
- String before, String insert, String expected,
- XmlFormatPreferences prefs)
- throws MalformedTreeException, BadLocationException {
- int replaceStart = before.indexOf('[');
- assertTrue(replaceStart != -1);
- before = before.substring(0, replaceStart) + before.substring(replaceStart + 1);
-
- int replaceEnd = before.indexOf(']');
- assertTrue(replaceEnd != -1);
- before = before.substring(0, replaceEnd) + before.substring(replaceEnd + 1);
-
- check(before, replaceStart, replaceEnd, insert, expected, prefs);
- }
-
- public void test1() throws Exception {
- check(
- // Before
- "<root>\n" +
- "[ <element/>\n" +
- " <second/>\n" +
- "]\n" +
- "</root>\n",
-
- // Insert
- " <element/>\n" +
- " <second/>\n",
-
- // After
- "<root>\n" +
- " <element/>\n" +
- " <second/>\n" +
- "\n" +
- "</root>\n",
-
- XmlFormatPreferences.defaults());
- }
-
- public void test2() throws Exception {
- XmlFormatPreferences prefs = XmlFormatPreferences.defaults();
- prefs.removeEmptyLines = true;
-
- check(
- // Before
- "<root>\n" +
- "\n" +
- "\n" +
- "[ <element/>\n" +
- " <second/>\n" +
- "]\n" +
- "\n" +
- "\n" +
- "</root>\n",
-
- // Insert
- " <element/>\n" +
- " <second/>\n",
-
- // After
- "<root>\n" +
- " <element/>\n" +
- " <second/>\n" +
- "</root>\n",
-
- prefs);
- }
-
- public void test3() throws Exception {
- XmlFormatPreferences prefs = XmlFormatPreferences.defaults();
- prefs.removeEmptyLines = true;
-
- check(
- // Before
- "<root>\n" +
- "\n" +
- "\n" +
- " [<element/>\n" +
- " <second/>]\n" +
- "\n" +
- "\n" +
- "\n" +
- "</root>\n",
-
- // Insert
- " <element/>\n" +
- " <second/>",
-
- // After
- "<root>\n" +
- " <element/>\n" +
- " <second/>\n" +
- "</root>\n",
-
- prefs);
- }
-
- public void test4() throws Exception {
- check(
- "<RelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n" +
- " xmlns:tools=\"http://schemas.android.com/tools\"\n" +
- " android:layout_width=\"match_parent\"\n" +
- " android:layout_height=\"match_parent\" >\n" +
- "\n" +
- " [<TextView\n" +
- " android:layout_width=\"wrap_content\"\n" +
- " android:layout_height=\"wrap_content\"\n" +
- " android:layout_centerHorizontal=\"true\"\n" +
- " android:layout_centerVertical=\"true\"\n" +
- " android:text=\"foo\"\n" +
- " tools:context=\".MainActivity\" />]\n" +
- "\n" +
- "</RelativeLayout>\n",
-
- // Insert
- "\n" +
- " <TextView\n" +
- " android:layout_width=\"wrap_content\"\n" +
- " android:layout_height=\"wrap_content\"\n" +
- " android:layout_centerHorizontal=\"true\"\n" +
- " android:layout_centerVertical=\"true\"\n" +
- " android:text=\"foo\"\n" +
- " tools:context=\".MainActivity\" />\n",
-
- // After
- "<RelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\n" +
- " xmlns:tools=\"http://schemas.android.com/tools\"\n" +
- " android:layout_width=\"match_parent\"\n" +
- " android:layout_height=\"match_parent\" >\n" +
- "\n" +
- " <TextView\n" +
- " android:layout_width=\"wrap_content\"\n" +
- " android:layout_height=\"wrap_content\"\n" +
- " android:layout_centerHorizontal=\"true\"\n" +
- " android:layout_centerVertical=\"true\"\n" +
- " android:text=\"foo\"\n" +
- " tools:context=\".MainActivity\" />\n" +
- "\n" +
- "</RelativeLayout>\n",
-
- XmlFormatPreferences.defaults());
- }
-
- public void testCrLf1() throws Exception {
- check(
- // Before
- "<root>\r\n" +
- "[ <element/>\r\n" +
- " <second/>\r\n" +
- "]\r\n" +
- "</root>\r\n",
-
- // Insert
- " <element/>\r\n" +
- " <second/>\r\n",
-
- // After
- "<root>\r\n" +
- " <element/>\r\n" +
- " <second/>\r\n" +
- "\r\n" +
- "</root>\r\n",
-
- XmlFormatPreferences.defaults());
- }
-
- public void testCrLf2() throws Exception {
- XmlFormatPreferences prefs = XmlFormatPreferences.defaults();
- prefs.removeEmptyLines = true;
-
- check(
- // Before
- "<root>\r\n" +
- "\r\n" +
- "\r\n" +
- "[ <element/>\r\n" +
- " <second/>\r\n" +
- "]\r\n" +
- "\r\n" +
- "\r\n" +
- "</root>\r\n",
-
- // Insert
- " <element/>\r\n" +
- " <second/>\r\n",
-
- // After
- "<root>\r\n" +
- " <element/>\r\n" +
- " <second/>\r\n" +
- "</root>\r\n",
-
- prefs);
- }
-
- public void testCrLf3() throws Exception {
- XmlFormatPreferences prefs = XmlFormatPreferences.defaults();
- prefs.removeEmptyLines = true;
-
- check(
- // Before
- "<root>\r\n" +
- "\r\n" +
- "\r\n" +
- " [<element/>\r\n" +
- " <second/>]\r\n" +
- "\r\n" +
- "\r\n" +
- "\r\n" +
- "</root>\r\n",
-
- // Insert
- " <element/>\r\n" +
- " <second/>",
-
- // After
- "<root>\r\n" +
- " <element/>\r\n" +
- " <second/>\r\n" +
- "</root>\r\n",
-
- prefs);
- }
-
-
- public void testCrlf4() throws Exception {
- check(
- "<RelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\r\n" +
- " xmlns:tools=\"http://schemas.android.com/tools\"\r\n" +
- " android:layout_width=\"match_parent\"\r\n" +
- " android:layout_height=\"match_parent\" >\r\n" +
- "\r\n" +
- " [<TextView\r\n" +
- " android:layout_width=\"wrap_content\"\r\n" +
- " android:layout_height=\"wrap_content\"\r\n" +
- " android:layout_centerHorizontal=\"true\"\r\n" +
- " android:layout_centerVertical=\"true\"\r\n" +
- " android:text=\"foo\"\r\n" +
- " tools:context=\".MainActivity\" />]\r\n" +
- "\r\n" +
- "</RelativeLayout>\r\n",
-
- // Insert
- "\r\n" +
- " <TextView\r\n" +
- " android:layout_width=\"wrap_content\"\r\n" +
- " android:layout_height=\"wrap_content\"\r\n" +
- " android:layout_centerHorizontal=\"true\"\r\n" +
- " android:layout_centerVertical=\"true\"\r\n" +
- " android:text=\"foo\"\r\n" +
- " tools:context=\".MainActivity\" />\r\n",
-
- // After
- "<RelativeLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"\r\n" +
- " xmlns:tools=\"http://schemas.android.com/tools\"\r\n" +
- " android:layout_width=\"match_parent\"\r\n" +
- " android:layout_height=\"match_parent\" >\r\n" +
- "\r\n" +
- " <TextView\r\n" +
- " android:layout_width=\"wrap_content\"\r\n" +
- " android:layout_height=\"wrap_content\"\r\n" +
- " android:layout_centerHorizontal=\"true\"\r\n" +
- " android:layout_centerVertical=\"true\"\r\n" +
- " android:text=\"foo\"\r\n" +
- " tools:context=\".MainActivity\" />\r\n" +
- "\r\n" +
- "</RelativeLayout>\r\n",
-
- XmlFormatPreferences.defaults());
- }
-}