java/sql-java-prihlasovani/test/cz/frantovo/jaas/sql/SQLRealmTest.java
author František Kučera <franta-hg@frantovo.cz>
Tue, 07 Feb 2012 18:03:31 +0100
changeset 7 46bb283a674d
parent 6 aff44e80f418
permissions -rw-r--r--
uživatelé a skupiny v SQL databázi, parametrizace, hellDesk: #11
franta-hg@5
     1
package cz.frantovo.jaas.sql;
franta-hg@5
     2
franta-hg@5
     3
import com.sun.enterprise.security.auth.realm.BadRealmException;
franta-hg@5
     4
import com.sun.enterprise.security.auth.realm.NoSuchRealmException;
franta-hg@5
     5
import java.util.Properties;
franta-hg@7
     6
import javax.naming.NamingException;
franta-hg@5
     7
import org.junit.Before;
franta-hg@5
     8
import org.junit.Test;
franta-hg@5
     9
import static org.junit.Assert.*;
franta-hg@5
    10
franta-hg@5
    11
/**
franta-hg@5
    12
 *
franta-hg@5
    13
 * @author fiki
franta-hg@5
    14
 */
franta-hg@5
    15
public class SQLRealmTest {
franta-hg@5
    16
franta-hg@5
    17
	private static final String JAAS_KONTEXT = "sqlRealm_123456";
franta-hg@7
    18
	private static final String JNDI_DS = "jdbc/test";
franta-hg@7
    19
	private static final String SQL_HESLO = "SELECT jmeno FROM uzivatel WHERE jmeno = ? AND heslo = ?";
franta-hg@7
    20
	private static final String SQL_SKUPINY_UŽIVATELE = "SELECT …";
franta-hg@7
    21
	private static final String SQL_SKUPINY_VŠECHNY = "SELECT …";
franta-hg@7
    22
	private static final String PARAMETR_NEPOVINNÝ = "nepovinný_parametr";
franta-hg@7
    23
	private static final String PARAMETR_NEPOVINNÝ_HODNOTA = "hodnota nepovinného parametru";
franta-hg@5
    24
	private SQLRealm realm;
franta-hg@5
    25
franta-hg@5
    26
	@Before
franta-hg@7
    27
	public void setUp() throws BadRealmException, NoSuchRealmException, NamingException {
franta-hg@5
    28
		Properties parametry = new Properties();
franta-hg@7
    29
		
franta-hg@5
    30
		parametry.setProperty(SQLRealm.JAAS_CONTEXT_PARAM, JAAS_KONTEXT);
franta-hg@7
    31
		parametry.setProperty(SQLRealm.PARAM_JNDI, JNDI_DS);
franta-hg@7
    32
		parametry.setProperty(SQLRealm.PARAM_SQL_HESLO, SQL_HESLO);
franta-hg@7
    33
		parametry.setProperty(SQLRealm.PARAM_SQL_SKUPINY_UŽIVATELE, SQL_SKUPINY_UŽIVATELE);
franta-hg@7
    34
		parametry.setProperty(SQLRealm.PARAM_SQL_SKUPINY_VŠECHNY, SQL_SKUPINY_VŠECHNY);
franta-hg@7
    35
franta-hg@7
    36
		parametry.setProperty(SQLRealm.PARAM_NETESTOVAT_SPOJENÍ, Boolean.TRUE.toString());
franta-hg@5
    37
franta-hg@5
    38
		realm = new SQLRealm();
franta-hg@5
    39
		realm.init(parametry);
franta-hg@7
    40
franta-hg@7
    41
		realm.setProperty(PARAMETR_NEPOVINNÝ, PARAMETR_NEPOVINNÝ_HODNOTA);
franta-hg@5
    42
	}
franta-hg@5
    43
franta-hg@5
    44
	@Test
franta-hg@5
    45
	public void testJaasKontext() {
franta-hg@5
    46
		String kontext = realm.getJAASContext();
franta-hg@5
    47
		System.out.println("jaasContext = " + kontext);
franta-hg@5
    48
		assertEquals("Kontext je jiný, než jsme nastavili v init parametrech.", JAAS_KONTEXT, kontext);
franta-hg@5
    49
	}
franta-hg@5
    50
franta-hg@5
    51
	@Test
franta-hg@5
    52
	public void testGetAuthType() {
franta-hg@5
    53
		String authType = realm.getAuthType();
franta-hg@5
    54
		System.out.println("authType = " + authType);
franta-hg@6
    55
		assertTrue("authType musí být nenulový", authType != null);
franta-hg@6
    56
		assertTrue("authType musí být neprázdný", authType.trim().length() > 0);
franta-hg@5
    57
	}
franta-hg@7
    58
franta-hg@7
    59
	@Test
franta-hg@7
    60
	public void testGetProperty() {
franta-hg@7
    61
		assertEquals("Neplatná hodnota parametru JAAS_KONTEXT", JAAS_KONTEXT, realm.getProperty(SQLRealm.JAAS_CONTEXT_PARAM));
franta-hg@7
    62
		assertEquals("Neplatná hodnota parametru SQL_HESLO", SQL_HESLO, realm.getProperty(SQLRealm.PARAM_SQL_HESLO));
franta-hg@7
    63
		assertEquals("Neplatná hodnota parametru PARAMETR_NEPOVINNÝ", PARAMETR_NEPOVINNÝ_HODNOTA, realm.getProperty(PARAMETR_NEPOVINNÝ));
franta-hg@7
    64
franta-hg@7
    65
	}
franta-hg@5
    66
}