You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CompressedObjectReferenceTestCase.java 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /*
  2. * Licensed to the Apache Software Foundation (ASF) under one or more
  3. * contributor license agreements. See the NOTICE file distributed with
  4. * this work for additional information regarding copyright ownership.
  5. * The ASF licenses this file to You under the Apache License, Version 2.0
  6. * (the "License"); you may not use this file except in compliance with
  7. * the License. You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. /* $Id$ */
  18. package org.apache.fop.pdf.xref;
  19. import static org.junit.Assert.assertArrayEquals;
  20. import java.io.IOException;
  21. import java.util.Arrays;
  22. import java.util.List;
  23. import org.junit.Test;
  24. public class CompressedObjectReferenceTestCase extends ObjectReferenceTest {
  25. @Test
  26. public void testOutput() throws IOException {
  27. runTest(Arrays.asList(0, 0, 0, 0, 0, 0, 0, 0), 0);
  28. runTest(Arrays.asList(0, 0, 0, 0, 0, 0, 0, 0x1), 4);
  29. runTest(Arrays.asList(0, 0, 0, 0, 0, 0, 0, 0xf3), 16);
  30. runTest(Arrays.asList(0, 0, 0, 0, 0, 0, 0x5, 0xf7), 128);
  31. runTest(Arrays.asList(0, 0, 0, 0, 0, 0x9, 0xfb, 0xd), 0xae);
  32. runTest(Arrays.asList(0, 0, 0, 0, 0x11, 0xff, 0x15, 0xe9), 0xff);
  33. }
  34. private void runTest(List<Integer> expectedObjectStreamBytes, int index) throws IOException {
  35. int objectStreamNumber = (int) computeNumberFromBytes(expectedObjectStreamBytes);
  36. sut = new CompressedObjectReference(0, objectStreamNumber, index);
  37. byte[] expected = createExpectedOutput((byte) 2, expectedObjectStreamBytes, index);
  38. byte[] actual = getActualOutput();
  39. assertArrayEquals(expected, actual);
  40. }
  41. }