1/* 2 * Copyright (C) 2009 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16package tests.security; 17 18import java.security.AlgorithmParameterGenerator; 19import java.security.AlgorithmParameters; 20import java.security.NoSuchAlgorithmException; 21import junit.framework.TestCase; 22 23public abstract class AlgorithmParameterGeneratorTest extends TestCase { 24 25 private final String algorithmName; 26 private final TestHelper<AlgorithmParameters> helper; 27 28 protected AlgorithmParameterGeneratorTest(String algorithmName, TestHelper<AlgorithmParameters> helper) { 29 this.algorithmName = algorithmName; 30 this.helper = helper; 31 } 32 33 public void testAlgorithmParameterGenerator() { 34 AlgorithmParameterGenerator generator = null; 35 try { 36 generator = AlgorithmParameterGenerator.getInstance(algorithmName); 37 } catch (NoSuchAlgorithmException e) { 38 fail(e.getMessage()); 39 } 40 41 generator.init(1024); 42 43 AlgorithmParameters parameters = generator.generateParameters(); 44 45 assertNotNull("generated parameters are null", parameters); 46 47 helper.test(parameters); 48 } 49} 50