package org.reldb.rel.tests.main;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
import org.reldb.rel.tests.BaseOfTest;
public class TestPossrepTemperature01 extends BaseOfTest {
@BeforeClass
public static void testPossrepTemperature01_start() {
String src =
"BEGIN;" +
"TYPE Temperature UNION;" +
"TYPE Temperature_Normal IS {Temperature POSSREP {t INTEGER}};" +
"TYPE Temperature_NoReading IS {Temperature POSSREP {}};" +
"TYPE Temperature_OutOfRange IS {Temperature POSSREP {}};" +
"VAR Readings REAL RELATION {timestamp INTEGER, temp Temperature} KEY {timestamp};" +
"Readings := RELATION {timestamp INTEGER, temp Temperature} {" +
"TUPLE {timestamp 12955, temp Temperature_OutOfRange()}," +
"TUPLE {timestamp 12956, temp Temperature_NoReading()}," +
"TUPLE {timestamp 12957, temp Temperature_Normal(33)}," +
"TUPLE {timestamp 12958, temp Temperature_Normal(44)}," +
"TUPLE {timestamp 12959, temp Temperature_Normal(58)}," +
"TUPLE {timestamp 12960, temp Temperature_Normal(66)}" +
"};" +
"END; true";
String expected = "true";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t01() {
String src = "Readings WHERE temp = Temperature_Normal(33)";
String expected = "RELATION {timestamp INTEGER, temp Temperature} {\n" +
"\tTUPLE {timestamp 12957, temp Temperature_Normal(33)}\n" +
"}";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t02() {
String src = "Readings WHERE temp = Temperature_Normal(30)";
String expected = "RELATION {timestamp INTEGER, temp Temperature} {\n" +
"}";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t03() {
String src = "Readings WHERE temp = Temperature_OutOfRange()";
String expected = "RELATION {timestamp INTEGER, temp Temperature} {\n" +
"\tTUPLE {timestamp 12955, temp Temperature_OutOfRange()}\n" +
"}";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t04() {
String src = "IS_Temperature(Temperature_Normal(33))";
String expected = "true";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t05() {
String src = "IS_Temperature(Temperature_OutOfRange())";
String expected = "true";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t06() {
String src = "TREAT_AS_Temperature(Temperature_OutOfRange()) = TREAT_AS_Temperature(Temperature_OutOfRange())";
String expected = "true";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t07() {
String src = "TREAT_AS_Temperature(Temperature_Normal(33)) = TREAT_AS_Temperature(Temperature_Normal(33))";
String expected = "true";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t08() {
String src = "TREAT_AS_Temperature(Temperature_Normal(33)) = TREAT_AS_Temperature(Temperature_Normal(34))";
String expected = "false";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t09() {
String src = "TREAT_AS_Temperature(Temperature_Normal(33)) = TREAT_AS_Temperature(Temperature_OutOfRange())";
String expected = "false";
testEquals(expected, src);
}
@Test
public void testPossrepTemperature01_t10() {
String src = "TREAT_AS_Temperature(Temperature_NoReading()) = TREAT_AS_Temperature(Temperature_OutOfRange())";
String expected = "false";
testEquals(expected, src);
}
@AfterClass
public static void testPossrepTemperature01_end() {
String src =
"BEGIN;" +
"DROP VAR Readings;" +
"DROP TYPE Temperature_OutOfRange;" +
"DROP TYPE Temperature_NoReading;" +
"DROP TYPE Temperature_Normal;" +
"DROP TYPE Temperature;" +
"END; true";
String expected = "true";
testEquals(expected, src);
}
}