SignerInfoTest.java revision 561ee011997c6c2f1befbfaa9d5f0a99771c1d63
1/* 2 * Licensed to the Apache Software Foundation (ASF) under one 3 * or more contributor license agreements. See the NOTICE file 4 * distributed with this work for additional information 5 * regarding copyright ownership. The ASF licenses this file 6 * to you under the Apache License, Version 2.0 (the 7 * "License"); you may not use this file except in compliance 8 * with the License. You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, 13 * software distributed under the License is distributed on an 14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 * KIND, either express or implied. See the License for the 16 * specific language governing permissions and limitations 17 * under the License. 18 */ 19 20package org.apache.harmony.security.tests.pkcs7; 21 22import java.math.BigInteger; 23 24import javax.security.auth.x500.X500Principal; 25 26import junit.framework.TestCase; 27 28import org.apache.harmony.security.pkcs7.SignerInfo; 29import org.apache.harmony.security.x501.Name; 30import org.apache.harmony.security.x509.AlgorithmIdentifier; 31 32public class SignerInfoTest extends TestCase { 33 34 public void testEncode() throws Exception { 35 36 Object[] issuerAndSerialNumber = new Object[] { new Name("CN=test"), 37 BigInteger.TEN.toByteArray() }; 38 39 SignerInfo signerInfo = new SignerInfo(1, issuerAndSerialNumber, 40 new AlgorithmIdentifier("1.3.14.3.2.26"),// SHA1 OID 41 null, new AlgorithmIdentifier("1.2.840.10040.4.1"),// DSA OID 42 new byte[] { 0x01 },// signature 43 null); 44 45 byte[] encoding = SignerInfo.ASN1.encode(signerInfo); 46 47 signerInfo = (SignerInfo) SignerInfo.ASN1.decode(encoding); 48 49 assertEquals(new X500Principal("CN=test"), signerInfo.getIssuer()); 50 assertEquals(new BigInteger("10"), signerInfo.getSerialNumber()); 51 } 52} 53