org.archive.io.arc
Class ARCWriterTest

java.lang.Object
  extended byjunit.framework.Assert
      extended byjunit.framework.TestCase
          extended byorg.archive.util.TmpDirTestCase
              extended byorg.archive.io.arc.ARCWriterTest
All Implemented Interfaces:
ARCConstants, junit.framework.Test

public class ARCWriterTest
extends TmpDirTestCase
implements ARCConstants

Test ARCWriter class. This code exercises ARCWriter AND ARCReader. First it writes ARCs w/ ARCWriter. Then it validates what was written w/ ARCReader.

Author:
stack

Field Summary
 
Fields inherited from interface org.archive.io.arc.ARCConstants
ABSOLUTE_OFFSET_KEY, ARC_FILE_EXTENSION, ARC_GZIP_EXTRA_FIELD, ARC_MAGIC_NUMBER, CHECKSUM_FIELD_KEY, CHECKSUM_HEADER_FIELD_KEY, CODE_HEADER_FIELD_KEY, COMPRESSED_ARC_FILE_EXTENSION, COMPRESSED_FILE_EXTENSION, DATE_FIELD_KEY, DATE_HEADER_FIELD_KEY, DEFAULT_ARC_FILE_PREFIX, DEFAULT_COMPRESS, DEFAULT_ENCODING, DEFAULT_GZIP_HEADER_LENGTH, DEFAULT_MAX_ARC_FILE_SIZE, DOT_ARC_FILE_EXTENSION, DOT_COMPRESSED_ARC_FILE_EXTENSION, DOT_COMPRESSED_FILE_EXTENSION, FILENAME_FIELD_KEY, FILENAME_HEADER_FIELD_KEY, GZIP_HEADER_BEGIN, HEADER_FIELD_SEPARATOR, IP_HEADER_FIELD_KEY, LENGTH_FIELD_KEY, LENGTH_HEADER_FIELD_KEY, LINE_SEPARATOR, LOCATION_HEADER_FIELD_KEY, MAX_METADATA_LINE_LENGTH, MIMETYPE_FIELD_KEY, MIMETYPE_HEADER_FIELD_KEY, MINIMUM_RECORD_LENGTH, OFFSET_FIELD_KEY, OFFSET_HEADER_FIELD_KEY, REQUIRED_VERSION_1_HEADER_FIELDS, STATUSCODE_FIELD_KEY, TOKENIZED_PREFIX, URL_FIELD_KEY, URL_HEADER_FIELD_KEY, VERSION_HEADER_FIELD_KEY
 
Constructor Summary
ARCWriterTest()
           
 
Method Summary
protected  ARCWriter createArcWithOneRecord(java.lang.String name, boolean compressed)
           
protected  ARCWriter createARCWriter(java.lang.String NAME, boolean compress)
           
protected  java.io.ByteArrayOutputStream getBaos(java.lang.String str)
           
protected  java.lang.String getContent()
           
protected  java.lang.String getContent(java.lang.String indexStr)
           
protected  void holeyUrl(java.lang.String name, boolean compress, java.lang.String urlInsert)
           
protected  int iterateRecords(ARCReader r)
           
protected  void lengthTooLong(java.lang.String name, boolean compress, boolean strict)
           
protected  void lengthTooShort(java.lang.String name, boolean compress, boolean strict)
           
protected  void setUp()
           
protected  void tearDown()
           
 void testCheckARCFileSize()
           
 void testCheckARCFileSizeCompressed()
           
 void testGapError()
           
 void testLengthTooLongCompressed()
           
 void testLengthTooLongCompressedStrict()
           
 void testLengthTooShortCompressed()
           
 void testLengthTooShortCompressedStrict()
           
 void testSpaceInURL()
           
 void testTabInURL()
           
 void testWriteRecord()
           
 void testWriteRecordCompressed()
           
protected  int writeRandomHTTPRecord(ARCWriter arcWriter, int index)
           
protected  void writeRecord(ARCWriter writer, java.lang.String url, java.lang.String type, int len, java.io.ByteArrayOutputStream baos)
           
 
Methods inherited from class org.archive.util.TmpDirTestCase
cleanUpOldFiles, cleanUpOldFiles, getTmpDir
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, run, runBare, runTest, setName, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ARCWriterTest

public ARCWriterTest()
Method Detail

setUp

protected void setUp()
              throws java.lang.Exception
Overrides:
setUp in class TmpDirTestCase
Throws:
java.lang.Exception

tearDown

protected void tearDown()
                 throws java.lang.Exception
Overrides:
tearDown in class TmpDirTestCase
Throws:
java.lang.Exception

getContent

protected java.lang.String getContent()

getContent

protected java.lang.String getContent(java.lang.String indexStr)

writeRandomHTTPRecord

protected int writeRandomHTTPRecord(ARCWriter arcWriter,
                                    int index)
                             throws java.io.IOException
Throws:
java.io.IOException

testCheckARCFileSize

public void testCheckARCFileSize()
                          throws java.io.IOException
Throws:
java.io.IOException

testCheckARCFileSizeCompressed

public void testCheckARCFileSizeCompressed()
                                    throws java.io.IOException
Throws:
java.io.IOException

testWriteRecord

public void testWriteRecord()
                     throws java.io.IOException
Throws:
java.io.IOException

testWriteRecordCompressed

public void testWriteRecordCompressed()
                               throws java.io.IOException
Throws:
java.io.IOException

createARCWriter

protected ARCWriter createARCWriter(java.lang.String NAME,
                                    boolean compress)

getBaos

protected java.io.ByteArrayOutputStream getBaos(java.lang.String str)
                                         throws java.io.IOException
Throws:
java.io.IOException

writeRecord

protected void writeRecord(ARCWriter writer,
                           java.lang.String url,
                           java.lang.String type,
                           int len,
                           java.io.ByteArrayOutputStream baos)
                    throws java.io.IOException
Throws:
java.io.IOException

iterateRecords

protected int iterateRecords(ARCReader r)
                      throws java.io.IOException
Throws:
java.io.IOException

createArcWithOneRecord

protected ARCWriter createArcWithOneRecord(java.lang.String name,
                                           boolean compressed)
                                    throws java.io.IOException
Throws:
java.io.IOException

testSpaceInURL

public void testSpaceInURL()

testTabInURL

public void testTabInURL()

holeyUrl

protected void holeyUrl(java.lang.String name,
                        boolean compress,
                        java.lang.String urlInsert)
                 throws java.io.IOException
Throws:
java.io.IOException

testLengthTooShortCompressed

public void testLengthTooShortCompressed()
                                  throws java.io.IOException
Throws:
java.io.IOException

testLengthTooShortCompressedStrict

public void testLengthTooShortCompressedStrict()
                                        throws java.io.IOException
Throws:
java.io.IOException

lengthTooShort

protected void lengthTooShort(java.lang.String name,
                              boolean compress,
                              boolean strict)
                       throws java.io.IOException
Throws:
java.io.IOException

testLengthTooLongCompressed

public void testLengthTooLongCompressed()
                                 throws java.io.IOException
Throws:
java.io.IOException

testLengthTooLongCompressedStrict

public void testLengthTooLongCompressedStrict()

lengthTooLong

protected void lengthTooLong(java.lang.String name,
                             boolean compress,
                             boolean strict)
                      throws java.io.IOException
Throws:
java.io.IOException

testGapError

public void testGapError()
                  throws java.io.IOException
Throws:
java.io.IOException


Copyright © 2003-2005 Internet Archive. All Rights Reserved.