From c81274aa8dbc96b21b5e07da4daf1d7d667d4501 Mon Sep 17 00:00:00 2001 From: Alejandro R Mosteo Date: Fri, 12 Jun 2020 15:22:57 +0200 Subject: [PATCH] Test templates to help with creating new tests (#434) --- testsuite/drivers/helpers.py | 27 +++++-------------- testsuite/skels/global-index/test.py | 12 +++++++++ testsuite/skels/global-index/test.yaml | 3 +++ .../my_index/crates/crate/.emptydir | 0 .../local-index/my_index/index/cr/crate.toml | 8 ++++++ .../local-index/my_index/index/index.toml | 1 + testsuite/skels/local-index/test.py | 12 +++++++++ testsuite/skels/local-index/test.yaml | 4 +++ testsuite/skels/no-index/test.py | 12 +++++++++ testsuite/skels/no-index/test.yaml | 1 + 10 files changed, 59 insertions(+), 21 deletions(-) create mode 100644 testsuite/skels/global-index/test.py create mode 100644 testsuite/skels/global-index/test.yaml create mode 100644 testsuite/skels/local-index/my_index/crates/crate/.emptydir create mode 100644 testsuite/skels/local-index/my_index/index/cr/crate.toml create mode 100644 testsuite/skels/local-index/my_index/index/index.toml create mode 100644 testsuite/skels/local-index/test.py create mode 100644 testsuite/skels/local-index/test.yaml create mode 100644 testsuite/skels/no-index/test.py create mode 100644 testsuite/skels/no-index/test.yaml diff --git a/testsuite/drivers/helpers.py b/testsuite/drivers/helpers.py index 6e82cc79..1550bdd5 100644 --- a/testsuite/drivers/helpers.py +++ b/testsuite/drivers/helpers.py @@ -8,7 +8,7 @@ import os # Check a file contains a concrete line def check_line_in(filename, line): """ - Assert that the `filename` tetx file contains at least one line that + Assert that the `filename` text file contains at least one line that contains `line`. """ with open(filename, 'r') as f: @@ -20,29 +20,14 @@ def check_line_in(filename, line): repr(line), filename) +# Assert two values are equal or format the differences +def compare(found, wanted): + assert found == wanted, 'Got: {}\nWanted: {}'.format(found, wanted) + + # Return the entries (sorted) under a given folder, both folders and files def contents(dir): assert os.path.exists(dir), "Bad path for enumeration: {}".format(dir) return sorted([os.path.join(root, name).replace('\\', '/') for root, dirs, files in os.walk(dir) for name in dirs + files]) - - -# Assert two values are equal or format the differences -def compare(found, wanted): - assert found == wanted, 'Got: {}\nWanted: {}'.format(found, wanted) - - -# Check line appears in file -def check_line_in(filename, line): - """ - Assert that the `filename` tetx file contains at least one line that - contains `line`. - """ - with open(filename, 'r') as f: - for l in f: - if l.rstrip() == line: - break - else: - assert False, 'Could not find {} in {}'.format( - repr(line), filename) diff --git a/testsuite/skels/global-index/test.py b/testsuite/skels/global-index/test.py new file mode 100644 index 00000000..ee9bf695 --- /dev/null +++ b/testsuite/skels/global-index/test.py @@ -0,0 +1,12 @@ +""" +A test that uses an index in testsuite/fixtures +""" + +from drivers.alr import run_alr +# from drivers.asserts import assert_eq, assert_match + + +p = run_alr('clean') + + +print('SUCCESS') diff --git a/testsuite/skels/global-index/test.yaml b/testsuite/skels/global-index/test.yaml new file mode 100644 index 00000000..872fc127 --- /dev/null +++ b/testsuite/skels/global-index/test.yaml @@ -0,0 +1,3 @@ +driver: python-script +indexes: + basic_index: {} diff --git a/testsuite/skels/local-index/my_index/crates/crate/.emptydir b/testsuite/skels/local-index/my_index/crates/crate/.emptydir new file mode 100644 index 00000000..e69de29b diff --git a/testsuite/skels/local-index/my_index/index/cr/crate.toml b/testsuite/skels/local-index/my_index/index/cr/crate.toml new file mode 100644 index 00000000..8f1ca779 --- /dev/null +++ b/testsuite/skels/local-index/my_index/index/cr/crate.toml @@ -0,0 +1,8 @@ +[general] +description = "Sample crate" +licenses = [] +maintainers = ["any@bo.dy"] +maintainers-logins = ["someone"] + +['1.0'] +origin = "file://../../crates/crate" diff --git a/testsuite/skels/local-index/my_index/index/index.toml b/testsuite/skels/local-index/my_index/index/index.toml new file mode 100644 index 00000000..7c969026 --- /dev/null +++ b/testsuite/skels/local-index/my_index/index/index.toml @@ -0,0 +1 @@ +version = "0.2" diff --git a/testsuite/skels/local-index/test.py b/testsuite/skels/local-index/test.py new file mode 100644 index 00000000..dfec5c6e --- /dev/null +++ b/testsuite/skels/local-index/test.py @@ -0,0 +1,12 @@ +""" +A test that uses its own local index +""" + +from drivers.alr import run_alr +# from drivers.asserts import assert_eq, assert_match + + +run_alr() + + +print('SUCCESS') diff --git a/testsuite/skels/local-index/test.yaml b/testsuite/skels/local-index/test.yaml new file mode 100644 index 00000000..0a859639 --- /dev/null +++ b/testsuite/skels/local-index/test.yaml @@ -0,0 +1,4 @@ +driver: python-script +indexes: + my_index: + in_fixtures: false diff --git a/testsuite/skels/no-index/test.py b/testsuite/skels/no-index/test.py new file mode 100644 index 00000000..312325d9 --- /dev/null +++ b/testsuite/skels/no-index/test.py @@ -0,0 +1,12 @@ +""" +A test that requires no indexes +""" + +from drivers.alr import run_alr +# from drivers.asserts import assert_eq, assert_match + + +run_alr() + + +print('SUCCESS') diff --git a/testsuite/skels/no-index/test.yaml b/testsuite/skels/no-index/test.yaml new file mode 100644 index 00000000..32c747b3 --- /dev/null +++ b/testsuite/skels/no-index/test.yaml @@ -0,0 +1 @@ +driver: python-script -- 2.39.5