@Test(timeout = 1000) public void testIDWhichIsDefined() { final PrimaryExpression expression = this.factory.createPrimaryExpression(); expression.setIdent("FOO"); this.definitionTable.add("FOO", "1"); Assert.assertEquals(ExpressionLongVisitor.TRUE, this.evaluater.walkTo(expression)); }
@Test(timeout = 1000) public void testConstantWhichIsBinary() { final PrimaryExpression expression = this.factory.createPrimaryExpression(); expression.setConst("0b001"); final Long result = this.evaluater.walkTo(expression); Assert.assertEquals(ExpressionLongVisitor.TRUE, result); }
@Test(timeout = 1000) // (expected = NumberFormatException.class) public void testConstantWhichIsString() { final PrimaryExpression expression = this.factory.createPrimaryExpression(); expression.setConst("\"hello\""); final Long result = this.evaluater.walkTo(expression); final Long expected = ExpressionLongVisitor.FALSE; Assert.assertEquals(expected, result); }
@Test(timeout = 1000) public void checkParserResult() throws Exception { final String text = this.getTextFromFile("res/Test0045_IfValueGreater.c"); final Preprocess Preprocess_0_Var = this.parseHelper.parse(text); this.valHelper.assertNoErrors(Preprocess_0_Var); Assert.assertNotNull(Preprocess_0_Var); // 0 final GroupOpt GroupOpt_1_Var = (GroupOpt) Preprocess_0_Var.getGroup(); Assert.assertNotNull(GroupOpt_1_Var); final EList<? extends EObject> Lines_1_list = GroupOpt_1_Var.getLines(); Assert.assertNotNull(Lines_1_list); Assert.assertEquals(2, Lines_1_list.size()); // 1 final PreprocessorDirectives PreprocessorDirectives_2_Var = (PreprocessorDirectives) Lines_1_list.get(0); Assert.assertNotNull(PreprocessorDirectives_2_Var); // 2 final DefineObjectMacro DefineObjectMacro_3_Var = (DefineObjectMacro) PreprocessorDirectives_2_Var.getDirective(); Assert.assertNotNull(DefineObjectMacro_3_Var); Assert.assertEquals("VERSION", DefineObjectMacro_3_Var.getIdent()); Assert.assertEquals("290", DefineObjectMacro_3_Var.getString()); // 3 final PreprocessorDirectives PreprocessorDirectives_4_Var = (PreprocessorDirectives) Lines_1_list.get(1); Assert.assertNotNull(PreprocessorDirectives_4_Var); // 4 final ConditionalDirective ConditionalDirective_5_Var = (ConditionalDirective) PreprocessorDirectives_4_Var.getDirective(); Assert.assertNotNull(ConditionalDirective_5_Var); // 5 final IfConditional IfConditional_6_Var = (IfConditional) ConditionalDirective_5_Var.getConditional(); Assert.assertNotNull(IfConditional_6_Var); // 6 final RelationalExpression RelationalExpression_7_Var = (RelationalExpression) IfConditional_6_Var.getExpression(); Assert.assertNotNull(RelationalExpression_7_Var); Assert.assertEquals(">=", RelationalExpression_7_Var.getOp()); // 7 final PrimaryExpression PrimaryExpression_8_Var = (PrimaryExpression) RelationalExpression_7_Var.getLeft(); Assert.assertNotNull(PrimaryExpression_8_Var); Assert.assertEquals("VERSION", PrimaryExpression_8_Var.getIdent()); // 8 final PrimaryExpression PrimaryExpression_9_Var = (PrimaryExpression) RelationalExpression_7_Var.getRight(); Assert.assertNotNull(PrimaryExpression_9_Var); Assert.assertEquals("200", PrimaryExpression_9_Var.getConst()); // 9 final GroupOpt GroupOpt_10_Var = (GroupOpt) IfConditional_6_Var.getGroup(); Assert.assertNotNull(GroupOpt_10_Var); final EList<? extends EObject> Lines_10_list = GroupOpt_10_Var.getLines(); Assert.assertNotNull(Lines_10_list); Assert.assertEquals(1, Lines_10_list.size()); // 10 final Code Code_11_Var = (Code) Lines_10_list.get(0); Assert.assertNotNull(Code_11_Var); Assert.assertEquals(" void api_version_2();", Code_11_Var.getCode()); }
@Test(timeout = 1000) public void testConstantWhichIsDecimalAndIsTrue() { final PrimaryExpression expression = this.factory.createPrimaryExpression(); expression.setConst("1"); Assert.assertEquals(ExpressionLongVisitor.TRUE, this.evaluater.walkTo(expression)); }
@Test(timeout = 1000) public void testIDWhichIsEmpty() { final PrimaryExpression expression = this.factory.createPrimaryExpression(); expression.setIdent("FOO"); Assert.assertEquals(ExpressionLongVisitor.FALSE, this.evaluater.walkTo(expression)); }