/* * Beanfabrics Framework Copyright (C) by Michael Karneim, beanfabrics.org * Use is subject to license terms. See license.txt. */ package org.beanfabrics.model; import static org.junit.Assert.assertEquals; import static org.junit.Assert.fail; import junit.framework.JUnit4TestAdapter; import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; /** * @author Michael Karneim */ public class BooleanPMTest { public static junit.framework.Test suite() { return new JUnit4TestAdapter(BooleanPMTest.class); } public BooleanPMTest() { } @BeforeClass public static void setUpClass() throws Exception { } @AfterClass public static void tearDownClass() throws Exception { } @Test public void create() { new BooleanPM(); } @Test public void setBoolean() { BooleanPM model = new BooleanPM(); model.setBoolean(true); assertEquals("pM.getText()", model.getOptions().get(true), model.getText()); model.setBoolean(false); assertEquals("pM.getText()", model.getOptions().get(false), model.getText()); model.setBoolean(null); assertEquals("pM.getText()", "", model.getText()); } @Test public void validate() { BooleanPM model = new BooleanPM(); model.setText("hello"); assertEquals("pM.isValid()", false, model.isValid()); model.setText(model.getOptions().get(true)); assertEquals("pM.isValid()", true, model.isValid()); model.setText(null); assertEquals("pM.isValid()", false, model.isValid()); model.setText(model.getOptions().get(false)); assertEquals("pM.isValid()", true, model.isValid()); } @Test public void getBoolean() { BooleanPM model = new BooleanPM(); model.setText(model.getOptions().get(true)); assertEquals("pM.getBoolean()", true, model.getBoolean()); model.setText(model.getOptions().get(false)); assertEquals("pM.getBoolean()", false, model.getBoolean()); model.setText(""); assertEquals("pM.getBoolean()", null, model.getBoolean()); } @Test public void getInvalidBoolean() { BooleanPM model = new BooleanPM(); model.setText("hello"); try { model.getBoolean(); fail("expected IllegalStateException"); } catch (ConversionException ex) { // ok. } } @Test public void isModified() { BooleanPM pModel = new BooleanPM(); pModel.setBoolean(true); pModel.preset(); assertEquals("pModel.isModified()", false, pModel.isModified()); pModel.setBoolean(false); assertEquals("pModel.isModified()", true, pModel.isModified()); pModel.reset(); assertEquals("pModel.isModified()", false, pModel.isModified()); } }