/* * Licensed to Jasig under one or more contributor license * agreements. See the NOTICE file distributed with this work * for additional information regarding copyright ownership. * Jasig licenses this file to you 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 the following location: * * 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 org.jasig.cas.authentication.handler; import static org.junit.Assert.*; import org.junit.Test; /** * @author Scott Battaglia * @since 3.0 */ public final class DefaultPasswordEncoderTests { private final PasswordEncoder passwordEncoder = new DefaultPasswordEncoder("MD5"); @Test public void testNullPassword() { assertEquals(null, this.passwordEncoder.encode(null)); } @Test public void testMd5Hash() { assertEquals("1f3870be274f6c49b3e31a0c6728957f", this.passwordEncoder .encode("apple")); } @Test public void testSha1Hash() { final PasswordEncoder pe = new DefaultPasswordEncoder("SHA1"); final String hash = pe.encode("this is a test"); assertEquals("fa26be19de6bff93f70bc2308434e4a440bbad02", hash); } @Test public void testSha1Hash2() { final PasswordEncoder pe = new DefaultPasswordEncoder("SHA1"); final String hash = pe.encode("TEST of the SYSTEM"); assertEquals("82ae28dfad565dd9882b94498a271caa29025d5f", hash); } @Test public void testInvalidEncodingType() { final PasswordEncoder pe = new DefaultPasswordEncoder("scott"); try { pe.encode("test"); fail("exception expected."); } catch (final Exception e) { return; } } }