blob: c9399e4a836e0020c742fc9170cb2b03fafdbb28 [file] [log] [blame]
/* Copyright 2004 The Apache Software Foundation
*
* Licensed under the Apache License, Version 2.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.apache.org/licenses/LICENSE-2.0
*
* 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 xmlobject.extensions.interfaceFeature.readOnlyBean.checkin;
import interfaceFeature.xbean.readOnlyBean.purchaseOrder.PurchaseOrderDocument;
import interfaceFeature.xbean.readOnlyBean.purchaseOrder.PurchaseOrderType;
import interfaceFeature.xbean.readOnlyBean.purchaseOrder.Items;
import java.math.BigDecimal;
import junit.framework.*;
public class ReadOnlyTest extends TestCase {
public ReadOnlyTest(String s) {
super(s);
}
public void test() {
PurchaseOrderDocument poDoc;
poDoc = PurchaseOrderDocument.Factory.newInstance();
PurchaseOrderType po = poDoc.addNewPurchaseOrder();
int LEN = 20;
Items.Item[] it = new Items.Item[LEN];
for (int i = 0; i < LEN; i++) {
it[i] = Items.Item.Factory.newInstance();
it[i].setUSPrice(new BigDecimal("" + 4));
}
Items items = Items.Factory.newInstance();
items.setItemArray(it);
po.setItems(items);
StringBuilder sb = new StringBuilder();
sb.append(
"<pur:purchaseOrder xmlns:pur=\"http://xbean.interface_feature/readOnlyBean/PurchaseOrder\">");
sb.append("<pur:items>");
StringBuilder sbContent = new StringBuilder();
for (int i = 0; i < LEN; i++)
sbContent.append("<pur:item><pur:USPrice>4</pur:USPrice></pur:item>");
int pos = sb.length();
sb.append("</pur:items></pur:purchaseOrder>");
String sExpected = sb.subSequence(0, pos) +
sbContent.toString() +
sb.subSequence(pos, sb.length());
assertEquals(sExpected, poDoc.xmlText());
try {
poDoc.setPrice(10);
} catch (Exception t) {
t.printStackTrace(System.err);
System.exit(-1);
}
assertTrue(!poDoc.validate());
}
}