summaryrefslogtreecommitdiff
path: root/test/regress/regress0
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2016-07-08 06:49:24 -0500
committerajreynol <andrew.j.reynolds@gmail.com>2016-07-08 06:49:24 -0500
commite9381ce8e8b84039e148ede7af089ba27b9b32fe (patch)
treebf254bcd17d5357f337063fdfd3be10c854d6835 /test/regress/regress0
parent618a3763373c4e1b0c02664082b6d3dce4070098 (diff)
Minor fix to last commit.
Diffstat (limited to 'test/regress/regress0')
-rw-r--r--test/regress/regress0/strings/Makefile.am5
-rw-r--r--test/regress/regress0/strings/cmu-dis-0707-3.smt224
-rw-r--r--test/regress/regress0/strings/norn-dis-0707-3.smt226
3 files changed, 54 insertions, 1 deletions
diff --git a/test/regress/regress0/strings/Makefile.am b/test/regress/regress0/strings/Makefile.am
index bb9b61d8e..adfc29f01 100644
--- a/test/regress/regress0/strings/Makefile.am
+++ b/test/regress/regress0/strings/Makefile.am
@@ -80,7 +80,8 @@ TESTS = \
cmu-2db2-extf-reg.smt2 \
norn-nel-bug-052116.smt2 \
cmu-disagree-0707-dd.smt2 \
- cmu-5042-0707-2.smt2
+ cmu-5042-0707-2.smt2 \
+ cmu-dis-0707-3.smt2
FAILING_TESTS =
@@ -89,6 +90,8 @@ EXTRA_DIST = $(TESTS)
# and make sure to distribute it
EXTRA_DIST +=
+#norn-dis-0707-3.smt2
+
# synonyms for "check"
.PHONY: regress regress0 test
regress regress0 test: check
diff --git a/test/regress/regress0/strings/cmu-dis-0707-3.smt2 b/test/regress/regress0/strings/cmu-dis-0707-3.smt2
new file mode 100644
index 000000000..209cbb3f9
--- /dev/null
+++ b/test/regress/regress0/strings/cmu-dis-0707-3.smt2
@@ -0,0 +1,24 @@
+(set-logic ALL_SUPPORTED)
+(set-info :status sat)
+(set-option :strings-exp true)
+(declare-fun value () String)
+(declare-fun name () String)
+(assert (not (not (not (= (ite (str.contains value "?") 1 0) 0)))))
+(assert (not (not (= (ite (str.contains value "#") 1 0) 0))))
+(assert (not (not (= (ite (= (str.substr value 0 (- 2 0)) "//") 1 0) 0))))
+(assert (not (not (= (ite (> (str.indexof value ":" 0) 0) 1 0) 0))))
+(assert (not (= (ite (not (= (str.len value) 0)) 1 0) 0)))
+(assert (not (not (= (ite (str.contains value "'") 1 0) 0))))
+(assert (not (not (= (ite (str.contains value "\"") 1 0) 0))))
+(assert (not (not (= (ite (str.contains value ">") 1 0) 0))))
+(assert (not (not (= (ite (str.contains value "<") 1 0) 0))))
+(assert (not (not (= (ite (str.contains value "&") 1 0) 0))))
+(assert (not (not (= (ite (str.contains name "'") 1 0) 0))))
+(assert (not (not (= (ite (str.contains name "\"") 1 0) 0))))
+(assert (not (not (= (ite (str.contains name ">") 1 0) 0))))
+(assert (not (not (= (ite (str.contains name "<") 1 0) 0))))
+(assert (not (not (= (ite (str.contains name "&") 1 0) 0))))
+(assert (not (= (ite (not (= value "")) 1 0) 0)))
+(assert (not (= (ite (str.contains value "javascript:alert(1);") 1 0) 0)))
+(assert (not (not (= (ite (str.contains name "javascript:alert(1);") 1 0) 0))))
+(check-sat)
diff --git a/test/regress/regress0/strings/norn-dis-0707-3.smt2 b/test/regress/regress0/strings/norn-dis-0707-3.smt2
new file mode 100644
index 000000000..bc0f877ad
--- /dev/null
+++ b/test/regress/regress0/strings/norn-dis-0707-3.smt2
@@ -0,0 +1,26 @@
+(set-logic QF_S)
+(set-info :status sat)
+(set-option :strings-exp true)
+
+(declare-fun var_0 () String)
+(declare-fun var_1 () String)
+(declare-fun var_2 () String)
+(declare-fun var_3 () String)
+(declare-fun var_4 () String)
+(declare-fun var_5 () String)
+(declare-fun var_6 () String)
+(declare-fun var_7 () String)
+(declare-fun var_8 () String)
+(declare-fun var_9 () String)
+(declare-fun var_10 () String)
+(declare-fun var_11 () String)
+(declare-fun var_12 () String)
+
+(assert (str.in.re (str.++ var_8 "z" var_9 ) (re.++ (re.* (re.union (str.to.re "a") (re.++ (str.to.re "b") (re.++ (re.* (re.union (str.to.re "b") (str.to.re "a"))) (str.to.re "z"))))) (re.++ (str.to.re "b") (re.* (re.union (str.to.re "b") (str.to.re "a")))))))
+(assert (str.in.re (str.++ var_8 "z" var_9 ) (re.++ (re.* (re.union (re.union (str.to.re "z") (str.to.re "a")) (re.++ (str.to.re "b") (re.++ (re.* (str.to.re "b")) (re.union (str.to.re "z") (str.to.re "a")))))) (re.++ (str.to.re "b") (re.* (str.to.re "b"))))))
+(assert (str.in.re (str.++ var_8 "z" var_9 ) (re.++ (re.* (re.union (str.to.re "a") (re.++ (str.to.re "b") (re.++ (re.* (re.union (str.to.re "z") (str.to.re "a"))) (str.to.re "b"))))) (re.++ (str.to.re "b") (re.* (re.union (str.to.re "z") (str.to.re "a")))))))
+(assert (str.in.re (str.++ var_8 "z" var_9 ) (re.* (re.++ (re.union (str.to.re "b") (str.to.re "a")) (re.++ (re.* (str.to.re "a")) (re.union (str.to.re "z") (str.to.re "b")))))))
+(assert (str.in.re var_9 (re.* (re.range "a" "u"))))
+(assert (str.in.re var_8 (re.* (re.range "a" "u"))))
+(assert (not (str.in.re (str.++ "b" var_8 "z" "b" var_9 ) (re.++ (re.* (re.++ (str.to.re "b") (str.to.re "z"))) (str.to.re "b")))))
+(check-sat)
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback