// Copyright 2002, FreeHEP. package org.freehep.util.io.test; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import org.freehep.util.Assert; import org.freehep.util.io.BitOutputStream; /** * Test for Bit Output Stream. * * @author Mark Donszelmann * @version $Id: BitOutputStreamTest.java 8584 2006-08-10 23:06:37Z duns $ */ public class BitOutputStreamTest extends AbstractStreamTest { /** * Test method for 'org.freehep.util.io.BitOutputStream.writeUBits()' * @throws Exception if ref file cannot be found */ public void testWrite() throws Exception { File testFile = new File(testDir, "TestFile.xml"); File outFile = new File(outDir, "TestFile.bit"); File refFile = new File(refDir, "TestFile.bit"); BitOutputStream out = new BitOutputStream(new FileOutputStream(outFile)); FileInputStream in = new FileInputStream(testFile); int b; while ((b = in.read()) >= 0) { int n = BitOutputStream.minBits(b); out.writeUBits(n-1, 3); // min = 1, max is 8 out.writeUBits(b, n); } in.close(); out.close(); Assert.assertEquals(refFile, outFile, true); } }