Search in sources :

Example 41 with State

use of org.eclipse.smarthome.core.types.State in project smarthome by eclipse.

the class ArithmeticGroupFunctionTest method testAndFunction_negative.

@Test
public void testAndFunction_negative() {
    items.add(new TestItem("TestItem1", OpenClosedType.OPEN));
    items.add(new TestItem("TestItem2", UnDefType.UNDEF));
    items.add(new TestItem("TestItem3", OpenClosedType.OPEN));
    items.add(new TestItem("TestItem4", OpenClosedType.OPEN));
    items.add(new TestItem("TestItem5", UnDefType.UNDEF));
    function = new ArithmeticGroupFunction.And(OpenClosedType.OPEN, OpenClosedType.CLOSED);
    State state = function.calculate(items);
    assertEquals(OpenClosedType.CLOSED, state);
}
Also used : State(org.eclipse.smarthome.core.types.State) Test(org.junit.Test)

Example 42 with State

use of org.eclipse.smarthome.core.types.State in project smarthome by eclipse.

the class ArithmeticGroupFunctionTest method testNOrFunction.

@Test
public void testNOrFunction() {
    items.add(new TestItem("TestItem1", OpenClosedType.CLOSED));
    items.add(new TestItem("TestItem2", UnDefType.UNDEF));
    items.add(new TestItem("TestItem3", OpenClosedType.OPEN));
    items.add(new TestItem("TestItem4", OpenClosedType.CLOSED));
    items.add(new TestItem("TestItem5", UnDefType.UNDEF));
    function = new ArithmeticGroupFunction.NOr(OpenClosedType.OPEN, OpenClosedType.CLOSED);
    State state = function.calculate(items);
    assertEquals(OpenClosedType.CLOSED, state);
}
Also used : State(org.eclipse.smarthome.core.types.State) Test(org.junit.Test)

Example 43 with State

use of org.eclipse.smarthome.core.types.State in project smarthome by eclipse.

the class QuantityTypeArithmeticGroupFunctionTest method testAvgFunctionQuantityTypeDifferentUnits.

@Test
public void testAvgFunctionQuantityTypeDifferentUnits() {
    items.add(createNumberItem("TestItem1", Temperature.class, new QuantityType<Temperature>("100 °C")));
    items.add(createNumberItem("TestItem2", Temperature.class, UnDefType.NULL));
    items.add(createNumberItem("TestItem3", Temperature.class, new QuantityType<Temperature>("113 °F")));
    items.add(createNumberItem("TestItem4", Temperature.class, UnDefType.UNDEF));
    items.add(createNumberItem("TestItem5", Temperature.class, new QuantityType<Temperature>("294.15 K")));
    function = new QuantityTypeArithmeticGroupFunction.Avg(Temperature.class);
    State state = function.calculate(items);
    assertEquals(new QuantityType<Temperature>("55.33 °C"), state);
}
Also used : Temperature(javax.measure.quantity.Temperature) State(org.eclipse.smarthome.core.types.State) Test(org.junit.Test)

Example 44 with State

use of org.eclipse.smarthome.core.types.State in project smarthome by eclipse.

the class QuantityTypeArithmeticGroupFunctionTest method testMinFunctionQuantityTypeDifferentUnits.

@Test
public void testMinFunctionQuantityTypeDifferentUnits() {
    items.add(createNumberItem("TestItem1", Temperature.class, new QuantityType<Temperature>("100 °C")));
    items.add(createNumberItem("TestItem2", Temperature.class, UnDefType.NULL));
    items.add(createNumberItem("TestItem3", Temperature.class, new QuantityType<Temperature>("113 °F")));
    items.add(createNumberItem("TestItem4", Temperature.class, UnDefType.UNDEF));
    items.add(createNumberItem("TestItem5", Temperature.class, new QuantityType<Temperature>("294.15 K")));
    function = new QuantityTypeArithmeticGroupFunction.Min(Temperature.class);
    State state = function.calculate(items);
    assertEquals(new QuantityType<Temperature>("294.15 K"), state);
}
Also used : Temperature(javax.measure.quantity.Temperature) State(org.eclipse.smarthome.core.types.State) Test(org.junit.Test)

Example 45 with State

use of org.eclipse.smarthome.core.types.State in project smarthome by eclipse.

the class QuantityTypeArithmeticGroupFunctionTest method testAvgFunctionQuantityType.

@Test
public void testAvgFunctionQuantityType() {
    items.add(createNumberItem("TestItem1", Temperature.class, new QuantityType<Temperature>("100 °C")));
    items.add(createNumberItem("TestItem2", Temperature.class, UnDefType.NULL));
    items.add(createNumberItem("TestItem3", Temperature.class, new QuantityType<Temperature>("200 °C")));
    items.add(createNumberItem("TestItem4", Temperature.class, UnDefType.UNDEF));
    items.add(createNumberItem("TestItem5", Temperature.class, new QuantityType<Temperature>("300 °C")));
    function = new QuantityTypeArithmeticGroupFunction.Avg(Temperature.class);
    State state = function.calculate(items);
    assertEquals(new QuantityType<Temperature>("200 °C"), state);
}
Also used : Temperature(javax.measure.quantity.Temperature) State(org.eclipse.smarthome.core.types.State) Test(org.junit.Test)

Aggregations

State (org.eclipse.smarthome.core.types.State)130 Test (org.junit.Test)59 DecimalType (org.eclipse.smarthome.core.library.types.DecimalType)23 PercentType (org.eclipse.smarthome.core.library.types.PercentType)22 Item (org.eclipse.smarthome.core.items.Item)21 NumberItem (org.eclipse.smarthome.core.library.items.NumberItem)19 Temperature (javax.measure.quantity.Temperature)18 StringType (org.eclipse.smarthome.core.library.types.StringType)18 QuantityType (org.eclipse.smarthome.core.library.types.QuantityType)17 ItemNotFoundException (org.eclipse.smarthome.core.items.ItemNotFoundException)15 HSBType (org.eclipse.smarthome.core.library.types.HSBType)15 OnOffType (org.eclipse.smarthome.core.library.types.OnOffType)15 RollershutterItem (org.eclipse.smarthome.core.library.items.RollershutterItem)13 JavaOSGiTest (org.eclipse.smarthome.test.java.JavaOSGiTest)13 ColorItem (org.eclipse.smarthome.core.library.items.ColorItem)12 SwitchItem (org.eclipse.smarthome.core.library.items.SwitchItem)11 DimmerItem (org.eclipse.smarthome.core.library.items.DimmerItem)10 RawType (org.eclipse.smarthome.core.library.types.RawType)10 Pressure (javax.measure.quantity.Pressure)9 GroupItem (org.eclipse.smarthome.core.items.GroupItem)8