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-2004 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 * The "deleteData(offset,count)" method raises a NO_MODIFICATION_ALLOWED_ERR 32f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * DOMException if the node is readonly. 33f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Obtain the children of the THIRD "gender" element. The elements 34f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * content is an entity reference. Get the FIRST item 35f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * from the entity reference and execute the "deleteData(offset,count)" method. 36f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * This causes a NO_MODIFICATION_ALLOWED_ERR DOMException to be thrown. 37f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project* @author NIST 38f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project* @author Mary Brady 39f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project* @see <a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-258A00AF')/constant[@name='NO_MODIFICATION_ALLOWED_ERR'])</a> 40f6c387128427e121477c1b32ad35cdcaa5101ba3The 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> 41f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project* @see <a href="http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])">http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core#xpointer(id('ID-7C603781')/raises/exception[@name='DOMException']/descr/p[substring-before(.,':')='NO_MODIFICATION_ALLOWED_ERR'])</a> 42f6c387128427e121477c1b32ad35cdcaa5101ba3The 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> 43f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project*/ 44f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpublic final class characterdatadeletedatanomodificationallowederr extends DOMTestCase { 45f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 46f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 47f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Constructor. 48f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @param factory document factory, may not be null 49f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @throws org.w3c.domts.DOMTestIncompatibleException Thrown if test is not compatible with parser configuration 50f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 51f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public characterdatadeletedatanomodificationallowederr(final DOMTestDocumentBuilderFactory factory) throws org.w3c.domts.DOMTestIncompatibleException { 52f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project super(factory); 53f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 54f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project // 55f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project // check if loaded documents are supported for content type 56f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project // 57f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project String contentType = getContentType(); 58f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project preload(contentType, "staff", true); 59f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 60f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 61f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 62f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Runs the test case. 63f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @throws Throwable Any uncaught exception causes test to fail 64f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 65f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public void runTest() throws Throwable { 66f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Document doc; 67f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project NodeList genderList; 68f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Node genderNode; 69f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Node entElement; 70f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Node entElementContent; 71f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project int nodeType; 72f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project Node entReference; 73f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project doc = (Document) load("staff", true); 74f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project genderList = doc.getElementsByTagName("gender"); 75f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project genderNode = genderList.item(2); 76f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project entReference = genderNode.getFirstChild(); 77f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project assertNotNull("entReferenceNotNull", entReference); 78f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project nodeType = (int) entReference.getNodeType(); 79f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 80f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project if (equals(3, nodeType)) { 81f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project entReference = doc.createEntityReference("ent4"); 82f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project assertNotNull("createdEntRefNotNull", entReference); 83f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 84f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project entElement = entReference.getFirstChild(); 85f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project assertNotNull("entElementNotNull", entElement); 86f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project entElementContent = entElement.getFirstChild(); 87f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project assertNotNull("entElementContentNotNull", entElementContent); 88f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 89f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project { 90f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project boolean success = false; 91f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project try { 92f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project ((CharacterData) /*Node */entElementContent).deleteData(1, 3); 93f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } catch (DOMException ex) { 94f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project success = (ex.code == DOMException.NO_MODIFICATION_ALLOWED_ERR); 95f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 96f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project assertTrue("throw_NO_MODIFICATION_ALLOWED_ERR", success); 97f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 98f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project} 99f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 100f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Gets URI that identifies the test. 101f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @return uri identifier of test 102f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 103f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public String getTargetURI() { 104f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project return "http://www.w3.org/2001/DOM-Test-Suite/level1/core/characterdatadeletedatanomodificationallowederr"; 105f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 106f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 107f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Runs this test from the command line. 108f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * @param args command line arguments 109f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 110f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public static void main(final String[] args) { 111f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project DOMTestCase.doMain(characterdatadeletedatanomodificationallowederr.class, args); 112f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 113f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project} 114f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 115