/* * Beanfabrics Framework Copyright (C) by Michael Karneim, beanfabrics.org * Use is subject to license terms. See license.txt. */ package org.beanfabrics.swing; import static org.junit.Assert.assertEquals; import junit.framework.JUnit4TestAdapter; import org.beanfabrics.ModelProvider; import org.beanfabrics.Path; import org.beanfabrics.model.OperationPM; import org.beanfabrics.model.TextPM; import org.junit.Before; import org.junit.Test; public class BnTextFieldTest { public static junit.framework.Test suite() { return new JUnit4TestAdapter(BnTextFieldTest.class); } BnTextField bnTextField; @Before public void setUp() { bnTextField = new BnTextField(); } @Test public void modelToView() { TextPM textPM = new TextPM(); ModelProvider ds = new ModelProvider(); ds.setPresentationModel(textPM); bnTextField.setModelProvider(ds); bnTextField.setPath(new Path("this")); textPM.setText("hello"); assertEquals("bnTextField.getText()", "hello", bnTextField.getText()); bnTextField.setModelProvider(null); textPM.setText("world"); assertEquals("bnTextField.getText()", "", bnTextField.getText()); } @Test public void viewToModel() { TextPM textPM = new TextPM(); ModelProvider ds = new ModelProvider(); ds.setPresentationModel(textPM); bnTextField.setModelProvider(ds); bnTextField.setPath(new Path("this")); bnTextField.setText("hello"); assertEquals("textCell.getText()", "hello", textPM.getText()); bnTextField.setModelProvider(null); bnTextField.setText("world"); assertEquals("textCell.getText()", "hello", textPM.getText()); } @Test public void incorrectModel() { OperationPM op = new OperationPM(); ModelProvider ds = new ModelProvider(); ds.setPresentationModel(op); bnTextField.setModelProvider(ds); bnTextField.setPath(new Path("this")); } }