@@ -70,60 +70,43 @@ def test_substitution_branch(repo, template, real_template, branch, suffix):
7070 ("{tag}.post{env:PIPELINE_ID}" , "234" , "234" ),
7171 ("{tag}.post{env:PIPELINE_ID}" , "0234" , "234" ),
7272 ("{tag}.post{env:PIPELINE_ID}" , None , "UNKNOWN" ),
73- ("{tag}.post{env:PIPELINE_ID}+abc{env:ANOTHER_ENV}" , "234" , "234+abc3.4.5" ),
74- ("{tag}.post{env:PIPELINE_ID}+abc{env:ANOTHER_ENV}" , None , "UNKNOWN+abc3.4.5" ),
75- ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV}" , "234" , "234+abcunknown" ),
76- ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV}" , None , "UNKNOWN+abcUNKNOWN" ),
7773 ("{tag}.post{env:PIPELINE_ID:123}" , "234" , "234" ),
7874 ("{tag}.post{env:PIPELINE_ID:123}" , None , "123" ),
79- ("{tag}.post{env:PIPELINE_ID:123}+abc{env:ANOTHER_ENV}" , "234" , "234+abc3.4.5" ),
80- ("{tag}.post{env:PIPELINE_ID:123}+abc{env:ANOTHER_ENV}" , None , "123+abc3.4.5" ),
81- ("{tag}.post{env:PIPELINE_ID:123}+abc{env:MISSING_ENV}" , "234" , "234+abcunknown" ),
82- ("{tag}.post{env:PIPELINE_ID:123}+abc{env:MISSING_ENV}" , None , "123+abcunknown" ),
83- ("{tag}.post{env:PIPELINE_ID:123}+abc{env:MISSING_ENV:5.6.7}" , "234" , "234+abc5.6.7" ),
84- ("{tag}.post{env:PIPELINE_ID:123}+abc{env:MISSING_ENV:5.6.7}" , None , "123+abc5.6.7" ),
85- ("{tag}.post{env:PIPELINE_ID:123}+abc{env:MISSING_ENV:B.C:D}" , "234" , "234+abcb.c.d" ), # allowed
86- ("{tag}.post{env:PIPELINE_ID:123}+abc{env:MISSING_ENV:B-C%D}" , None , "123+abcb.c.d" ),
8775 ("{tag}.post{env:PIPELINE_ID:IGNORE}" , "234" , "234" ),
8876 ("{tag}.post{env:PIPELINE_ID:IGNORE}" , None , "0" ),
89- ("{tag}.post{env:PIPELINE_ID:IGNORE}+abc{env:ANOTHER_ENV}" , "234" , "234+abc3.4.5" ),
90- ("{tag}.post{env:PIPELINE_ID:IGNORE}+abc{env:ANOTHER_ENV}" , None , "0+abc3.4.5" ),
91- ("{tag}.post{env:PIPELINE_ID:IGNORE}+abc{env:MISSING_ENV:5.6.7}" , "234" , "234+abc5.6.7" ),
92- ("{tag}.post{env:PIPELINE_ID:IGNORE}+abc{env:MISSING_ENV:5.6.7}" , None , "0+abc5.6.7" ),
93- ("{tag}.post{env:PIPELINE_ID:IGNORE}+abc{env:MISSING_ENV:IGNORE}" , "234" , "234+abc" ),
94- ("{tag}.post{env:PIPELINE_ID:IGNORE}+abc{env:MISSING_ENV:IGNORE}" , None , "0+abc" ),
77+ ("{tag}.post{env:PIPELINE_ID:}" , "234" , "234" ),
78+ ("{tag}.post{env:PIPELINE_ID:}" , None , "UNKNOWN" ),
9579 ("{tag}.post{env:PIPELINE_ID:{ccount}}" , "234" , "234" ),
9680 ("{tag}.post{env:PIPELINE_ID:{ccount}}" , None , "1" ),
9781 ("{tag}.post{env:PIPELINE_ID:{timestamp:%Y}}" , "234" , "234" ),
9882 ("{tag}.post{env:PIPELINE_ID:{timestamp:%Y}}" , None , datetime .now ().year ),
99- ("{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:ANOTHER_ENV}" , "234" , "234+abc3.4.5" ),
100- ("{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:ANOTHER_ENV}" , None , "1+abc3.4.5" ),
101- ("{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:MISSING_ENV:5.6.7}" , "234" , "234+abc5.6.7" ),
102- ("{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:MISSING_ENV:5.6.7}" , None , "1+abc5.6.7" ),
103- ("{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:MISSING_ENV:IGNORE}" , "234" , "234+abc" ),
104- ("{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:MISSING_ENV:IGNORE}" , None , "1+abc" ),
105- ("{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:MISSING_ENV:{ccount}}" , "234" , "234+abc1" ),
106- ("{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:MISSING_ENV:{ccount}}" , None , "1+abc1" ),
107- (
108- "{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:MISSING_ENV:{timestamp:%Y}}" ,
109- "234" ,
110- "234+abc" + str (datetime .now ().year ),
111- ),
112- (
113- "{tag}.post{env:PIPELINE_ID:{ccount}}+abc{env:MISSING_ENV:{timestamp:%Y}}" ,
114- None ,
115- "1+abc" + str (datetime .now ().year ),
116- ),
11783 ("{tag}.post{env:PIPELINE_ID:{env:ANOTHER_ENV}}" , "234" , "234" ),
11884 ("{tag}.post{env:PIPELINE_ID:{env:ANOTHER_ENV}}" , None , "3.4.5" ),
11985 ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV}}" , "234" , "234" ),
12086 ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV}}" , None , "UNKNOWN" ),
87+ ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:IGNORE}}" , "234" , "234" ),
88+ ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:IGNORE}}" , None , "0" ),
89+ ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:}}" , "234" , "234" ),
90+ ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:}}" , None , "UNKNOWN" ),
12191 ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:5.6.7}}" , "234" , "234" ),
12292 ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:5.6.7}}" , None , "5.6.7" ),
12393 ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:{ccount}}}" , "234" , "234" ),
12494 ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:{ccount}}}" , None , "1" ),
12595 ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:{timestamp:%Y}}}" , "234" , "234" ),
12696 ("{tag}.post{env:PIPELINE_ID:{env:MISSING_ENV:{timestamp:%Y}}}" , None , datetime .now ().year ),
97+ ("{tag}.post{env:PIPELINE_ID}+abc{env:ANOTHER_ENV}" , "234" , "234+abc3.4.5" ),
98+ ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV}" , "234" , "234+abcunknown" ),
99+ ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV:5.6.7}" , "234" , "234+abc5.6.7" ),
100+ ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV:B-C%D}" , "234" , "234+abcb.c.d" ),
101+ ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV:IGNORE}d" , "234" , "234+abcd" ),
102+ ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV:}d" , "234" , "234+abcunknownd" ),
103+ ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV: }d" , "234" , "234+abc.d" ),
104+ ("{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV:{ccount}}" , "234" , "234+abc1" ),
105+ (
106+ "{tag}.post{env:PIPELINE_ID}+abc{env:MISSING_ENV:{timestamp:%Y}}" ,
107+ "234" ,
108+ "234+abc" + str (datetime .now ().year ),
109+ ),
127110 # empty env variable name
128111 ("{tag}.post{env: }" , "234" , "UNKNOWN" ),
129112 ],
@@ -180,6 +163,7 @@ def test_substitution_timestamp(repo, template, fmt, callback):
180163 [
181164 "{tag}+a{env}" ,
182165 "{tag}+a{env:}" ,
166+ "{tag}.post{env:{}}" ,
183167 "{tag}+a{env:MISSING_ENV:{}" ,
184168 "{tag}+a{env:MISSING_ENV:{{}}" ,
185169 "{tag}+a{env:MISSING_ENV:}}" ,
0 commit comments