1 package com.p6r.kmipserverlib;
5 import java.nio.charset.Charset;
7 import static org.junit.Assert.assertEquals;
23 System.out.println(
"@BeforeClass - oneTimeSetUp");
29 System.out.println(
"@AfterClass - oneTimeTearDown");
35 System.out.println(
"@Before - setUp");
41 System.out.println(
"@After - tearDown");
51 System.out.println(
"@Test - JNICall-CreateSecretDataKMIP");
55 P6KMIPServerLib sl =
new P6KMIPServerLib();
59 "<RequestMessage>\n" +
61 " <ProtocolVersion>\n" +
62 " <ProtocolVersionMajor type=\"Integer\" value=\"1\"/>\n" +
63 " <ProtocolVersionMinor type=\"Integer\" value=\"4\"/>\n" +
64 " </ProtocolVersion>\n" +
65 " <BatchOrderOption type=\"Boolean\" value=\"true\"/>\n" +
66 " <BatchCount type=\"Integer\" value=\"1\"/>\n" +
67 "</RequestHeader>\n" +
69 " <Operation type=\"Enumeration\" value=\"Create\"/>\n" +
70 " <UniqueBatchItemID type=\"ByteString\" value=\"01\"/>\n" +
71 " <RequestPayload>\n" +
72 " <ObjectType type=\"Enumeration\" value=\"SecretData\"/>\n" +
73 " <TemplateAttribute>\n" +
75 " <AttributeName type=\"TextString\" value=\"Cryptographic Length\"/>\n" +
76 " <AttributeValue type=\"Integer\" value=\"80\"/>\n" +
78 " </TemplateAttribute>\n" +
79 " </RequestPayload>\n" +
84 sl.initializeLibrary(P6KMIPServerLib.FLAGS_NONE);
86 String libVersion = sl.getLibraryVersion();
87 System.out.println(libVersion);
91 sl.setMessageBuffer(testMessage.getBytes(Charset.forName(
"UTF-8")), KMIPConstants.FORMAT_MSGXML);
94 RequestHeader rh = sl.getRequestHeader();
95 assertEquals(
"1.4", rh.getProtocolVersion());
98 for (
int i = 0; i < rh.getBatchCount(); i++) {
100 BatchItem bi = sl.getBatchItem(i + 1);
101 if (bi instanceof CreateBatchItem) {
102 CreateBatchItem ck = (CreateBatchItem) bi;
105 byte[] batchId = ck.getUniqueBatchId();
106 assertEquals(1, batchId.length);
107 assertEquals(0x01, batchId[0]);
109 int objectType = ck.getObjectType();
110 assertEquals(KMIPConstants.OBJECT_SECRETDATA, objectType);
113 String[] attributes = ck.getAttributes();
114 assertEquals(1, attributes.length);
115 assertEquals(
"Cryptographic Length: 80", attributes[0]);
120 }
catch (Exception e) {
122 System.out.println(e.toString());
A JUNIT test demonstrating how to parse an incoming KMIP request from a client.
void JNICall_CreateSecretDataKMIP()
Test: Verify parser can handle a Create operation for Secret Data Object.
static void oneTimeSetUp()
static void oneTimeTearDown()