1#! /bin/sh
2# excl_ig_2.sh:  More tests for exclusions and ignores.
3
4# Import common functions & definitions.
5. ../../common/test-common
6. ../../common/real-thing
7
8g=foo
9s=s.$g
10x=x.$g
11z=z.$g
12p=p.$g
13files="$g $s $x $z $p"
14remove $files
15
16
17
18do_change() {
19    baselabel="$1"; shift
20
21    docommand ${baselabel}.0 "${vg_get} -e $s" 0 IGNORE IGNORE
22
23    for sedcmd
24    do
25      rename $g $g.old
26      remove $g.sed
27      echo "$sedcmd" > $g.sed
28      docommand "${baselabel}.sed" "sed -f $g.sed < $g.old > $g" 0 "" ""
29      remove $g.old $g.sed
30    done
31
32    docommand "${baselabel}.delta" "${delta} -yNoComment $s" 0 IGNORE IGNORE
33}
34
35
36remove $g
37echo "%I% inserted in 1.1" > $g
38docommand ei1 "${admin} -n -i$g s.foo" 0 IGNORE IGNORE
39remove $g
40
41docommand ei2 "${vg_get} -s -p $s" 0 "1.1 inserted in 1.1\n" IGNORE
42
43do_change ei3 '1 a\
44This line inserted in 1.2 and deleted in 1.3'
45docommand ei4 "${vg_get} -s -p $s" 0 '1.2 inserted in 1.1
46This line inserted in 1.2 and deleted in 1.3
47' IGNORE
48
49
50docommand "bi1" "${vg_get} -e -r1.1 $s" 0 "1.1\nnew delta 1.1.1.1\n1 lines\n" ""
51echo "inserted on branch 1.1.1.1" >> $g
52docommand "bi1" "${delta} -yNone $s" 0 "1.1.1.1
531 inserted
540 deleted
551 unchanged
56" ""
57
58
59do_change ei5 '2d' 'a\
60This line inserted in 1.3 and deleted in 1.4'
61docommand ei6 "${vg_get} -s -p $s" 0 '1.3 inserted in 1.1
62This line inserted in 1.3 and deleted in 1.4
63' IGNORE
64
65do_change ei7 '2d'
66docommand ei8 "${vg_get} -s -p $s" 0 '1.4 inserted in 1.1
67' IGNORE
68
69docommand ei9 "${vg_get} -g $s" 0 "1.4\n" "IGNORE"
70
71docommand ei10 "${vg_get} -e -i1.1.1.1 -x1.3 $s" 0 IGNORE IGNORE
72echo "inserted in 1.5" >> $g
73docommand ei11 "${delta} -yNone $s" 0 IGNORE IGNORE
74
75expect_fail=true
76docommand ei12 "${vg_get} -s -p $s" 0 '1.5 inserted in 1.1
77inserted on branch 1.1.1.1
78This line inserted in 1.2 and deleted in 1.3
79inserted in 1.5
80' IGNORE
81
82
83docommand ei13 "${vg_get} -e -x1.4 $s" 0 IGNORE IGNORE
84echo "inserted in 1.6" >> $g
85docommand ei14 "${delta} -yNone $s" 0 IGNORE IGNORE
86docommand ei15 "${vg_get} -s -p $s" 0 '1.6 inserted in 1.1
87inserted on branch 1.1.1.1
88This line inserted in 1.2 and deleted in 1.3
89inserted in 1.5
90inserted in 1.6
91' IGNORE
92
93docommand ei16 "${vg_get} -e -x1.1.1.1 $s" 0 IGNORE IGNORE
94docommand ei17 "${delta} -yNone $s" 0 IGNORE IGNORE
95docommand ei18 "${vg_get} -s -p $s" 0 '1.7 inserted in 1.1
96This line inserted in 1.2 and deleted in 1.3
97inserted in 1.5
98inserted in 1.6
99' IGNORE
100
101docommand ei19 "${vg_get} -e $s" 0 IGNORE IGNORE
102docommand ei20 "${delta} -yNone $s" 0 IGNORE IGNORE
103docommand ei21 "${vg_get} -s -p $s" 0 '1.8 inserted in 1.1
104This line inserted in 1.2 and deleted in 1.3
105inserted in 1.5
106inserted in 1.6
107' IGNORE
108
109docommand ei22 "${vg_get} -i1.1.1.1 -e $s" 0 IGNORE IGNORE
110docommand ei23 "${delta} -yNone $s" 0 IGNORE IGNORE
111docommand ei24 "${vg_get} -s -p $s" 0 '1.9 inserted in 1.1
112inserted on branch 1.1.1.1
113This line inserted in 1.2 and deleted in 1.3
114inserted in 1.5
115inserted in 1.6
116' IGNORE
117
118docommand ei25 "${vg_get}  -e $s" 0 IGNORE IGNORE
119docommand ei26 "${delta} -g1.5 -yNone $s" 0 IGNORE IGNORE
120docommand ei27 "${vg_get} -s -p $s" 0 '1.10 inserted in 1.1
121inserted on branch 1.1.1.1
122inserted in 1.6
123This line inserted in 1.3 and deleted in 1.4
124' IGNORE
125
126
127# cat $s
128remove $files
129success
130