aboutsummaryrefslogtreecommitdiff
path: root/tests/rep-fetch-git-branch.test
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2018-04-13 23:38:12 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2018-04-19 19:39:55 +0300
commitf2f08e0758243a820fe47128ffabaa474c0e86e7 (patch)
tree45563c74dbbf7a0f546443b469a23541c9ac9b00 /tests/rep-fetch-git-branch.test
parente958b63712f9a0ff4b523765d2fe12b58aa97fe0 (diff)
Implement git repository handling transition (phase 0)
Diffstat (limited to 'tests/rep-fetch-git-branch.test')
-rw-r--r--tests/rep-fetch-git-branch.test156
1 files changed, 0 insertions, 156 deletions
diff --git a/tests/rep-fetch-git-branch.test b/tests/rep-fetch-git-branch.test
deleted file mode 100644
index 6e23e20..0000000
--- a/tests/rep-fetch-git-branch.test
+++ /dev/null
@@ -1,156 +0,0 @@
-# file : tests/rep-fetch-git-branch.test
-# copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
-# license : MIT; see accompanying LICENSE file
-
-reason_dumb = ' (dumb HTTP)'
-reason_unadv = ' (unadvertised commit)'
-
-warn_dumb='
-warning: fetching over dumb HTTP, no progress will be shown'
-
-: clone
-:
-{
- $clone_root_cfg && $rep_add "$rep/state0/libfoo.git#$branch";
-
- # Note that the commit for doc/style/basic submodule is not at the branch tip
- # and so is not advertised.
- #
- if ($git_protocol == 'local' || \
- $git_protocol == 'https-smart' || \
- $git_protocol == 'git')
- warn1 = '%.{0}'
- warn2 = '%.{0}'
- warn3 = "warning: fetching whole repository history for submodule 'doc/style/basic'$reason_unadv"
- fetch = '%.{0}'
- warn4 = '%.{0}'
- elif ($git_protocol == 'https-dumb')
- warn1 = "warning: fetching whole branch history$reason_dumb$warn_dumb"
- warn2 = "warning: fetching whole repository history for submodule 'doc/style'$reason_dumb$warn_dumb"
- warn3 = "warning: fetching whole repository history for submodule 'doc/style/basic'$reason_dumb$warn_dumb"
- fetch = '%.{0}'
- warn4 = "warning: fetching whole repository history for submodule 'libbar'$reason_dumb$warn_dumb"
- elif ($git_protocol == 'https-smart-unadv')
- warn1 = '%.{0}'
- warn2 = '%.{0}'
- warn3 = '%.{0}'
- fetch = "%fetching in '.+style/basic'.+%"
- warn4 = '%.{0}'
- end;
-
- $* 2>>~"%EOE%"
- %fetching git:.+libfoo#$branch%
- $warn1
- %Cloning into '.+$branch'.+%
- %Submodule 'doc/style' .+ registered for path 'doc/style'%
- %Submodule 'libbar' .+ registered for path 'libbar'%
- $warn2
- %Cloning into '.+doc/style'.+%
- %submodule path 'doc/style': checked out .+%
- %Submodule 'basic' .+ registered for path 'doc/style/basic'%
- $warn3
- %Cloning into '.+doc/style/basic'.+%
- $fetch
- %submodule path 'doc/style/basic': checked out .+%
- $warn4
- %Cloning into '.+libbar'.+%
- %submodule path 'libbar': checked out .+%
- 1 package\(s\) in 1 repository\(s\)
- EOE
-}
-
-: fetch
-:
-{
- : same
- :
- {
- $clone_root_cfg && $rep_add "$rep/state0/libfoo.git#$branch";
-
- # Convert specific warnings to infos as we expect them to appear. This, in
- # particular, prevents bbot workers to set task result status to warning.
- #
- $* 2>&1 | sed -e 's/warning: (fetching (over|whole) .*)/info: \1/' >&2 2>!;
-
- if ($git_protocol == 'https-dumb')
- warn = "warning: fetching whole branch history$reason_dumb$warn_dumb"
- else
- warn = '%.{0}'
- end;
-
- $* 2>>~"%EOE%"
- %fetching git:.+libfoo#$branch%
- $warn
- %fetching in '.+$branch'.+%
- 1 package\(s\) in 1 repository\(s\)
- EOE
- }
-
- : changed
- :
- {
- g = git -C
- u = "$rep_git/state1"
-
- $clone_root_cfg && $rep_add "$rep/state0/libfoo.git#$branch";
-
- # Extract the repository path from the output line like this:
- #
- # Cloning into 'cfg\.bpkg\tmp\f9be881264703b5d\master'...
- #
- $* 2>&1 | sed -n -e "s/Cloning into '\(.+$branch\)'\.{3}/\$1/p" | \
- sed -n -e 's%(.+[\\/])tmp([\\/].+)%$1repos$2%p' | \
- set r;
-
- $g "$r" config remote.origin.url "$u/libfoo.git";
-
- $g "$r" config submodule.libbar.url "$u/libbar.git";
- $g "$r" config submodule.doc/style.url "$u/style.git";
-
- $g "$r/libbar" config remote.origin.url "$u/libbar.git";
-
- $g "$r/doc/style" config remote.origin.url "$u/style.git";
- $g "$r/doc/style" config submodule.basic.url "$u/style-basic.git";
-
- $g "$r/doc/style/basic" config remote.origin.url "$u/style-basic.git";
-
- # Preconditions.
- #
- test -f $r/tests/TODO;
- test -f $r/libbar/libbar/manifest;
- test -f $r/doc/style/README != 0;
- test -d $r/libbaz != 0;
-
- if ($git_protocol == 'https-dumb')
- warn1 = "warning: fetching whole branch history$reason_dumb$warn_dumb"
- warn2 = "warning: fetching whole repository history for submodule 'doc/style'$reason_dumb$warn_dumb"
- warn3 = "warning: fetching whole repository history for submodule 'libbaz'$reason_dumb$warn_dumb"
- else
- warn1 = '%.{0}'
- warn2 = '%.{0}'
- warn3 = '%.{0}'
- end;
-
- $* 2>>~"%EOE%" 1>&2;
- %fetching git:.+libfoo#$branch%
- $warn1
- %fetching in '.+$branch'.+%
- %warning: unable to rmdir '?libbar'?:.+%
- %Submodule 'libbaz' .+ registered for path 'libbaz'%
- $warn2
- %fetching in '.+doc/style'.+%
- %submodule path 'doc/style': checked out .+%
- $warn3
- %Cloning into '.+libbaz'.+%
- %submodule path 'libbaz': checked out .+%
- 1 package\(s\) in 1 repository\(s\)
- EOE
-
- # Postconditions.
- #
- test -d $r/tests != 0;
- test -d $r/libbar != 0;
- test -f $r/doc/style/README;
- test -f $r/libbaz/manifest
- }
-}