/* * Copyright 2006 Amazon Technologies, Inc. or its affiliates. * Amazon, Amazon.com and Carbonado are trademarks or registered trademarks * of Amazon Technologies, Inc. or its affiliates. All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.amazon.carbonado.raw; import java.util.Random; import junit.framework.TestCase; import junit.framework.TestSuite; /** * Test case for {@link KeyEncoder} and {@link KeyDecoder}. *
* It generates random data values, checks that the decoding produces the
* original results, and it checks that the order of the encoded bytes matches
* the order of the original data values.
*
* @author Brian S O'Neill
*/
public class TestKeyEncoding extends TestCase {
private static final int SHORT_TEST = 100;
private static final int MEDIUM_TEST = 500;
private static final int LONG_TEST = 1000;
public static void main(String[] args) {
junit.textui.TestRunner.run(suite());
}
public static TestSuite suite() {
return new TestSuite(TestKeyEncoding.class);
}
private final long mSeed;
private Random mRandom;
public TestKeyEncoding(String name) {
super(name);
mSeed = 5399777425345431L;
}
protected void setUp() {
mRandom = new Random(mSeed);
}
protected void tearDown() {
}
public void test_booleanDesc() throws Exception {
byte[] bytes = new byte[1];
boolean lastValue = false;
byte[] lastBytes = null;
for (int i=0; i