@@ -22,8 +22,18 @@ Given('no rulesets are defined for the repository', async function () {
22
22
} )
23
23
24
24
Given ( 'a ruleset exists for the repository' , async function ( ) {
25
- const rulesetSubset = { name : rulesetName }
26
- const existingRulesets = [ { id : rulesetId , ...rulesetSubset } ]
25
+ const existingRulesetSubset = {
26
+ id : rulesetId ,
27
+ name : rulesetName ,
28
+ _links : any . simpleObject ( ) ,
29
+ created_at : any . string ( ) ,
30
+ updated_at : any . string ( ) ,
31
+ source_type : any . word ( ) ,
32
+ source : any . string ( ) ,
33
+ node_id : any . string ( )
34
+ }
35
+ const existingRuleset = { ...existingRulesetSubset }
36
+ const existingRulesets = [ existingRuleset ]
27
37
28
38
this . server . use (
29
39
http . get ( `https://api.github.com/repos/${ repository . owner . name } /${ repository . name } /rulesets` , ( { request } ) => {
@@ -38,7 +48,12 @@ Given('a ruleset exists for the repository', async function () {
38
48
} ) ,
39
49
http . get (
40
50
`https://api.github.com/repos/${ repository . owner . name } /${ repository . name } /rulesets/${ rulesetId } ` ,
41
- ( { request } ) => HttpResponse . json ( { id : rulesetId , ...rulesetSubset , rules : existingRules } )
51
+ ( { request } ) =>
52
+ HttpResponse . json ( {
53
+ ...existingRuleset ,
54
+ rules : existingRules ,
55
+ current_user_can_bypass : any . boolean ( )
56
+ } )
42
57
)
43
58
)
44
59
} )
@@ -105,6 +120,19 @@ Given('the ruleset is removed from the config', async function () {
105
120
)
106
121
} )
107
122
123
+ Given ( 'no ruleset updates are made to the config' , async function ( ) {
124
+ const existingRuleset = { name : rulesetName , rules : existingRules }
125
+
126
+ this . server . use (
127
+ http . get (
128
+ `https://api.github.com/repos/${ repository . owner . name } /${ repository . name } /contents/${ encodeURIComponent (
129
+ settings . FILE_NAME
130
+ ) } `,
131
+ ( { request } ) => HttpResponse . arrayBuffer ( Buffer . from ( dump ( { rulesets : [ existingRuleset ] } ) ) )
132
+ )
133
+ )
134
+ } )
135
+
108
136
Then ( 'the ruleset is enabled for the repository' , async function ( ) {
109
137
assert . deepEqual ( this . createdRuleset , this . ruleset )
110
138
} )
@@ -116,3 +144,7 @@ Then('the ruleset is updated', async function () {
116
144
Then ( 'the ruleset is deleted' , async function ( ) {
117
145
assert . equal ( this . removedRuleset , rulesetId )
118
146
} )
147
+
148
+ Then ( 'no ruleset updates are triggered' , async function ( ) {
149
+ return undefined
150
+ } )
0 commit comments