From 4f986ec6431b6f3f8c951c70a02300d552cd8e02 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Tue, 7 Jan 2020 22:10:14 +0300 Subject: Add implementation --- libz/tests/.gitignore | 3 +++ libz/tests/build/.gitignore | 3 +++ libz/tests/build/bootstrap.build | 9 +++++++++ libz/tests/build/root.build | 22 ++++++++++++++++++++++ libz/tests/buildfile | 5 +++++ libz/tests/minigzip/buildfile | 14 ++++++++++++++ libz/tests/minigzip/minigzip.c | 1 + libz/tests/minigzip/testscript | 39 +++++++++++++++++++++++++++++++++++++++ 8 files changed, 96 insertions(+) create mode 100644 libz/tests/.gitignore create mode 100644 libz/tests/build/.gitignore create mode 100644 libz/tests/build/bootstrap.build create mode 100644 libz/tests/build/root.build create mode 100644 libz/tests/buildfile create mode 100644 libz/tests/minigzip/buildfile create mode 120000 libz/tests/minigzip/minigzip.c create mode 100644 libz/tests/minigzip/testscript (limited to 'libz/tests') diff --git a/libz/tests/.gitignore b/libz/tests/.gitignore new file mode 100644 index 0000000..2e508a9 --- /dev/null +++ b/libz/tests/.gitignore @@ -0,0 +1,3 @@ +driver +test/ +test-*/ diff --git a/libz/tests/build/.gitignore b/libz/tests/build/.gitignore new file mode 100644 index 0000000..4a730a3 --- /dev/null +++ b/libz/tests/build/.gitignore @@ -0,0 +1,3 @@ +config.build +root/ +bootstrap/ diff --git a/libz/tests/build/bootstrap.build b/libz/tests/build/bootstrap.build new file mode 100644 index 0000000..5cdd64e --- /dev/null +++ b/libz/tests/build/bootstrap.build @@ -0,0 +1,9 @@ +# file : tests/build/bootstrap.build +# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd +# license : zlib License; see accompanying LICENSE file + +project = # Unnamed subproject. + +using config +using dist +using test diff --git a/libz/tests/build/root.build b/libz/tests/build/root.build new file mode 100644 index 0000000..3f268d9 --- /dev/null +++ b/libz/tests/build/root.build @@ -0,0 +1,22 @@ +# file : tests/build/root.build +# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd +# license : zlib License; see accompanying LICENSE file + +using c + +h{*}: extension = h +c{*}: extension = c + +if ($c.target.system == 'win32-msvc') + c.poptions += -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS + +if ($c.class == 'msvc') + c.coptions += /wd4251 /wd4275 /wd4800 + +# Every exe{} in this subproject is by default a test. +# +exe{*}: test = true + +# Specify the test target for cross-testing. +# +test.target = $c.target diff --git a/libz/tests/buildfile b/libz/tests/buildfile new file mode 100644 index 0000000..6192ac9 --- /dev/null +++ b/libz/tests/buildfile @@ -0,0 +1,5 @@ +# file : tests/buildfile +# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd +# license : zlib License; see accompanying LICENSE file + +./: {*/ -build/} diff --git a/libz/tests/minigzip/buildfile b/libz/tests/minigzip/buildfile new file mode 100644 index 0000000..4f9e780 --- /dev/null +++ b/libz/tests/minigzip/buildfile @@ -0,0 +1,14 @@ +# file : tests/minigzip/buildfile +# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd +# license : zlib License; see accompanying LICENSE file + +import libs = libz%lib{z} + +exe{driver}: {h c}{*} $libs testscript + +# Disable MSVC warnings that pop up with /W3 and Clang/MSVC warnings. +# +if ($c.class == 'msvc') + c.coptions += /wd4267 /wd4996 +elif ($c.id == 'clang' && $c.target.system == 'win32-msvc') + c.coptions += -Wno-deprecated-declarations diff --git a/libz/tests/minigzip/minigzip.c b/libz/tests/minigzip/minigzip.c new file mode 120000 index 0000000..a3b7d69 --- /dev/null +++ b/libz/tests/minigzip/minigzip.c @@ -0,0 +1 @@ +../../../upstream/test/minigzip.c \ No newline at end of file diff --git a/libz/tests/minigzip/testscript b/libz/tests/minigzip/testscript new file mode 100644 index 0000000..c633b56 --- /dev/null +++ b/libz/tests/minigzip/testscript @@ -0,0 +1,39 @@ +# file : tests/minigzip/testscript +# copyright : Copyright (c) 2016-2019 Code Synthesis Ltd +# license : zlib License; see accompanying LICENSE file + +s='abcdefghijklmnopqrstuvwxz0123456789' +s="$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s" +s="$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s$s" + +: max-compression +: +{ + cat <"$s" >=in &!in; + $* -9 in &in.gz; + $* -d -c in.gz >"$s" +} + +: filtered +: +{ + cat <"$s" >=in &!in; + $* -f in &in.gz; + $* -d -c in.gz >"$s" +} + +: huffman +: +{ + cat <"$s" >=in &!in; + $* -h in &in.gz; + $* -d -c in.gz >"$s" +} + +: rle +: +{ + cat <"$s" >=in &!in; + $* -r in &in.gz; + $* -d -c in.gz >"$s" +} -- cgit v1.1