summaryrefslogtreecommitdiff
path: root/curl/tests
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2020-01-11 23:51:49 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2020-01-22 18:04:37 +0300
commit23b1a0ab70f190dbbb33dabb18ec039c7d85d6b3 (patch)
treec86693607a9be05c53a44ce311d8f83638cbda03 /curl/tests
parented9a6438ec4b50ee897ac01296034de84167f2fe (diff)
Add implementation
Diffstat (limited to 'curl/tests')
-rw-r--r--curl/tests/.gitignore4
-rw-r--r--curl/tests/build/.gitignore3
-rw-r--r--curl/tests/build/bootstrap.build9
-rw-r--r--curl/tests/build/root.build16
-rw-r--r--curl/tests/buildfile5
-rw-r--r--curl/tests/empty.pem0
-rw-r--r--curl/tests/http.testscript10
-rw-r--r--curl/tests/https.testscript22
8 files changed, 69 insertions, 0 deletions
diff --git a/curl/tests/.gitignore b/curl/tests/.gitignore
new file mode 100644
index 0000000..ce6eed8
--- /dev/null
+++ b/curl/tests/.gitignore
@@ -0,0 +1,4 @@
+# Testscript output directories (can be symlinks).
+#
+test
+test-*
diff --git a/curl/tests/build/.gitignore b/curl/tests/build/.gitignore
new file mode 100644
index 0000000..4a730a3
--- /dev/null
+++ b/curl/tests/build/.gitignore
@@ -0,0 +1,3 @@
+config.build
+root/
+bootstrap/
diff --git a/curl/tests/build/bootstrap.build b/curl/tests/build/bootstrap.build
new file mode 100644
index 0000000..d8bbf2c
--- /dev/null
+++ b/curl/tests/build/bootstrap.build
@@ -0,0 +1,9 @@
+# file : tests/build/bootstrap.build
+# copyright : Copyright (c) 2018-2019 Code Synthesis Ltd
+# license : cURL License; see accompanying COPYING file
+
+project = # Unnamed tests subproject.
+
+using config
+using test
+using dist
diff --git a/curl/tests/build/root.build b/curl/tests/build/root.build
new file mode 100644
index 0000000..2ea18e0
--- /dev/null
+++ b/curl/tests/build/root.build
@@ -0,0 +1,16 @@
+# file : tests/build/root.build
+# copyright : Copyright (c) 2018-2019 Code Synthesis Ltd
+# license : cURL License; see accompanying COPYING file
+
+# We need to configure C module to obtain the target information (see below).
+#
+using c
+
+# Setup the curl program that we are testing.
+#
+import curl = curl%exe{curl}
+testscript{*}: test = $curl
+
+# Specify the test target for cross-testing.
+#
+test.target = $c.target
diff --git a/curl/tests/buildfile b/curl/tests/buildfile
new file mode 100644
index 0000000..3ad4988
--- /dev/null
+++ b/curl/tests/buildfile
@@ -0,0 +1,5 @@
+# file : tests/buildfile
+# copyright : Copyright (c) 2018-2019 Code Synthesis Ltd
+# license : cURL License; see accompanying COPYING file
+
+./: testscript{*} file{empty.pem} $curl
diff --git a/curl/tests/empty.pem b/curl/tests/empty.pem
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/curl/tests/empty.pem
diff --git a/curl/tests/http.testscript b/curl/tests/http.testscript
new file mode 100644
index 0000000..98e7267
--- /dev/null
+++ b/curl/tests/http.testscript
@@ -0,0 +1,10 @@
+# file : tests/http.testscript
+# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd
+# license : cURL License; see accompanying COPYING file
+
+: basic
+:
+$* -sS 'http://www.example.com' >>~%EOO%
+%<!doctype .*>%
+%.+
+EOO
diff --git a/curl/tests/https.testscript b/curl/tests/https.testscript
new file mode 100644
index 0000000..ae621ac
--- /dev/null
+++ b/curl/tests/https.testscript
@@ -0,0 +1,22 @@
+# file : tests/https.testscript
+# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd
+# license : cURL License; see accompanying COPYING file
+
+: default
+:
+{
+ test.options += -sS
+
+ $* 'http://www.example.com' | set s;
+ $* 'https://www.example.com' >"$s"
+}
+
+: override
+:
+: Specify the empty CA certificates bundle on the command line and make sure
+: curl exits with the 'peer certificate cannot be authenticated with known CA
+: certificates' exit code.
+:
+{
+ $* -s 'https://www.example.com' --capath "$src_base/empty.pem" == 60
+}