Skip to content

Commit 5a52eab

Browse files
committed
Sort release pull requests by merged time asc
1 parent cf3e0f6 commit 5a52eab

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

lib/github-client.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,10 @@ GithubClient.prototype.collectReleasePRs = function (releasePR) {
161161
return result
162162
}, [])
163163

164+
prsToRelease.sort(function (a, b) {
165+
return new Date(a.merged_at) - new Date(b.merged_at)
166+
})
167+
164168
return prsToRelease
165169
})
166170
})

test/github-client.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -143,16 +143,19 @@ describe('GithubClient', function () {
143143
.get('/repos/uiureo/awesome-app/pulls?state=closed&base=master&per_page=100&sort=updated&direction=desc')
144144
.reply(200, [
145145
{ number: 10, head: { sha: '0' }, merged_at: null },
146-
{ number: 1, head: { sha: '1' }, merged_at: 'a' },
147-
{ number: 2, head: { sha: '2' }, merged_at: 'b' },
148-
{ number: 100, head: { sha: '100' }, merged_at: 'c' }
146+
{ number: 2, head: { sha: '2' }, merged_at: '2015-12-26T00:00:00Z' },
147+
{ number: 1, head: { sha: '1' }, merged_at: '2015-12-25T00:00:00Z' },
148+
{ number: 100, head: { sha: '100' }, merged_at: '2015-12-27T00:00:00Z' }
149149
])
150150

151151
it('returns prs that is going to be released', function (done) {
152152
this.client.collectReleasePRs({ number: 42 })
153153
.then(function (prs) {
154154
assert(prs.length === 2)
155155

156+
var numbers = prs.map(function (pr) { return pr.number })
157+
assert.deepEqual(numbers, [1, 2], 'sorted by merged_at asc')
158+
156159
done()
157160
}).catch(done)
158161
})

0 commit comments

Comments
 (0)