diff options
author | Adam Spiers <git@adamspiers.org> | 2023-09-22 12:24:22 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-09-22 12:24:22 +0100 |
commit | 669a4cbf3580d6300a32391a634c3d10b4e3432a (patch) | |
tree | 430fd5fc1a2cab3a3b9165b97089e6328f2d5236 | |
parent | caba2b50a9cbb4cc9c6d470e1835088ba49fac17 (diff) | |
parent | b268b72533c805be8da82c728d3c8e9f6249cf23 (diff) | |
download | git-deps-669a4cbf3580d6300a32391a634c3d10b4e3432a.tar.gz |
Merge pull request #124 from wetneb/self_test_suite
-rw-r--r-- | .github/workflows/CI.yml | 5 | ||||
-rw-r--r-- | tests/expected_outputs/deps_1ba7ad5 | 3 | ||||
-rw-r--r-- | tests/expected_outputs/deps_4f27a1e | 7 | ||||
-rw-r--r-- | tests/expected_outputs/deps_b196757 | 0 | ||||
-rwxr-xr-x | tests/self_test.sh | 23 |
5 files changed, 38 insertions, 0 deletions
diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 6dae66e..01e41e6 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -20,6 +20,8 @@ jobs: steps: - uses: actions/checkout@v3 + with: + fetch-depth: 0 # fetch the entire repository so that we can use it for our self tests - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v3 with: @@ -41,3 +43,6 @@ jobs: - name: Test with pytest run: | pytest + - name: Run the self-test suite + run: | + tests/self_test.sh diff --git a/tests/expected_outputs/deps_1ba7ad5 b/tests/expected_outputs/deps_1ba7ad5 new file mode 100644 index 0000000..ca9783e --- /dev/null +++ b/tests/expected_outputs/deps_1ba7ad5 @@ -0,0 +1,3 @@ +2bd9ea0f03a644cc3f5e7824d9ad0979ccdf94dc +2c9d23b0291157eb1096384ff76e0122747b9bdf +c15f0364bf0364b8123b370b78b6d6ac8bf6f779 diff --git a/tests/expected_outputs/deps_4f27a1e b/tests/expected_outputs/deps_4f27a1e new file mode 100644 index 0000000..6796a68 --- /dev/null +++ b/tests/expected_outputs/deps_4f27a1e @@ -0,0 +1,7 @@ +3374b8419a45d91d3c0631be11c8cf893b272217 +3a1dd42fd6114a634ba7cf037ce61e2aee76db73 +5ec5ccbdff508014c61ae9d18f3366a15c0f2689 +80c247fd21a1e7f476d1c8ba289498e216eff3dc +b144bfd5feb327ef7ce0c26bbfb6f4da573abfe5 +b1967573e81a8100a4cc778936de0ba0a8a8f5cb +f7bf058439fd7499aad7a10418a9f516e6949fbc diff --git a/tests/expected_outputs/deps_b196757 b/tests/expected_outputs/deps_b196757 new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/tests/expected_outputs/deps_b196757 diff --git a/tests/self_test.sh b/tests/self_test.sh new file mode 100755 index 0000000..c2ddfb1 --- /dev/null +++ b/tests/self_test.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +set -eo pipefail + +# Collection of tests consisting in running `git-deps` on its own repository. +# The expected outputs of various commands are stored in the `expected_outputs` subdirectory. + +# Because git-deps can only be run from the repository's root, this script should be run at +# the root of a clone of git-deps. The clone should not be shallow, so that all refs can be accessed. + +echo "Running test suite" + +echo "* Dependencies of 4f27a1e, a regular commit" +git-deps 4f27a1e^! | sort | diff tests/expected_outputs/deps_4f27a1e - + +echo "* Dependencies of 1ba7ad5, a merge commit" +git-deps 1ba7ad5^! | sort | diff tests/expected_outputs/deps_1ba7ad5 - + +# Currently failing: +#echo "* Dependencies of the root commit" +# git-deps b196757^! | sort # | diff tests/expected_outputs/deps_b196757 - + +echo "All tests passed!" |