bzip2test.java

来自「Use the links below to download a source」· Java 代码 · 共 112 行

JAVA
112
字号
/* *  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 org.apache.tools.ant.taskdefs;import org.apache.tools.ant.BuildFileTest;import org.apache.tools.ant.util.FileUtils;import org.apache.tools.bzip2.CBZip2InputStream;import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java.io.InputStream;import java.io.IOException;/** */public class BZip2Test extends BuildFileTest {    /** Utilities used for file operations */    private static final FileUtils FILE_UTILS = FileUtils.getFileUtils();    public BZip2Test(String name) {        super(name);    }    public void setUp() {        configureProject("src/etc/testcases/taskdefs/bzip2.xml");        executeTarget("prepare");    }    public void tearDown() {        executeTarget("cleanup");    }    public void testRealTest() throws IOException {        executeTarget("realTest");        // doesn't work: Depending on the compression engine used,        // compressed bytes may differ. False errors would be        // reported.        // assertTrue("File content mismatch",        // FILE_UTILS.contentEquals(project.resolveFile("expected/asf-logo-huge.tar.bz2"),        // project.resolveFile("asf-logo-huge.tar.bz2")));        // We have to compare the decompressed content instead:        File originalFile =            project.resolveFile("expected/asf-logo-huge.tar.bz2");        File actualFile   = project.resolveFile("asf-logo-huge.tar.bz2");        InputStream originalIn =            new BufferedInputStream(new FileInputStream(originalFile));        assertEquals((byte) 'B', originalIn.read());        assertEquals((byte) 'Z', originalIn.read());        InputStream actualIn =            new BufferedInputStream(new FileInputStream(actualFile));        assertEquals((byte) 'B', actualIn.read());        assertEquals((byte) 'Z', actualIn.read());        originalIn = new CBZip2InputStream(originalIn);        actualIn   = new CBZip2InputStream(actualIn);        while (true) {            int expected = originalIn.read();            int actual   = actualIn.read();            if (expected >= 0) {                if (expected != actual) {                    fail("File content mismatch");                }            } else {                if (actual >= 0) {                    fail("File content mismatch");                }                break;            }        }        originalIn.close();        actualIn.close();    }    public void testResource(){        executeTarget("realTestWithResource");    }    public void testDateCheck(){        executeTarget("testDateCheck");        String log = getLog();        assertTrue(            "Expecting message ending with 'asf-logo.gif.bz2 is up to date.' but got '" + log + "'",            log.endsWith("asf-logo.gif.bz2 is up to date."));    }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?