1*ef39d40dSAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3*ef39d40dSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4*ef39d40dSAndrew Rist * or more contributor license agreements. See the NOTICE file 5*ef39d40dSAndrew Rist * distributed with this work for additional information 6*ef39d40dSAndrew Rist * regarding copyright ownership. The ASF licenses this file 7*ef39d40dSAndrew Rist * to you under the Apache License, Version 2.0 (the 8*ef39d40dSAndrew Rist * "License"); you may not use this file except in compliance 9*ef39d40dSAndrew Rist * with the License. You may obtain a copy of the License at 10*ef39d40dSAndrew Rist * 11*ef39d40dSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12*ef39d40dSAndrew Rist * 13*ef39d40dSAndrew Rist * Unless required by applicable law or agreed to in writing, 14*ef39d40dSAndrew Rist * software distributed under the License is distributed on an 15*ef39d40dSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*ef39d40dSAndrew Rist * KIND, either express or implied. See the License for the 17*ef39d40dSAndrew Rist * specific language governing permissions and limitations 18*ef39d40dSAndrew Rist * under the License. 19*ef39d40dSAndrew Rist * 20*ef39d40dSAndrew Rist *************************************************************/ 21*ef39d40dSAndrew Rist 22*ef39d40dSAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir package ifc.io; 25cdf0e10cSrcweir 26cdf0e10cSrcweir import java.util.Vector; 27cdf0e10cSrcweir 28cdf0e10cSrcweir import lib.MultiMethodTest; 29cdf0e10cSrcweir 30cdf0e10cSrcweir import com.sun.star.io.XDataOutputStream; 31cdf0e10cSrcweir 32cdf0e10cSrcweir /** 33cdf0e10cSrcweir * Testing <code>com.sun.star.io.XDataOutputStream</code> 34cdf0e10cSrcweir * interface methods: 35cdf0e10cSrcweir * <ul> 36cdf0e10cSrcweir * <li><code>writeBoolean()</code></li> 37cdf0e10cSrcweir * <li><code>writeByte()</code></li> 38cdf0e10cSrcweir * <li><code>writeChar()</code></li> 39cdf0e10cSrcweir * <li><code>writeShort()</code></li> 40cdf0e10cSrcweir * <li><code>writeLong()</code></li> 41cdf0e10cSrcweir * <li><code>writeHyper()</code></li> 42cdf0e10cSrcweir * <li><code>writeFloat()</code></li> 43cdf0e10cSrcweir * <li><code>writeDouble()</code></li> 44cdf0e10cSrcweir * <li><code>writeUTF()</code></li> 45cdf0e10cSrcweir * </ul> <p> 46cdf0e10cSrcweir * This test needs the following object relations : 47cdf0e10cSrcweir * <ul> 48cdf0e10cSrcweir * <li> <code>'StreamData'</code> (of type <code>Vector</code>): 49cdf0e10cSrcweir * vector of data for writing to the stream </li> 50cdf0e10cSrcweir * <ul> <p> 51cdf0e10cSrcweir * After test completion object environment has to be recreated. 52cdf0e10cSrcweir * @see com.sun.star.io.XDataOutputStream 53cdf0e10cSrcweir */ 54cdf0e10cSrcweir public class _XDataOutputStream extends MultiMethodTest { 55cdf0e10cSrcweir 56cdf0e10cSrcweir public XDataOutputStream oObj = null; 57cdf0e10cSrcweir 58cdf0e10cSrcweir // values that are written 59cdf0e10cSrcweir private boolean writeBoolean; 60cdf0e10cSrcweir private byte writeByte; 61cdf0e10cSrcweir private char writeChar; 62cdf0e10cSrcweir private double writeDouble; 63cdf0e10cSrcweir private float writeFloat; 64cdf0e10cSrcweir private long writeHyper; 65cdf0e10cSrcweir private int writeLong; 66cdf0e10cSrcweir private short writeShort; 67cdf0e10cSrcweir private String writeUTF; 68cdf0e10cSrcweir 69cdf0e10cSrcweir 70cdf0e10cSrcweir /** 71cdf0e10cSrcweir * Retrieves object relation <code>'StreamData'</code> 72cdf0e10cSrcweir * and executes methods of interface depending of data in stream. 73cdf0e10cSrcweir * If relation or data of some type in stream not found then 74cdf0e10cSrcweir * tests of corresponding methods are skipped. 75cdf0e10cSrcweir */ before()76cdf0e10cSrcweir public void before() throws RuntimeException { 77cdf0e10cSrcweir 78cdf0e10cSrcweir Vector data = (Vector) tEnv.getObjRelation("StreamData") ; 79cdf0e10cSrcweir if (data == null) { 80cdf0e10cSrcweir throw new RuntimeException("Object relation 'StreamData' not found."); 81cdf0e10cSrcweir } 82cdf0e10cSrcweir 83cdf0e10cSrcweir // extract data from vector 84cdf0e10cSrcweir Object dataElem = null ; 85cdf0e10cSrcweir for (int i = 0; i < data.size(); i++) { 86cdf0e10cSrcweir dataElem = data.get(i) ; 87cdf0e10cSrcweir 88cdf0e10cSrcweir if (dataElem instanceof Boolean) { 89cdf0e10cSrcweir writeBoolean = ((Boolean)dataElem).booleanValue(); 90cdf0e10cSrcweir } else 91cdf0e10cSrcweir if (dataElem instanceof Byte) { 92cdf0e10cSrcweir writeByte = ((Byte)dataElem).byteValue(); 93cdf0e10cSrcweir } else 94cdf0e10cSrcweir if (dataElem instanceof Character) { 95cdf0e10cSrcweir writeChar = ((Character)dataElem).charValue(); 96cdf0e10cSrcweir } else 97cdf0e10cSrcweir if (dataElem instanceof Short) { 98cdf0e10cSrcweir writeShort = ((Short)dataElem).shortValue(); 99cdf0e10cSrcweir } else 100cdf0e10cSrcweir if (dataElem instanceof Integer) { 101cdf0e10cSrcweir writeLong = ((Integer)dataElem).intValue(); 102cdf0e10cSrcweir } else 103cdf0e10cSrcweir if (dataElem instanceof Long) { 104cdf0e10cSrcweir writeHyper = ((Long)dataElem).longValue(); 105cdf0e10cSrcweir } else 106cdf0e10cSrcweir if (dataElem instanceof Float) { 107cdf0e10cSrcweir writeFloat = ((Float)dataElem).floatValue(); 108cdf0e10cSrcweir } else 109cdf0e10cSrcweir if (dataElem instanceof Double) { 110cdf0e10cSrcweir writeDouble = ((Double)dataElem).doubleValue(); 111cdf0e10cSrcweir } else 112cdf0e10cSrcweir if (dataElem instanceof String) { 113cdf0e10cSrcweir writeUTF = (String)dataElem; 114cdf0e10cSrcweir } 115cdf0e10cSrcweir } 116cdf0e10cSrcweir } 117cdf0e10cSrcweir 118cdf0e10cSrcweir /** 119cdf0e10cSrcweir * Test writes some data to stream. <p> 120cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 121cdf0e10cSrcweir * and no exceptions were thrown. <p> 122cdf0e10cSrcweir */ _writeBoolean()123cdf0e10cSrcweir public void _writeBoolean() { 124cdf0e10cSrcweir boolean res = true; 125cdf0e10cSrcweir try { 126cdf0e10cSrcweir oObj.writeBoolean(true) ; 127cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 128cdf0e10cSrcweir log.println("Couldn't write Boolean to stream"); 129cdf0e10cSrcweir e.printStackTrace(log); 130cdf0e10cSrcweir res = false; 131cdf0e10cSrcweir } 132cdf0e10cSrcweir tRes.tested("writeBoolean()", res) ; 133cdf0e10cSrcweir } 134cdf0e10cSrcweir 135cdf0e10cSrcweir /** 136cdf0e10cSrcweir * Test writes some data to stream. <p> 137cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 138cdf0e10cSrcweir * and no exceptions were thrown. <p> 139cdf0e10cSrcweir */ _writeByte()140cdf0e10cSrcweir public void _writeByte() { 141cdf0e10cSrcweir boolean res = true; 142cdf0e10cSrcweir try { 143cdf0e10cSrcweir oObj.writeByte((byte) 123); 144cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 145cdf0e10cSrcweir log.println("Couldn't write Byte to stream"); 146cdf0e10cSrcweir e.printStackTrace(log); 147cdf0e10cSrcweir res = false; 148cdf0e10cSrcweir } 149cdf0e10cSrcweir tRes.tested("writeByte()", res); 150cdf0e10cSrcweir } 151cdf0e10cSrcweir 152cdf0e10cSrcweir /** 153cdf0e10cSrcweir * Test writes some data to stream. <p> 154cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 155cdf0e10cSrcweir * and no exceptions were thrown. <p> 156cdf0e10cSrcweir */ _writeChar()157cdf0e10cSrcweir public void _writeChar() { 158cdf0e10cSrcweir boolean res = true; 159cdf0e10cSrcweir try { 160cdf0e10cSrcweir oObj.writeChar((char)12345); 161cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 162cdf0e10cSrcweir log.println("Couldn't write Char to stream"); 163cdf0e10cSrcweir e.printStackTrace(log); 164cdf0e10cSrcweir res = false; 165cdf0e10cSrcweir } 166cdf0e10cSrcweir tRes.tested("writeChar()", res); 167cdf0e10cSrcweir } 168cdf0e10cSrcweir 169cdf0e10cSrcweir /** 170cdf0e10cSrcweir * Test writes some data to stream. <p> 171cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 172cdf0e10cSrcweir * and no exceptions were thrown. <p> 173cdf0e10cSrcweir */ _writeShort()174cdf0e10cSrcweir public void _writeShort() { 175cdf0e10cSrcweir boolean res = true; 176cdf0e10cSrcweir try { 177cdf0e10cSrcweir oObj.writeShort((short)12345) ; 178cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 179cdf0e10cSrcweir log.println("Couldn't write Short to stream"); 180cdf0e10cSrcweir e.printStackTrace(log); 181cdf0e10cSrcweir res = false; 182cdf0e10cSrcweir } 183cdf0e10cSrcweir tRes.tested("writeShort()", res); 184cdf0e10cSrcweir } 185cdf0e10cSrcweir 186cdf0e10cSrcweir /** 187cdf0e10cSrcweir * Test writes some data to stream. <p> 188cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 189cdf0e10cSrcweir * and no exceptions were thrown. <p> 190cdf0e10cSrcweir */ _writeLong()191cdf0e10cSrcweir public void _writeLong() { 192cdf0e10cSrcweir boolean res = true; 193cdf0e10cSrcweir try { 194cdf0e10cSrcweir oObj.writeLong(123456); 195cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 196cdf0e10cSrcweir log.println("Couldn't write Long to stream"); 197cdf0e10cSrcweir e.printStackTrace(log); 198cdf0e10cSrcweir res = false; 199cdf0e10cSrcweir } 200cdf0e10cSrcweir tRes.tested("writeLong()", res); 201cdf0e10cSrcweir } 202cdf0e10cSrcweir 203cdf0e10cSrcweir /** 204cdf0e10cSrcweir * Test writes some data to stream. <p> 205cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 206cdf0e10cSrcweir * and no exceptions were thrown. <p> 207cdf0e10cSrcweir */ _writeHyper()208cdf0e10cSrcweir public void _writeHyper() { 209cdf0e10cSrcweir boolean res = true; 210cdf0e10cSrcweir try { 211cdf0e10cSrcweir oObj.writeHyper(123456789); 212cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 213cdf0e10cSrcweir log.println("Couldn't write Hyper to stream"); 214cdf0e10cSrcweir e.printStackTrace(log); 215cdf0e10cSrcweir res = false; 216cdf0e10cSrcweir } 217cdf0e10cSrcweir tRes.tested("writeHyper()", res); 218cdf0e10cSrcweir } 219cdf0e10cSrcweir 220cdf0e10cSrcweir /** 221cdf0e10cSrcweir * Test writes some data to stream. <p> 222cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 223cdf0e10cSrcweir * and no exceptions were thrown. <p> 224cdf0e10cSrcweir */ _writeFloat()225cdf0e10cSrcweir public void _writeFloat() { 226cdf0e10cSrcweir boolean res = true; 227cdf0e10cSrcweir try { 228cdf0e10cSrcweir oObj.writeFloat((float)1.2345); 229cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 230cdf0e10cSrcweir log.println("Couldn't write Float to stream"); 231cdf0e10cSrcweir e.printStackTrace(log); 232cdf0e10cSrcweir res = false; 233cdf0e10cSrcweir } 234cdf0e10cSrcweir tRes.tested("writeFloat()", res); 235cdf0e10cSrcweir } 236cdf0e10cSrcweir 237cdf0e10cSrcweir /** 238cdf0e10cSrcweir * Test writes some data to stream. <p> 239cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 240cdf0e10cSrcweir * and no exceptions were thrown. <p> 241cdf0e10cSrcweir */ _writeDouble()242cdf0e10cSrcweir public void _writeDouble() { 243cdf0e10cSrcweir boolean res = true; 244cdf0e10cSrcweir try { 245cdf0e10cSrcweir oObj.writeDouble(1.2345); 246cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 247cdf0e10cSrcweir log.println("Couldn't write Double to stream"); 248cdf0e10cSrcweir e.printStackTrace(log); 249cdf0e10cSrcweir res = false; 250cdf0e10cSrcweir } 251cdf0e10cSrcweir tRes.tested("writeDouble()", res); 252cdf0e10cSrcweir } 253cdf0e10cSrcweir 254cdf0e10cSrcweir /** 255cdf0e10cSrcweir * Test writes some data to stream. <p> 256cdf0e10cSrcweir * Has <b> OK </b> status if the method successfully returns 257cdf0e10cSrcweir * and no exceptions were thrown. <p> 258cdf0e10cSrcweir */ _writeUTF()259cdf0e10cSrcweir public void _writeUTF() { 260cdf0e10cSrcweir boolean res = true; 261cdf0e10cSrcweir try { 262cdf0e10cSrcweir oObj.writeUTF("XDataOutputStream") ; 263cdf0e10cSrcweir } catch(com.sun.star.io.IOException e) { 264cdf0e10cSrcweir log.println("Couldn't write String to stream"); 265cdf0e10cSrcweir e.printStackTrace(log); 266cdf0e10cSrcweir res = false; 267cdf0e10cSrcweir } 268cdf0e10cSrcweir tRes.tested("writeUTF()", res); 269cdf0e10cSrcweir } 270cdf0e10cSrcweir 271cdf0e10cSrcweir /** 272cdf0e10cSrcweir * Forces object environment recreation. 273cdf0e10cSrcweir */ after()274cdf0e10cSrcweir public void after() { 275cdf0e10cSrcweir this.disposeEnvironment() ; 276cdf0e10cSrcweir } 277cdf0e10cSrcweir } 278cdf0e10cSrcweir 279