| package org.bouncycastle.asn1.test; |
| |
| import java.io.IOException; |
| |
| import org.bouncycastle.asn1.x509.KeyUsage; |
| import org.bouncycastle.util.test.SimpleTest; |
| |
| public class KeyUsageTest |
| extends SimpleTest |
| { |
| public String getName() |
| { |
| return "KeyUsage"; |
| } |
| |
| public void performTest() |
| throws IOException |
| { |
| BitStringConstantTester.testFlagValueCorrect(0, KeyUsage.digitalSignature); |
| BitStringConstantTester.testFlagValueCorrect(1, KeyUsage.nonRepudiation); |
| BitStringConstantTester.testFlagValueCorrect(2, KeyUsage.keyEncipherment); |
| BitStringConstantTester.testFlagValueCorrect(3, KeyUsage.dataEncipherment); |
| BitStringConstantTester.testFlagValueCorrect(4, KeyUsage.keyAgreement); |
| BitStringConstantTester.testFlagValueCorrect(5, KeyUsage.keyCertSign); |
| BitStringConstantTester.testFlagValueCorrect(6, KeyUsage.cRLSign); |
| BitStringConstantTester.testFlagValueCorrect(7, KeyUsage.encipherOnly); |
| BitStringConstantTester.testFlagValueCorrect(8, KeyUsage.decipherOnly); |
| |
| if (!new KeyUsage(KeyUsage.keyCertSign).hasUsages(KeyUsage.keyCertSign)) |
| { |
| fail("usages bit test failed 1"); |
| } |
| |
| if (new KeyUsage(KeyUsage.cRLSign).hasUsages(KeyUsage.keyCertSign)) |
| { |
| fail("usages bit test failed 2"); |
| } |
| |
| if (!new KeyUsage(KeyUsage.cRLSign | KeyUsage.decipherOnly).hasUsages(KeyUsage.cRLSign | KeyUsage.decipherOnly)) |
| { |
| fail("usages bit test failed 3"); |
| } |
| |
| if (new KeyUsage(KeyUsage.cRLSign | KeyUsage.decipherOnly).hasUsages(KeyUsage.cRLSign | KeyUsage.decipherOnly | KeyUsage.keyCertSign)) |
| { |
| fail("usages bit test failed 4"); |
| } |
| } |
| |
| public static void main( |
| String[] args) |
| { |
| runTest(new KeyUsageTest()); |
| } |
| } |