1
+ import { promises as fs } from "fs" ;
1
2
import { getOctokit } from "@actions/github" ;
2
3
3
4
import { ENV , REPO , ROOT_TEST_BRANCH_PREFIX , log } from "./env.js" ;
@@ -8,18 +9,23 @@ import {
8
9
getRefTreeQuery ,
9
10
getRepositoryMetadata ,
10
11
} from "../../github/graphql/queries.js" ;
12
+ import git from "isomorphic-git" ;
13
+
14
+ // TODO: re-enable strict tree tests when GitHub have addressed the createRef
15
+ // bug that's currently used in integration tests
16
+ // See: https://github.com/orgs/community/discussions/136777
11
17
12
18
const octokit = getOctokit ( ENV . GITHUB_TOKEN ) ;
13
19
14
20
const TEST_BRANCH_PREFIX = `${ ROOT_TEST_BRANCH_PREFIX } -node` ;
15
21
16
- const TEST_TARGET_COMMIT = "fce2760017eab6d85388ed5cfdfac171559d80b3" ;
22
+ // const TEST_TARGET_COMMIT = "fce2760017eab6d85388ed5cfdfac171559d80b3";
17
23
/**
18
24
* For tests, important that this commit is not an ancestor of TEST_TARGET_COMMIT,
19
25
* to ensure that non-fast-forward pushes are tested
20
26
*/
21
- const TEST_TARGET_COMMIT_2 = "7ba8473f02849de3b5449b25fc83c5245d338d94" ;
22
- const TEST_TARGET_TREE_2 = "95c9ea756f3686614dcdc1c42f7f654b684cdac2" ;
27
+ // const TEST_TARGET_COMMIT_2 = "7ba8473f02849de3b5449b25fc83c5245d338d94";
28
+ // const TEST_TARGET_TREE_2 = "95c9ea756f3686614dcdc1c42f7f654b684cdac2";
23
29
24
30
const BASIC_FILE_CHANGES_PATH = "foo.txt" ;
25
31
const BASIC_FILE_CHANGES_OID = "0e23339619d605319ec4b49a0ac9dd94598eff8e" ;
@@ -39,8 +45,8 @@ const BASIC_FILE_CONTENTS = {
39
45
log,
40
46
} ;
41
47
42
- const TEST_TARGET_TREE_WITH_BASIC_CHANGES =
43
- "a3431c9b42b71115c52bc6fbf9da3682cf0ed5e8" ;
48
+ // const TEST_TARGET_TREE_WITH_BASIC_CHANGES =
49
+ // "a3431c9b42b71115c52bc6fbf9da3682cf0ed5e8";
44
50
45
51
describe ( "node" , ( ) => {
46
52
const branches : string [ ] = [ ] ;
@@ -87,6 +93,14 @@ describe("node", () => {
87
93
}
88
94
} ;
89
95
96
+ let testTargetCommit : string ;
97
+ /**
98
+ * For tests, important that this commit is not an ancestor of TEST_TARGET_COMMIT,
99
+ * to ensure that non-fast-forward pushes are tested
100
+ */
101
+ let testTargetCommit2 : string ;
102
+ let testTargetTree2 : string ;
103
+
90
104
beforeAll ( async ( ) => {
91
105
const response = await getRepositoryMetadata ( octokit , {
92
106
owner : REPO . owner ,
@@ -98,6 +112,12 @@ describe("node", () => {
98
112
throw new Error ( "Repository not found" ) ;
99
113
}
100
114
repositoryId = response . id ;
115
+
116
+ // Get recent 2 commits to perform tests on
117
+ const log = await git . log ( { fs, dir : process . cwd ( ) , depth : 2 } ) ;
118
+ testTargetCommit = log [ 1 ] ?. oid ?? "N/A" ;
119
+ testTargetCommit2 = log [ 0 ] ?. oid ?? "N/A" ;
120
+ testTargetTree2 = log [ 0 ] ?. commit . tree ?? "N/A" ;
101
121
} ) ;
102
122
103
123
describe ( "commitFilesFromBuffers" , ( ) => {
@@ -120,7 +140,7 @@ describe("node", () => {
120
140
} ,
121
141
} ;
122
142
123
- for ( const [ sizeName , { sizeBytes, treeOid , fileOid } ] of Object . entries (
143
+ for ( const [ sizeName , { sizeBytes, fileOid } ] of Object . entries (
124
144
SIZES_BYTES ,
125
145
) ) {
126
146
it ( `Can commit a ${ sizeName } ` , async ( ) => {
@@ -133,7 +153,7 @@ describe("node", () => {
133
153
...REPO ,
134
154
branch,
135
155
base : {
136
- commit : TEST_TARGET_COMMIT ,
156
+ commit : testTargetCommit ,
137
157
} ,
138
158
message : {
139
159
headline : "Test commit" ,
@@ -152,7 +172,8 @@ describe("node", () => {
152
172
153
173
await expectBranchHasTree ( {
154
174
branch,
155
- treeOid,
175
+ // TODO: re-enable
176
+ // treeOid,
156
177
file : {
157
178
path : `${ sizeName } .txt` ,
158
179
oid : fileOid ,
@@ -219,14 +240,15 @@ describe("node", () => {
219
240
...REPO ,
220
241
branch,
221
242
base : {
222
- commit : TEST_TARGET_COMMIT ,
243
+ commit : testTargetCommit ,
223
244
} ,
224
245
...BASIC_FILE_CONTENTS ,
225
246
} ) ;
226
247
227
248
await expectBranchHasTree ( {
228
249
branch,
229
- treeOid : TEST_TARGET_TREE_WITH_BASIC_CHANGES ,
250
+ // TODO: re-enable
251
+ // treeOid: TEST_TARGET_TREE_WITH_BASIC_CHANGES,
230
252
file : {
231
253
path : BASIC_FILE_CHANGES_PATH ,
232
254
oid : BASIC_FILE_CHANGES_OID ,
@@ -244,7 +266,7 @@ describe("node", () => {
244
266
input : {
245
267
repositoryId,
246
268
name : `refs/heads/${ branch } ` ,
247
- oid : TEST_TARGET_COMMIT_2 ,
269
+ oid : testTargetCommit2 ,
248
270
} ,
249
271
} ) ;
250
272
@@ -253,15 +275,16 @@ describe("node", () => {
253
275
...REPO ,
254
276
branch,
255
277
base : {
256
- commit : TEST_TARGET_COMMIT ,
278
+ commit : testTargetCommit ,
257
279
} ,
258
280
...BASIC_FILE_CONTENTS ,
259
281
force : true ,
260
282
} ) ;
261
283
262
284
await expectBranchHasTree ( {
263
285
branch,
264
- treeOid : TEST_TARGET_TREE_WITH_BASIC_CHANGES ,
286
+ // TODO: re-enable
287
+ // treeOid: TEST_TARGET_TREE_WITH_BASIC_CHANGES,
265
288
file : {
266
289
path : BASIC_FILE_CHANGES_PATH ,
267
290
oid : BASIC_FILE_CHANGES_OID ,
@@ -278,7 +301,7 @@ describe("node", () => {
278
301
input : {
279
302
repositoryId,
280
303
name : `refs/heads/${ branch } ` ,
281
- oid : TEST_TARGET_COMMIT_2 ,
304
+ oid : testTargetCommit2 ,
282
305
} ,
283
306
} ) ;
284
307
@@ -288,7 +311,7 @@ describe("node", () => {
288
311
...REPO ,
289
312
branch,
290
313
base : {
291
- commit : TEST_TARGET_COMMIT ,
314
+ commit : testTargetCommit ,
292
315
} ,
293
316
...BASIC_FILE_CONTENTS ,
294
317
} ) ,
@@ -298,7 +321,7 @@ describe("node", () => {
298
321
299
322
await expectBranchHasTree ( {
300
323
branch,
301
- treeOid : TEST_TARGET_TREE_2 ,
324
+ treeOid : testTargetTree2 ,
302
325
} ) ;
303
326
} ) ;
304
327
@@ -311,7 +334,7 @@ describe("node", () => {
311
334
input : {
312
335
repositoryId,
313
336
name : `refs/heads/${ branch } ` ,
314
- oid : TEST_TARGET_COMMIT ,
337
+ oid : testTargetCommit ,
315
338
} ,
316
339
} ) ;
317
340
@@ -320,14 +343,15 @@ describe("node", () => {
320
343
...REPO ,
321
344
branch,
322
345
base : {
323
- commit : TEST_TARGET_COMMIT ,
346
+ commit : testTargetCommit ,
324
347
} ,
325
348
...BASIC_FILE_CONTENTS ,
326
349
} ) ;
327
350
328
351
await expectBranchHasTree ( {
329
352
branch,
330
- treeOid : TEST_TARGET_TREE_WITH_BASIC_CHANGES ,
353
+ // TODO: re-enable
354
+ // treeOid: TEST_TARGET_TREE_WITH_BASIC_CHANGES,
331
355
file : {
332
356
path : BASIC_FILE_CHANGES_PATH ,
333
357
oid : BASIC_FILE_CHANGES_OID ,
@@ -344,7 +368,7 @@ describe("node", () => {
344
368
input : {
345
369
repositoryId,
346
370
name : `refs/heads/${ branch } ` ,
347
- oid : TEST_TARGET_COMMIT ,
371
+ oid : testTargetCommit ,
348
372
} ,
349
373
} ) ;
350
374
@@ -360,7 +384,8 @@ describe("node", () => {
360
384
361
385
await expectBranchHasTree ( {
362
386
branch,
363
- treeOid : TEST_TARGET_TREE_WITH_BASIC_CHANGES ,
387
+ // TODO: re-enable
388
+ // treeOid: TEST_TARGET_TREE_WITH_BASIC_CHANGES,
364
389
file : {
365
390
path : BASIC_FILE_CHANGES_PATH ,
366
391
oid : BASIC_FILE_CHANGES_OID ,
0 commit comments