/* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You 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 tests.api.java.util;
import dalvik.annotation.TestTargetNew;
import dalvik.annotation.TestTargets;
import dalvik.annotation.TestLevel;
import dalvik.annotation.TestTargetClass;
import dalvik.annotation.KnownFailure;
import java.io.Closeable;
import java.io.EOFException;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PipedInputStream;
import java.io.StringReader;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.net.InetSocketAddress;
import java.net.ServerSocket;
import java.net.Socket;
import java.net.SocketAddress;
import java.nio.CharBuffer;
import java.nio.channels.FileChannel;
import java.nio.channels.ReadableByteChannel;
import java.nio.channels.ServerSocketChannel;
import java.nio.channels.SocketChannel;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.InputMismatchException;
import java.util.Locale;
import java.util.NoSuchElementException;
import java.util.Scanner;
import java.util.regex.MatchResult;
import java.util.regex.Pattern;
import tests.support.Support_Locale;
import tests.support.Support_PortManager;
import junit.framework.TestCase;
@TestTargetClass(Scanner.class)
public class ScannerTest extends TestCase {
static final boolean disableRIBugs = false;
private Scanner s;
private ServerSocket server;
private SocketAddress address;
private SocketChannel client;
private Socket serverSocket;
private OutputStream os;
private static class MockCloseable implements Closeable, Readable {
public void close() throws IOException {
throw new IOException();
}
public int read(CharBuffer cb) throws IOException {
throw new EOFException();
}
}
/**
* @tests java.util.Scanner#Scanner(File)
*/
@TestTargetNew(
level = TestLevel.COMPLETE,
notes = "",
method = "Scanner",
args = {java.io.File.class}
)
public void test_ConstructorLjava_io_File() throws IOException {
File tmpFile = File.createTempFile("TestFileForScanner", ".tmp");
s = new Scanner(tmpFile);
assertNotNull(s);
s.close();
assertTrue(tmpFile.delete());
try {
s = new Scanner(tmpFile);
fail("should throw FileNotFoundException");
} catch (FileNotFoundException e) {
// expected
}
tmpFile = File.createTempFile("TestFileForScanner", ".tmp");
FileOutputStream fos = new FileOutputStream(tmpFile);
fos.write("test".getBytes());
s = new Scanner(tmpFile);
tmpFile.delete();
// Scanner(File = null)
try {
s = new Scanner((File) null);
fail("Should throw NullPointerException");
} catch (NullPointerException e) {
// expected
}
// TODO: test if the default charset is used.
}
/**
* @tests java.util.Scanner#Scanner(File, String)
*/
@TestTargetNew(
level = TestLevel.COMPLETE,
notes = "",
method = "Scanner",
args = {java.io.File.class, java.lang.String.class}
)
public void test_ConstructorLjava_io_FileLjava_lang_String()
throws IOException {
File tmpFile = File.createTempFile("TestFileForScanner", ".tmp");
s = new Scanner(tmpFile, Charset.defaultCharset().name());
assertNotNull(s);
s.close();
assertTrue(tmpFile.delete());
try {
s = new Scanner(tmpFile, Charset.defaultCharset().name());
fail("should throw FileNotFoundException");
} catch (FileNotFoundException e) {
// expected
}
try {
s = new Scanner(tmpFile, null);
fail("should throw FileNotFoundException");
} catch (FileNotFoundException e) {
// expected
}
tmpFile = File.createTempFile("TestFileForScanner", ".tmp");
try {
s = new Scanner(tmpFile, "invalid charset");
fail("should throw IllegalArgumentException");
} catch (IllegalArgumentException e) {
// expected
}
//fail on RI. File is opened but not closed when exception is thrown on
// RI.
assertTrue(tmpFile.delete());
// Scanner(File = null, Charset = null)
try {
s = new Scanner((File) null, null);
fail("Should throw NullPointerException");
} catch (NullPointerException e) {
// expected
}
// Scanner(File = null, Charset = UTF-8)
try {
s = new Scanner((File) null, "UTF-8");
fail("Should throw NullPointerException");
} catch (NullPointerException e) {
// expected
}
// Scanner(File = null, Charset = invalid)
try {
s = new Scanner((File) null, "invalid");
fail("Should throw NullPointerException");
} catch (NullPointerException e) {
// expected
}
// Scanner(File, Charset = null)
try {
File f = File.createTempFile("test", ".tmp");
s = new Scanner(f, null);
fail("Should throw IllegalArgumentException");
} catch (IllegalArgumentException e) {
// expected
}
// TODO: test if the specified charset is used.
}
/**
* @tests java.util.Scanner#Scanner(InputStream)
*/
@TestTargetNew(
level = TestLevel.COMPLETE,
notes = "",
method = "Scanner",
args = {java.io.InputStream.class}
)
public void test_ConstructorLjava_io_InputStream() {
s = new Scanner(new PipedInputStream());
assertNotNull(s);
s.close();
// Scanner(InputStream)
try {
s = new Scanner((InputStream) null);
fail("Should throw NullPointerException");
} catch (NullPointerException e) {
// expected
}
// TODO: test if the default charset is used.
}
/**
* @tests java.util.Scanner#Scanner(InputStream, String)
*/
@TestTargetNew(
level = TestLevel.COMPLETE,
notes = "",
method = "Scanner",
args = {java.io.InputStream.class, java.lang.String.class}
)
public void test_ConstructorLjava_io_InputStreamLjava_lang_String() {
s = new Scanner(new PipedInputStream(), Charset.defaultCharset().name());
assertNotNull(s);
s.close();
try {
s = new Scanner((PipedInputStream) null, "invalid charset");
fail("should throw NullPointerException");
} catch (NullPointerException e) {
// expected
}
try {
s = new Scanner(new PipedInputStream(), null);
fail("should throw NullPointerException");
} catch (NullPointerException e) {
// expected
}
try {
s = new Scanner(new PipedInputStream(), "invalid charset");
fail("should throw IllegalArg
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
android系统2.3源码(3) (3221个子文件)
ScannerTest.java 218KB
InstructionSequenceConstants.java 139KB
DatabaseMetaData.java 131KB
Charset_TestGenerator_Res.java 127KB
SIPDialog.java 126KB
BigDecimal.java 119KB
Character.java 114KB
ConcurrentSkipListMap.java 112KB
Collections.java 111KB
Arrays.java 110KB
ObjectInputStream.java 106KB
PreparedStatementTest.java 104KB
OldSocketTest.java 102KB
ArraysTest.java 100KB
FileTest.java 96KB
X509CertSelectorTest.java 95KB
DatabaseMetaDataTest.java 93KB
OpenWnnJAJP.java 91KB
OldDatagramSocketTest.java 91KB
AbstractQueuedSynchronizer.java 90KB
SIPTransactionStack.java 89KB
Formatter.java 89KB
ConnectionTest.java 89KB
DualPivotQuicksort.java 88KB
ProGuardGUI.java 86KB
CollectionsTest.java 86KB
ResultSet.java 82KB
Scanner.java 80KB
String.java 80KB
AbstractQueuedLongSynchronizer.java 79KB
EnumSetTest.java 78KB
FieldTest.java 77KB
ThreadPoolExecutor.java 77KB
EvaluationShrinker.java 74KB
ObjectOutputStream.java 74KB
KeyStoreTest.java 73KB
SIPServerTransaction.java 72KB
DatabaseMetaDataNotSupportedTest.java 72KB
URLConnectionTest.java 69KB
RowSet.java 68KB
SIPClientTransaction.java 67KB
ResultSetGetterTests.java 67KB
DialogFilter.java 65KB
DatabaseTest.java 65KB
SSLEngineTest.java 64KB
SIPMessage.java 64KB
CallableStatement.java 62KB
StatementTest.java 60KB
Class.java 60KB
DomTest.java 60KB
TreeMap.java 57KB
SipStackImpl.java 57KB
ReentrantReadWriteLock.java 56KB
HeaderFactoryImpl.java 56KB
File.java 55KB
DefaultSoftKeyboardJAJP.java 54KB
Cipher.java 54KB
ConfigurationParser.java 54KB
Calendar.java 54KB
KeyStore.java 53KB
ThreadPoolExecutorSubclassTest.java 53KB
DecimalFormat.java 52KB
SimpleDateFormat.java 52KB
ThreadPoolExecutorTest.java 52KB
OldNumberFormatTest.java 52KB
URI.java 52KB
BitSetTest.java 51KB
GregorianCalendar.java 51KB
OldFileChannelTest.java 51KB
LinkedBlockingDequeTest.java 51KB
Thread.java 51KB
X509KeyManagerTest.java 50KB
Logger.java 50KB
MessageFormat.java 50KB
X509CertSelector.java 50KB
PartialEvaluator.java 49KB
DatatypeFactory.java 48KB
RandomAccessFileTest.java 48KB
ObjectOutputStreamTest.java 48KB
VectorTest.java 48KB
ClassUtil.java 47KB
ObjectInputStreamTest.java 47KB
Math.java 47KB
ConcurrentHashMap.java 47KB
EnumMapTest.java 46KB
BigIntegerTest.java 46KB
ScheduledThreadPoolExecutor.java 46KB
ReentrantReadWriteLockTest.java 45KB
OldDecimalFormatTest.java 45KB
SIPRequest.java 45KB
JDBCDatabaseMetaData.java 44KB
URLClassLoader.java 44KB
SipProviderImpl.java 44KB
TimerTest.java 43KB
OpenWnnDictionaryImpl.java 43KB
Charset_MultiByte_GBK.java 43KB
BigInteger.java 43KB
Charset_MultiByte_GBK_Android.java 43KB
SynchronousQueue.java 42KB
Optimizer.java 42KB
共 3221 条
- 1
- 2
- 3
- 4
- 5
- 6
- 33
资源评论
- suisou2013-06-27去官网SVN服务器下吧,这个不全,没多少意义
- abcxyz91232014-05-06这么小,名称怎么可以写android2.3源码呢
愤怒的小鸟抽筋了
- 粉丝: 7
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功