summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorTim King <tim.king@imag.fr>2015-01-19 18:57:29 +0100
committerTim King <tim.king@imag.fr>2015-01-19 19:05:04 +0100
commit66daf10d1bf4cb2f1846f599fe11e27312ac2069 (patch)
tree575c7abb8c2db919fbd437d11dfe48f82d2c363b /test
parentdc38452fb64b58c96c73b8bcab7d89fc86b0ecdd (diff)
Adding tests for get-value output for arithmetic.
Fixing bug where (- 1).0 was printed by get-value. Thanks to Christoph Sticksel for the bug report.
Diffstat (limited to 'test')
-rw-r--r--test/regress/regress0/Makefile.am3
-rw-r--r--test/regress/regress0/get-value-ints.smt219
-rw-r--r--test/regress/regress0/get-value-reals-ints.smt227
-rw-r--r--test/regress/regress0/get-value-reals.smt222
4 files changed, 71 insertions, 0 deletions
diff --git a/test/regress/regress0/Makefile.am b/test/regress/regress0/Makefile.am
index 128072f24..9003ef636 100644
--- a/test/regress/regress0/Makefile.am
+++ b/test/regress/regress0/Makefile.am
@@ -61,6 +61,9 @@ SMT2_TESTS = \
simplification_bug4.smt2 \
parallel-let.smt2 \
get-value-incremental.smt2 \
+ get-value-reals.smt2 \
+ get-value-ints.smt2 \
+ get-value-reals-ints.smt2 \
hung13sdk_output1.smt2 \
hung10_itesdk_output2.smt2 \
hung10_itesdk_output1.smt2 \
diff --git a/test/regress/regress0/get-value-ints.smt2 b/test/regress/regress0/get-value-ints.smt2
new file mode 100644
index 000000000..4497b7a80
--- /dev/null
+++ b/test/regress/regress0/get-value-ints.smt2
@@ -0,0 +1,19 @@
+; COMMAND-LINE:
+; EXPECT: sat
+; EXPECT: ((pos 1) (zero 0) (neg (- 6)))
+(set-info :smt-lib-version 2.0)
+(set-option :produce-models true)
+(set-logic QF_LIA)
+
+; This output changes if the smt2 printer output for Ints changes.
+
+(declare-fun pos () Int)
+(declare-fun zero () Int)
+(declare-fun neg () Int)
+
+(assert (= pos 1))
+(assert (= zero 0))
+(assert (= neg (- 6)))
+
+(check-sat)
+(get-value (pos zero neg))
diff --git a/test/regress/regress0/get-value-reals-ints.smt2 b/test/regress/regress0/get-value-reals-ints.smt2
new file mode 100644
index 000000000..53337c5d3
--- /dev/null
+++ b/test/regress/regress0/get-value-reals-ints.smt2
@@ -0,0 +1,27 @@
+; COMMAND-LINE:
+; EXPECT: sat
+; EXPECT: ((pos_int 5) (pos_real_int_value 3.0) (pos_rat (/ 1 3)) (zero 0.0) (neg_rat (- (/ 2 3))) (neg_real_int_value (- 2.0)) (neg_int (- 6)))
+(set-info :smt-lib-version 2.0)
+(set-option :produce-models true)
+(set-logic QF_LIRA)
+
+; This output changes if the smt2 printer output for Reals_Ints changes.
+
+(declare-fun pos_int () Int)
+(declare-fun pos_real_int_value () Real)
+(declare-fun pos_rat () Real)
+(declare-fun zero () Real)
+(declare-fun neg_rat () Real)
+(declare-fun neg_real_int_value () Real)
+(declare-fun neg_int () Int)
+
+(assert (= pos_int 5))
+(assert (= pos_real_int_value 3))
+(assert (= pos_rat (/ 1 3)))
+(assert (= zero 0))
+(assert (= neg_rat (/ (- 2) 3)))
+(assert (= neg_real_int_value (- 2)))
+(assert (= neg_int (- 6)))
+
+(check-sat)
+(get-value (pos_int pos_real_int_value pos_rat zero neg_rat neg_real_int_value neg_int)) \ No newline at end of file
diff --git a/test/regress/regress0/get-value-reals.smt2 b/test/regress/regress0/get-value-reals.smt2
new file mode 100644
index 000000000..487670158
--- /dev/null
+++ b/test/regress/regress0/get-value-reals.smt2
@@ -0,0 +1,22 @@
+; COMMAND-LINE:
+; EXPECT: sat
+; EXPECT: ((pos_int 3.0) (pos_rat (/ 1 3)) (zero 0.0) (neg_rat (- (/ 2 3))) (neg_int (- 2.0)))
+(set-info :smt-lib-version 2.0)
+(set-option :produce-models true)
+(set-logic QF_LRA)
+
+; This output changes if the smt2 printer output for Reals changes.
+(declare-fun pos_int () Real)
+(declare-fun pos_rat () Real)
+(declare-fun zero () Real)
+(declare-fun neg_rat () Real)
+(declare-fun neg_int () Real)
+
+(assert (= pos_int 3))
+(assert (= pos_rat (/ 1 3)))
+(assert (= zero 0))
+(assert (= neg_rat (/ (- 2) 3)))
+(assert (= neg_int (- 2)))
+
+(check-sat)
+(get-value (pos_int pos_rat zero neg_rat neg_int)) \ No newline at end of file
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback