summaryrefslogtreecommitdiff
path: root/tests/tests/inarchivecopy
blob: b6cbb129a93a5ae5603aa1718013a2ca756143f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#!/bin/bash
set -e
. tests/lib

t-setup-import examplegit
t-tstunt-parsechangelog

cd $p
git checkout -b dgit/stable dgit/dgit/stable
cd ..

t-inarchive-copy () {
	local vm=$1
	local from=${2:-sid}
	local to=${3:-stable}
	egrep "^${vm//./\\.}" aq/package.$from.$p >>aq/package.$to.$p
	t-archive-updated $to $p
}

copy-check-good () {
	git diff $vtag
	t-refs-same refs/remotes/dgit/dgit/$tosuite
	t-ref-head
	t-has-parent-or-is HEAD $vtag
}

copy-check () {
	local vm=$1
	local tosuite=${2:-stable}
	t-inarchive-copy $vm '' $tosuite

	vtag=$(v=$vm t-v-tag)

	cd $p
	 t-refs-same-start
	 t-dgit fetch $tosuite
	 git merge --ff-only dgit/dgit/$tosuite

	 copy-check-good
	 local fetched=$(t-sametree-parent HEAD)
	cd ..

	rm -rf example.cloned
	t-dgit clone $p $tosuite example.cloned

	cd example.cloned
	 t-refs-same-start
	 copy-check-good
	 local cloned=$(t-sametree-parent HEAD)	 
	cd ..

	t-refs-same-start
	t-ref-same-val fetched $fetched
	t-ref-same-val cloned $cloned
}

copy-check 2.0

copy-check 2.1

echo ok.