001/*
002 *  Licensed to the Apache Software Foundation (ASF) under one or more
003 *  contributor license agreements.  See the NOTICE file distributed with
004 *  this work for additional information regarding copyright ownership.
005 *  The ASF licenses this file to You under the Apache License, Version 2.0
006 *  (the "License"); you may not use this file except in compliance with
007 *  the License.  You may obtain a copy of the License at
008 *
009 *      http://www.apache.org/licenses/LICENSE-2.0
010 *
011 *  Unless required by applicable law or agreed to in writing, software
012 *  distributed under the License is distributed on an "AS IS" BASIS,
013 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
014 *  See the License for the specific language governing permissions and
015 *  limitations under the License.
016 *
017 */
018
019package org.apache.commons.compress.archivers.tar;
020
021import static org.apache.commons.compress.AbstractTestCase.getFile;
022
023import java.io.File;
024import java.io.FileInputStream;
025
026import junit.framework.TestCase;
027
028public class SparseFilesTest extends TestCase {
029
030    public void testOldGNU() throws Throwable {
031        File file = getFile("oldgnu_sparse.tar");
032        TarArchiveInputStream tin = null;
033        try {
034            tin = new TarArchiveInputStream(new FileInputStream(file));
035            TarArchiveEntry ae = tin.getNextTarEntry();
036            assertEquals("sparsefile", ae.getName());
037            assertTrue(ae.isGNUSparse());
038            assertFalse(tin.canReadEntryData(ae));
039        } finally {
040            if (tin != null) {
041                tin.close();
042            }
043        }
044    }
045}
046