blob: 5279312b819950cb0df46a3b61849014a17285e0 [file] [log] [blame]
package org.bouncycastle.pqc.crypto.test;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import junit.framework.TestCase;
import org.bouncycastle.pqc.crypto.ntru.NTRUSigningKeyGenerationParameters;
public class NTRUSigningParametersTest
extends TestCase
{
public void testLoadSave()
throws IOException
{
for (NTRUSigningKeyGenerationParameters params : new NTRUSigningKeyGenerationParameters[]{NTRUSigningKeyGenerationParameters.TEST157, NTRUSigningKeyGenerationParameters.TEST157_PROD})
{
testLoadSave(params);
}
}
private void testLoadSave(NTRUSigningKeyGenerationParameters params)
throws IOException
{
ByteArrayOutputStream os = new ByteArrayOutputStream();
params.writeTo(os);
ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray());
assertEquals(params, new NTRUSigningKeyGenerationParameters(is));
}
public void testEqualsHashCode()
throws IOException
{
for (NTRUSigningKeyGenerationParameters params : new NTRUSigningKeyGenerationParameters[]{NTRUSigningKeyGenerationParameters.TEST157, NTRUSigningKeyGenerationParameters.TEST157_PROD})
{
testEqualsHashCode(params);
}
}
private void testEqualsHashCode(NTRUSigningKeyGenerationParameters params)
throws IOException
{
ByteArrayOutputStream os = new ByteArrayOutputStream();
params.writeTo(os);
ByteArrayInputStream is = new ByteArrayInputStream(os.toByteArray());
NTRUSigningKeyGenerationParameters params2 = new NTRUSigningKeyGenerationParameters(is);
assertEquals(params, params2);
assertEquals(params.hashCode(), params2.hashCode());
params.N += 1;
assertFalse(params.equals(params2));
assertFalse(params.equals(params2));
assertFalse(params.hashCode() == params2.hashCode());
}
public void testClone()
{
for (NTRUSigningKeyGenerationParameters params : new NTRUSigningKeyGenerationParameters[]{NTRUSigningKeyGenerationParameters.TEST157, NTRUSigningKeyGenerationParameters.TEST157_PROD})
{
assertEquals(params, params.clone());
}
}
}