StringBufferInputStreamTest.java revision 561ee011997c6c2f1befbfaa9d5f0a99771c1d63
18e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project/* 28e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Licensed to the Apache Software Foundation (ASF) under one or more 38e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * contributor license agreements. See the NOTICE file distributed with 48e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * this work for additional information regarding copyright ownership. 58e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * The ASF licenses this file to You under the Apache License, Version 2.0 68e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * (the "License"); you may not use this file except in compliance with 78e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * the License. You may obtain a copy of the License at 88e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 98e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 108e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * 118e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 128e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 138e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 148e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * See the License for the specific language governing permissions and 158e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * limitations under the License. 168e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 178e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 188e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpackage org.apache.harmony.luni.tests.java.io; 198e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 208e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectimport java.io.StringBufferInputStream; 218e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectimport java.io.UnsupportedEncodingException; 228e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 238e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project@SuppressWarnings("deprecation") 248e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Projectpublic class StringBufferInputStreamTest extends junit.framework.TestCase { 258e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 268e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project StringBufferInputStream sbis; 27d0825bca7fe65beaee391d30da42e937db621564Steve Block 288e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project /** 298e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * @tests java.io.StringBufferInputStream#StringBufferInputStream(java.lang.String) 30545e470e52f0ac6a3a072bf559c796b42c6066b6Ben Murdoch */ 318e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project public void test_ConstructorLjava_lang_String() { 328e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // Test for method java.io.StringBufferInputStream(java.lang.String) 335af96e2c7b73ebc627c6894727826a7576d31758Leon Clarke } 348e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 358e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project /** 368e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * @tests java.io.StringBufferInputStream#available() 378e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 388e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project public void test_available() { 398e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // Test for method int java.io.StringBufferInputStream.available() 408e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project assertEquals("Returned incorrect number of available bytes", 11, sbis 418e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project .available()); 428e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project } 438e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 448e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project /** 458e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * @tests java.io.StringBufferInputStream#read() 465f1ab04193ad0130ca8204aadaceae083aca9881Feng Qian */ 478e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project public void test_read() throws UnsupportedEncodingException { 488e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // Test for method int java.io.StringBufferInputStream.read() 498e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project byte[] buf = new byte[5]; 508e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project sbis.skip(6); 518e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project sbis.read(buf, 0, 5); 528e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project assertEquals("Returned incorrect chars", "World", new String(buf, "UTF-8")); 53e78cbe89e6f337f2f1fe40315be88f742b547151Steve Block } 54e78cbe89e6f337f2f1fe40315be88f742b547151Steve Block 55e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke /** 568e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * @tests java.io.StringBufferInputStream#read(byte[], int, int) 578e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 588e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project public void test_read$BII() { 598e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // Test for method int java.io.StringBufferInputStream.read(byte [], 608e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // int, int) 618e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project assertEquals("Read returned incorrect char", 'H', sbis.read()); 628e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project } 63e78cbe89e6f337f2f1fe40315be88f742b547151Steve Block 64e78cbe89e6f337f2f1fe40315be88f742b547151Steve Block /** 65e458d70a0d18538346f41b503114c9ebe6b2ce12Leon Clarke * @tests java.io.StringBufferInputStream#reset() 668e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 678e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project public void test_reset() { 688e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // Test for method void java.io.StringBufferInputStream.reset() 698e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project long s = sbis.skip(6); 708e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project assertEquals("Unable to skip correct umber of chars", 6, s); 718e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project sbis.reset(); 728e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project assertEquals("Failed to reset", 'H', sbis.read()); 738e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project } 748e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 758e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project /** 768e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * @tests java.io.StringBufferInputStream#skip(long) 778e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 788e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project public void test_skipJ() { 798e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project // Test for method long java.io.StringBufferInputStream.skip(long) 808e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project long s = sbis.skip(6); 818e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project assertEquals("Unable to skip correct umber of chars", 6, s); 828e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project assertEquals("Skip positioned at incorrect char", 'W', sbis.read()); 838e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project } 848e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 85d0825bca7fe65beaee391d30da42e937db621564Steve Block /** 868e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Sets up the fixture, for example, open a network connection. This method 878e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * is called before a test is executed. 888e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 898e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project protected void setUp() { 908e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project sbis = new StringBufferInputStream("Hello World"); 918e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project } 928e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project 938e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project /** 948e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * Tears down the fixture, for example, close a network connection. This 958e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project * method is called after a test is executed. 968e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project */ 978e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project protected void tearDown() { 988e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project } 998e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project} 1008e35f3cfc7fba1d1c829dc557ebad6409cbe16a2The Android Open Source Project