From 54cf93763dbfd00146f8f2352d4f70f61af01831 Mon Sep 17 00:00:00 2001 From: Michele Locati Date: Fri, 16 Mar 2018 11:22:40 +0100 Subject: Add --prune-branches and --prune-tags options --- test/bootstrap | 5 ++++ test/tests/filter-directory-prune-branches.success | 27 ++++++++++++++++++++++ test/tests/filter-directory-prune-tags.success | 27 ++++++++++++++++++++++ 3 files changed, 59 insertions(+) create mode 100755 test/tests/filter-directory-prune-branches.success create mode 100755 test/tests/filter-directory-prune-tags.success (limited to 'test') diff --git a/test/bootstrap b/test/bootstrap index fe9c0ba..ea781c9 100755 --- a/test/bootstrap +++ b/test/bootstrap @@ -88,3 +88,8 @@ getTagList () { getTagList_multiline=$(git -C "${1}" show-ref --tags | sed -E 's:^.*?refs/tags/::' || true) printf '%s' "${getTagList_multiline}" | sort -b | tr '\n' ' ' | sed -E 's:^ | $::g' } + +getBranchList () { + getBranchList_multiline=$(git -C "${1}" show-ref --heads | sed -E 's:^.*?refs/heads/::' || true) + printf '%s' "${getBranchList_multiline}" | sort -b | tr '\n' ' ' | sed -E 's:^ | $::g' +} diff --git a/test/tests/filter-directory-prune-branches.success b/test/tests/filter-directory-prune-branches.success new file mode 100755 index 0000000..9d39fec --- /dev/null +++ b/test/tests/filter-directory-prune-branches.success @@ -0,0 +1,27 @@ +#!/bin/sh + +. "$(cd -- "$(dirname -- "${0}")" && pwd -P)/../bootstrap" + +initializeRepositories + +"${BIN_MAIN}" --workdir "${DIR_TEMP}" -- "${DIR_SOURCE}" '--prune-empty --subdirectory-filter subdir' "${DIR_DESTINATION}" + +echo 'Fetching initial branches' +actualBranches="$(getBranchList "${DIR_DESTINATION}")" +expectedBrances='master slave' +if test "${actualBranches}" != "${expectedBrances}" +then + printf 'Expected branches: %s\nResulting branches: %s\n' "${expectedBrances}" "${actualBranches}">&2 + exit 1 +fi + +"${BIN_MAIN}" --workdir "${DIR_TEMP}" --branch-blacklist 'slave' --prune-branches -- "${DIR_SOURCE}" '--prune-empty --subdirectory-filter subdir' "${DIR_DESTINATION}" + +echo 'Fetching final branches' +actualBranches="$(getBranchList "${DIR_DESTINATION}")" +expectedBrances='master' +if test "${actualBranches}" != "${expectedBrances}" +then + printf 'Expected branches: %s\nResulting branches: %s\n' "${expectedBrances}" "${actualBranches}">&2 + exit 1 +fi diff --git a/test/tests/filter-directory-prune-tags.success b/test/tests/filter-directory-prune-tags.success new file mode 100755 index 0000000..15c6d71 --- /dev/null +++ b/test/tests/filter-directory-prune-tags.success @@ -0,0 +1,27 @@ +#!/bin/sh + +. "$(cd -- "$(dirname -- "${0}")" && pwd -P)/../bootstrap" + +initializeRepositories + +"${BIN_MAIN}" --workdir "${DIR_TEMP}" --branch-whitelist 'master' -- "${DIR_SOURCE}" '--prune-empty --subdirectory-filter subdir' "${DIR_DESTINATION}" + +echo 'Fetching initial tags' +actualTags="$(getTagList "${DIR_DESTINATION}")" +expectedTags='tag-02' +if test "${actualTags}" != "${expectedTags}" +then + printf 'Expected tags: %s\nResulting tags: %s\n' "${expectedTags}" "${actualTags}">&2 + exit 1 +fi + +"${BIN_MAIN}" --workdir "${DIR_TEMP}" --branch-whitelist 'master' --prune-tags --tag-blacklist 'rx:tag-.*' -- "${DIR_SOURCE}" '--prune-empty --subdirectory-filter subdir' "${DIR_DESTINATION}" + +echo 'Fetching final tags' +actualTags="$(getTagList "${DIR_DESTINATION}")" +expectedTags='' +if test "${actualTags}" != "${expectedTags}" +then + printf 'Expected tags: %s\nResulting tags: %s\n' "${expectedTags}" "${actualTags}">&2 + exit 1 +fi -- cgit v1.2.3