source: contrib/MailArchiver/sources/vendor/mime4j/apache-mime4j-0.7-SNAPSHOT-20110327.010440-17/core/src/test/java/org/apache/james/mime4j/io/LimitedInputStreamTest.java @ 6785

Revision 6785, 2.4 KB checked in by rafaelraymundo, 12 years ago (diff)

Ticket #2946 - Liberado codigo do MailArchiver?. Documentação na subpasta DOCS.

Line 
1/****************************************************************
2 * Licensed to the Apache Software Foundation (ASF) under one   *
3 * or more contributor license agreements.  See the NOTICE file *
4 * distributed with this work for additional information        *
5 * regarding copyright ownership.  The ASF licenses this file   *
6 * to you under the Apache License, Version 2.0 (the            *
7 * "License"); you may not use this file except in compliance   *
8 * with the License.  You may obtain a copy of the License at   *
9 *                                                              *
10 *   http://www.apache.org/licenses/LICENSE-2.0                 *
11 *                                                              *
12 * Unless required by applicable law or agreed to in writing,   *
13 * software distributed under the License is distributed on an  *
14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
15 * KIND, either express or implied.  See the License for the    *
16 * specific language governing permissions and limitations      *
17 * under the License.                                           *
18 ****************************************************************/
19
20package org.apache.james.mime4j.io;
21
22import java.io.ByteArrayInputStream;
23import java.io.IOException;
24
25import junit.framework.TestCase;
26
27public class LimitedInputStreamTest extends TestCase {
28
29    public void testUpToLimitRead() throws IOException {
30        byte[] data = new byte[] {'0', '1', '2', '3', '4', '5', '6'};
31        ByteArrayInputStream instream = new ByteArrayInputStream(data);
32        LimitedInputStream limitedStream = new LimitedInputStream(instream, 3);
33        assertEquals(0, limitedStream.getPosition());
34        assertTrue(limitedStream.read() != -1);
35        assertEquals(1, limitedStream.getPosition());
36        byte[] tmp = new byte[3];
37        assertEquals(2, limitedStream.read(tmp));
38        assertEquals(3, limitedStream.getPosition());
39        try {
40            limitedStream.read();
41            fail("IOException should have been thrown");
42        } catch (IOException ex) {
43        }
44        try {
45            limitedStream.read(tmp);
46            fail("IOException should have been thrown");
47        } catch (IOException ex) {
48        }
49        try {
50            limitedStream.skip(2);
51            fail("IOException should have been thrown");
52        } catch (IOException ex) {
53        }
54    }
55   
56}
Note: See TracBrowser for help on using the repository browser.