diff options
Diffstat (limited to 'tests/rep-fetch-git-commit.testscript')
-rw-r--r-- | tests/rep-fetch-git-commit.testscript | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/tests/rep-fetch-git-commit.testscript b/tests/rep-fetch-git-commit.testscript new file mode 100644 index 0000000..ff6c7a3 --- /dev/null +++ b/tests/rep-fetch-git-commit.testscript @@ -0,0 +1,93 @@ +# file : tests/rep-fetch-git-commit.testscript +# copyright : Copyright (c) 2014-2018 Code Synthesis Ltd +# license : MIT; see accompanying LICENSE file + ++git clone "$rep_git/state0/style-basic.git" 2>! &style-basic/*** + +: unadvertised +: +{ + +git -C ../style-basic log '--pretty=format:%H' --all --grep='README' | \ + set commit + + : no-refname + : + : Here we also test that a commit can be specified without leading '@'. + : + { + $clone_root_cfg && $rep_add "$rep/state0/style-basic.git#$commit"; + + if ($git_protocol == 'https-dumb') + warn = "$warn_repo_hist$reason_dumb$warn_dumb" + elif ($git_protocol != 'https-smart-unadv') + warn = "$warn_repo_hist$reason_unadv" + end; + + $* 2>>~"%EOE%" + %fetching git:.+style-basic#$commit% + %querying .+style-basic\.git%? + %fetching from .+style-basic\.git% + $warn + 1 package\(s\) in 1 repository\(s\) + EOE + } + + : refname + : + { + $clone_root_cfg && $rep_add "$rep/state0/style-basic.git#stable@$commit"; + + if ($git_protocol == 'https-dumb') + warn = "$warn_ref_hist$reason_dumb$warn_dumb" + elif ($git_protocol != 'https-smart-unadv') + warn = "$warn_ref_hist$reason_unadv" + end; + + $* 2>>~"%EOE%" + %fetching git:.+style-basic#stable@$commit% + %querying .+style-basic\.git%? + %fetching from .+style-basic\.git% + $warn + 1 package\(s\) in 1 repository\(s\) + EOE + } +} + +: advertised +: +{ + +git -C ../style-basic log '--pretty=format:%H' --all --grep='INSTALL' | \ + set commit + + +if ($git_protocol == 'https-dumb') + warn = "$warn_ref_hist$reason_dumb$warn_dumb" + end + + : no-refname + : + { + $clone_root_cfg && $rep_add "$rep/state0/style-basic.git#@$commit"; + + $* 2>>~"%EOE%" + %fetching git:.+style-basic#@$commit% + %querying .+style-basic\.git%? + %fetching from .+style-basic.\git% + $warn + 1 package\(s\) in 1 repository\(s\) + EOE + } + + : refname + : + { + $clone_root_cfg && $rep_add "$rep/state0/style-basic.git#stable@$commit"; + + $* 2>>~"%EOE%" + %fetching git:.+style-basic#stable@$commit% + %querying .+style-basic\.git%? + %fetching from .+style-basic\.git% + $warn + 1 package\(s\) in 1 repository\(s\) + EOE + } +} |