| /** |
| * Copyright (c) 2011, 2015 - Lunifera GmbH (Gross Enzersdorf, Austria), Loetz GmbH&Co.KG (69115 Heidelberg, Germany) |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License 2.0 |
| * which accompanies this distribution, and is available at |
| * https://www.eclipse.org/legal/epl-2.0/ |
| * |
| * SPDX-License-Identifier: EPL-2.0 |
| * |
| * Contributors: |
| * Florian Pirchner - Initial implementation |
| */ |
| package org.eclipse.osbp.runtime.web.vaadin.databinding.tests.model; |
| |
| import org.eclipse.core.databinding.DataBindingContext; |
| import org.eclipse.core.databinding.observable.value.WritableValue; |
| import org.junit.Assert; |
| import org.junit.Before; |
| import org.junit.Test; |
| import org.eclipse.osbp.runtime.web.vaadin.databinding.VaadinObservables; |
| |
| import com.vaadin.ui.CheckBox; |
| |
| public class PropertyReadonlyTest { |
| |
| @Before |
| public void setup() { |
| DefaultUI.setCurrent(new DefaultUI()); |
| VaadinObservables.getRealm(DefaultUI.getCurrent()); |
| } |
| |
| @Test |
| public void test_propertyReadonly() { |
| CheckBox property = new CheckBox(); |
| |
| WritableValue value = new WritableValue(); |
| Assert.assertNull(value.getValue()); |
| |
| DataBindingContext dbc = new DataBindingContext(); |
| dbc.bindValue(value, VaadinObservables.observeReadonly(property)); |
| Assert.assertEquals(false, value.getValue()); |
| |
| property.setReadOnly(true); |
| Assert.assertEquals(true, value.getValue()); |
| } |
| |
| @Test |
| public void test_propertyReadonly_updateFromTarget() { |
| CheckBox property = new CheckBox(); |
| |
| WritableValue value = new WritableValue(); |
| Assert.assertNull(value.getValue()); |
| |
| DataBindingContext dbc = new DataBindingContext(); |
| dbc.bindValue(value, VaadinObservables.observeReadonly(property)); |
| Assert.assertEquals(false, value.getValue()); |
| |
| value.setValue(true); |
| Assert.assertTrue(property.isReadOnly()); |
| value.setValue(false); |
| Assert.assertFalse(property.isReadOnly()); |
| } |
| |
| } |