summaryrefslogtreecommitdiffstats
path: root/bcprov/src/main/java/org/bouncycastle/asn1/test/OctetStringTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'bcprov/src/main/java/org/bouncycastle/asn1/test/OctetStringTest.java')
-rw-r--r--bcprov/src/main/java/org/bouncycastle/asn1/test/OctetStringTest.java203
1 files changed, 0 insertions, 203 deletions
diff --git a/bcprov/src/main/java/org/bouncycastle/asn1/test/OctetStringTest.java b/bcprov/src/main/java/org/bouncycastle/asn1/test/OctetStringTest.java
deleted file mode 100644
index 68ed5da..0000000
--- a/bcprov/src/main/java/org/bouncycastle/asn1/test/OctetStringTest.java
+++ /dev/null
@@ -1,203 +0,0 @@
-package org.bouncycastle.asn1.test;
-
-import java.io.ByteArrayOutputStream;
-import java.io.InputStream;
-import java.io.OutputStream;
-
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
-import org.bouncycastle.asn1.ASN1Integer;
-import org.bouncycastle.asn1.ASN1ObjectIdentifier;
-import org.bouncycastle.asn1.ASN1OctetStringParser;
-import org.bouncycastle.asn1.ASN1SequenceParser;
-import org.bouncycastle.asn1.ASN1StreamParser;
-import org.bouncycastle.asn1.BEROctetStringGenerator;
-import org.bouncycastle.asn1.BERSequenceGenerator;
-import org.bouncycastle.asn1.BERTags;
-import org.bouncycastle.asn1.DERSequenceGenerator;
-import org.bouncycastle.asn1.cms.CMSObjectIdentifiers;
-import org.bouncycastle.asn1.cms.CompressedDataParser;
-import org.bouncycastle.asn1.cms.ContentInfoParser;
-
-public class OctetStringTest
- extends TestCase
-{
- public void testReadingWriting()
- throws Exception
- {
- ByteArrayOutputStream bOut = new ByteArrayOutputStream();
- BEROctetStringGenerator octGen = new BEROctetStringGenerator(bOut);
-
- OutputStream out = octGen.getOctetOutputStream();
-
- out.write(new byte[] { 1, 2, 3, 4 });
- out.write(new byte[4]);
-
- out.close();
-
- ASN1StreamParser aIn = new ASN1StreamParser(bOut.toByteArray());
-
- ASN1OctetStringParser s = (ASN1OctetStringParser)aIn.readObject();
-
- InputStream in = s.getOctetStream();
- int count = 0;
-
- while (in.read() >= 0)
- {
- count++;
- }
-
- assertEquals(8, count);
- }
-
- public void testReadingWritingZeroInLength()
- throws Exception
- {
- ByteArrayOutputStream bOut = new ByteArrayOutputStream();
- BEROctetStringGenerator octGen = new BEROctetStringGenerator(bOut);
-
- OutputStream out = octGen.getOctetOutputStream();
-
- out.write(new byte[] { 1, 2, 3, 4 });
- out.write(new byte[512]); // forces a zero to appear in length
-
- out.close();
-
- ASN1StreamParser aIn = new ASN1StreamParser(bOut.toByteArray());
-
- ASN1OctetStringParser s = (ASN1OctetStringParser)aIn.readObject();
-
- InputStream in = s.getOctetStream();
- int count = 0;
-
- while (in.read() >= 0)
- {
- count++;
- }
-
- assertEquals(516, count);
- }
-
- public void testReadingWritingNested()
- throws Exception
- {
- ByteArrayOutputStream bOut = new ByteArrayOutputStream();
- BERSequenceGenerator sGen = new BERSequenceGenerator(bOut);
- BEROctetStringGenerator octGen = new BEROctetStringGenerator(sGen.getRawOutputStream());
-
- OutputStream out = octGen.getOctetOutputStream();
-
- BERSequenceGenerator inSGen = new BERSequenceGenerator(out);
-
- BEROctetStringGenerator inOctGen = new BEROctetStringGenerator(inSGen.getRawOutputStream());
-
- OutputStream inOut = inOctGen.getOctetOutputStream();
-
- inOut.write(new byte[] { 1, 2, 3, 4 });
- inOut.write(new byte[10]);
-
- inOut.close();
-
- inSGen.close();
-
- out.close();
-
- sGen.close();
-
- ASN1StreamParser aIn = new ASN1StreamParser(bOut.toByteArray());
-
- ASN1SequenceParser sq = (ASN1SequenceParser)aIn.readObject();
-
- ASN1OctetStringParser s = (ASN1OctetStringParser)sq.readObject();
-
- ASN1StreamParser aIn2 = new ASN1StreamParser(s.getOctetStream());
-
- ASN1SequenceParser sq2 = (ASN1SequenceParser)aIn2.readObject();
-
- ASN1OctetStringParser inS = (ASN1OctetStringParser)sq2.readObject();
-
- InputStream in = inS.getOctetStream();
- int count = 0;
-
- while (in.read() >= 0)
- {
- count++;
- }
-
- assertEquals(14, count);
- }
-
- public void testNestedStructure()
- throws Exception
- {
- ByteArrayOutputStream bOut = new ByteArrayOutputStream();
-
- BERSequenceGenerator sGen = new BERSequenceGenerator(bOut);
-
- sGen.addObject(new ASN1ObjectIdentifier(CMSObjectIdentifiers.compressedData.getId()));
-
- BERSequenceGenerator cGen = new BERSequenceGenerator(sGen.getRawOutputStream(), 0, true);
-
- cGen.addObject(new ASN1Integer(0));
-
- //
- // AlgorithmIdentifier
- //
- DERSequenceGenerator algGen = new DERSequenceGenerator(cGen.getRawOutputStream());
-
- algGen.addObject(new ASN1ObjectIdentifier("1.2"));
-
- algGen.close();
-
- //
- // Encapsulated ContentInfo
- //
- BERSequenceGenerator eiGen = new BERSequenceGenerator(cGen.getRawOutputStream());
-
- eiGen.addObject(new ASN1ObjectIdentifier("1.1"));
-
- BEROctetStringGenerator octGen = new BEROctetStringGenerator(eiGen.getRawOutputStream(), 0, true);
-
- //
- // output containing zeroes
- //
- OutputStream out = octGen.getOctetOutputStream();
-
- out.write(new byte[] { 1, 2, 3, 4 });
- out.write(new byte[4]);
- out.write(new byte[20]);
-
- out.close();
- eiGen.close();
- cGen.close();
- sGen.close();
-
- //
- // reading back
- //
- ASN1StreamParser aIn = new ASN1StreamParser(bOut.toByteArray());
-
- ContentInfoParser cp = new ContentInfoParser((ASN1SequenceParser)aIn.readObject());
-
- CompressedDataParser comData = new CompressedDataParser((ASN1SequenceParser)cp.getContent(BERTags.SEQUENCE));
- ContentInfoParser content = comData.getEncapContentInfo();
-
- ASN1OctetStringParser bytes = (ASN1OctetStringParser)content.getContent(BERTags.OCTET_STRING);
-
- InputStream in = bytes.getOctetStream();
- int count = 0;
-
- while (in.read() >= 0)
- {
- count++;
- }
-
- assertEquals(28, count);
- }
-
- public static Test suite()
- {
- return new TestSuite(OctetStringTest.class);
- }
-}