Skip to content

Commit 4e67c0e

Browse files
committed
Expressions with intervals and constants
1 parent 9e2d4d7 commit 4e67c0e

File tree

2 files changed

+51
-4
lines changed

2 files changed

+51
-4
lines changed

unit/analyses/variable-sensitivity/value_expression_evaluation/expression_evaluation.cpp

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,31 @@ SCENARIO(
117117
}
118118
}
119119
}
120+
GIVEN("adding a constant and an interval")
121+
{
122+
WHEN("1 + [2,2]")
123+
{
124+
auto op1 = make_constant(val1, environment, ns);
125+
auto op2 = make_interval(val2, val2, environment, ns);
126+
auto result = add_as_interval(op1, op2, environment, ns);
127+
128+
THEN("= [3,3]")
129+
{
130+
EXPECT(result, val3, val3);
131+
}
132+
}
133+
WHEN("1 + [2,4]")
134+
{
135+
auto op1 = make_constant(val1, environment, ns);
136+
auto op2 = make_interval(val2, val4, environment, ns);
137+
auto result = add_as_interval(op1, op2, environment, ns);
138+
139+
THEN("= [3,5]")
140+
{
141+
EXPECT(result, val3, val5);
142+
}
143+
}
144+
}
120145
GIVEN("adding a constant and a value set")
121146
{
122147
WHEN("1 + { 2 }")
@@ -237,6 +262,31 @@ SCENARIO(
237262
}
238263
}
239264
}
265+
GIVEN("adding an interval and a constant")
266+
{
267+
WHEN("[2,2] + 1")
268+
{
269+
auto op1 = make_interval(val2, val2, environment, ns);
270+
auto op2 = make_constant(val1, environment, ns);
271+
auto result = add_as_interval(op1, op2, environment, ns);
272+
273+
THEN("= [3,3]")
274+
{
275+
EXPECT(result, val3, val3);
276+
}
277+
}
278+
WHEN("[2,4] + 1")
279+
{
280+
auto op1 = make_interval(val2, val4, environment, ns);
281+
auto op2 = make_constant(val1, environment, ns);
282+
auto result = add_as_interval(op1, op2, environment, ns);
283+
284+
THEN("= [3,5]")
285+
{
286+
EXPECT(result, val3, val5);
287+
}
288+
}
289+
}
240290

241291
GIVEN("adding two value_sets")
242292
{

unit/analyses/variable-sensitivity/variable_sensitivity_test_helpers.cpp

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@
99
#include "variable_sensitivity_test_helpers.h"
1010
#include <analyses/variable-sensitivity/abstract_environment.h>
1111
#include <ansi-c/ansi_c_language.h>
12-
#include <util/mathematical_types.h>
1312
#include <testing-utils/use_catch.h>
13+
#include <util/mathematical_types.h>
1414
#include <util/string_utils.h>
1515

1616
std::shared_ptr<value_set_abstract_objectt>
@@ -163,9 +163,6 @@ void EXPECT(
163163

164164
auto expected_interval = constant_interval_exprt(lower_value, upper_value);
165165
auto result_expr = result->to_interval();
166-
INFO(
167-
"Expect " + expr_to_str(result_expr) + " to equal " +
168-
expr_to_str(expected_interval));
169166
REQUIRE(result_expr == expected_interval);
170167
}
171168

0 commit comments

Comments
 (0)