1f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
2f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project/*
3f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source ProjectThis Java source file was generated by test-to-java.xsl
4f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectand is a derived work from the source document.
5f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source ProjectThe source document contained the following notice:
6f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
7f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
8f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source ProjectCopyright (c) 2001 World Wide Web Consortium,
9f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project(Massachusetts Institute of Technology, Institut National de
10f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source ProjectRecherche en Informatique et en Automatique, Keio University). All
11f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source ProjectRights Reserved. This program is distributed under the W3C's Software
12f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source ProjectIntellectual Property License. This program is distributed in the
13f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projecthope that it will be useful, but WITHOUT ANY WARRANTY; without even
14f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectthe implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source ProjectPURPOSE.
16f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source ProjectSee W3C License http://www.w3.org/Consortium/Legal/ for more details.
17f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
18f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project*/
19f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
20f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpackage org.w3c.domts.level1.core;
21f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
22f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport org.w3c.dom.*;
23f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
24f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
25f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport org.w3c.domts.DOMTestCase;
26f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport org.w3c.domts.DOMTestDocumentBuilderFactory;
27f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
28f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
29f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
30f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project/**
31f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *     If the sum of the offset and count used in the
32f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    "deleteData(offset,count) method is greater than the
33f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    length of the character data then all the characters
34f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    from the offset to the end of the data are deleted.
35f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *
36f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    Retrieve the character data from the last child of the
37f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    first employee.  The "deleteData(offset,count)"
38f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    method is then called with offset=4 and count=50.
39f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    The method should delete the characters from position 4
40f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    to the end of the data since the offset+count(50+4)
41f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    is greater than the length of the character data(35).
42f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project *    The new value of the character data should be "1230".
43f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project* @author NIST
44f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project* @author Mary Brady
45f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project* @see <a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-72AB8359</a>
46f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project* @see <a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#ID-7C603781</a>
47f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project*/
48f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpublic final class characterdatadeletedataexceedslength extends DOMTestCase {
49f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
50f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   /**
51f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    * Constructor.
52f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    * @param factory document factory, may not be null
53f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    * @throws org.w3c.domts.DOMTestIncompatibleException Thrown if test is not compatible with parser configuration
54f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    */
55f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   public characterdatadeletedataexceedslength(final DOMTestDocumentBuilderFactory factory)  throws org.w3c.domts.DOMTestIncompatibleException {
56f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      super(factory);
57f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
58f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    //
59f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    //   check if loaded documents are supported for content type
60f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    //
61f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    String contentType = getContentType();
62f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    preload(contentType, "staff", true);
63f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    }
64f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
65f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   /**
66f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    * Runs the test case.
67f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    * @throws Throwable Any uncaught exception causes test to fail
68f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    */
69f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   public void runTest() throws Throwable {
70f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      Document doc;
71f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      NodeList elementList;
72f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      Node nameNode;
73f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      CharacterData child;
74f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      String childData;
75f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      doc = (Document) load("staff", true);
76f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      elementList = doc.getElementsByTagName("address");
77f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      nameNode = elementList.item(0);
78f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      child = (CharacterData) nameNode.getFirstChild();
79f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      child.deleteData(4, 50);
80f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      childData = child.getData();
81f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      assertEquals("characterdataDeleteDataExceedsLengthAssert", "1230", childData);
82f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      }
83f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   /**
84f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    *  Gets URI that identifies the test.
85f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    *  @return uri identifier of test
86f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    */
87f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   public String getTargetURI() {
88f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project      return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/characterdatadeletedataexceedslength";
89f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   }
90f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   /**
91f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    * Runs this test from the command line.
92f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    * @param args command line arguments
93f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project    */
94f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   public static void main(final String[] args) {
95f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project        DOMTestCase.doMain(characterdatadeletedataexceedslength.class, args);
96f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project   }
97f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project}
98f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project
99