Skip to content

Commit

Permalink
Fix sorting
Browse files Browse the repository at this point in the history
  • Loading branch information
roryabraham committed Nov 17, 2023
1 parent 16d56b1 commit 86b8231
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 31 deletions.
15 changes: 7 additions & 8 deletions .github/actions/javascript/createOrUpdateStagingDeploy/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -317,16 +317,15 @@ function getValidMergedPRs(commits) {
* @param {String} toTag
* @returns {Promise<Array<Number>>} – Pull request numbers
*/
function getPullRequestsMergedBetween(fromTag, toTag) {
async function getPullRequestsMergedBetween(fromTag, toTag) {
console.log(`Looking for commits made between ${fromTag} and ${toTag}...`);
return getCommitHistoryAsJSON(fromTag, toTag).then((commitList) => {
console.log(`Commits made between ${fromTag} and ${toTag}:`, commitList);
const commitList = await getCommitHistoryAsJSON(fromTag, toTag);
console.log(`Commits made between ${fromTag} and ${toTag}:`, commitList);

// Find which commit messages correspond to merged PR's
const pullRequestNumbers = getValidMergedPRs(commitList).sort();
console.log(`List of pull requests merged between ${fromTag} and ${toTag}`, pullRequestNumbers);
return _.map(pullRequestNumbers, (prNum) => Number.parseInt(prNum, 10));
});
// Find which commit messages correspond to merged PR's
const pullRequestNumbers = getValidMergedPRs(commitList).sort((a, b) => a - b);
console.log(`List of pull requests merged between ${fromTag} and ${toTag}`, pullRequestNumbers);
return pullRequestNumbers;
}

module.exports = {
Expand Down
15 changes: 7 additions & 8 deletions .github/actions/javascript/getDeployPullRequestList/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -260,16 +260,15 @@ function getValidMergedPRs(commits) {
* @param {String} toTag
* @returns {Promise<Array<Number>>} – Pull request numbers
*/
function getPullRequestsMergedBetween(fromTag, toTag) {
async function getPullRequestsMergedBetween(fromTag, toTag) {
console.log(`Looking for commits made between ${fromTag} and ${toTag}...`);
return getCommitHistoryAsJSON(fromTag, toTag).then((commitList) => {
console.log(`Commits made between ${fromTag} and ${toTag}:`, commitList);
const commitList = await getCommitHistoryAsJSON(fromTag, toTag);
console.log(`Commits made between ${fromTag} and ${toTag}:`, commitList);

// Find which commit messages correspond to merged PR's
const pullRequestNumbers = getValidMergedPRs(commitList).sort();
console.log(`List of pull requests merged between ${fromTag} and ${toTag}`, pullRequestNumbers);
return _.map(pullRequestNumbers, (prNum) => Number.parseInt(prNum, 10));
});
// Find which commit messages correspond to merged PR's
const pullRequestNumbers = getValidMergedPRs(commitList).sort((a, b) => a - b);
console.log(`List of pull requests merged between ${fromTag} and ${toTag}`, pullRequestNumbers);
return pullRequestNumbers;
}

module.exports = {
Expand Down
15 changes: 7 additions & 8 deletions .github/libs/GitUtils.js
Original file line number Diff line number Diff line change
Expand Up @@ -133,16 +133,15 @@ function getValidMergedPRs(commits) {
* @param {String} toTag
* @returns {Promise<Array<Number>>} – Pull request numbers
*/
function getPullRequestsMergedBetween(fromTag, toTag) {
async function getPullRequestsMergedBetween(fromTag, toTag) {
console.log(`Looking for commits made between ${fromTag} and ${toTag}...`);
return getCommitHistoryAsJSON(fromTag, toTag).then((commitList) => {
console.log(`Commits made between ${fromTag} and ${toTag}:`, commitList);
const commitList = await getCommitHistoryAsJSON(fromTag, toTag);
console.log(`Commits made between ${fromTag} and ${toTag}:`, commitList);

// Find which commit messages correspond to merged PR's
const pullRequestNumbers = getValidMergedPRs(commitList).sort();
console.log(`List of pull requests merged between ${fromTag} and ${toTag}`, pullRequestNumbers);
return _.map(pullRequestNumbers, (prNum) => Number.parseInt(prNum, 10));
});
// Find which commit messages correspond to merged PR's
const pullRequestNumbers = getValidMergedPRs(commitList).sort((a, b) => a - b);
console.log(`List of pull requests merged between ${fromTag} and ${toTag}`, pullRequestNumbers);
return pullRequestNumbers;
}

module.exports = {
Expand Down
14 changes: 7 additions & 7 deletions tests/unit/CIGitLogicTest.sh
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ cherry_pick_pr 3
tag_staging

# Verify output for checklist
assert_prs_merged_between '1.0.0-0' '1.0.0-2' "[ 3, 1 ]"
assert_prs_merged_between '1.0.0-0' '1.0.0-2' "[ 1, 3 ]"

# Verify output for deploy comment
assert_prs_merged_between '1.0.0-1' '1.0.0-2' "[ 3 ]"
Expand All @@ -252,7 +252,7 @@ title "Scenario #4A: Run the production deploy"
update_production_from_staging

# Verify output for release body and production deploy comments
assert_prs_merged_between '1.0.0-0' '1.0.0-2' "[ 3, 1 ]"
assert_prs_merged_between '1.0.0-0' '1.0.0-2' "[ 1, 3 ]"

success "Scenario #4A completed successfully!"

Expand Down Expand Up @@ -284,7 +284,7 @@ update_staging_from_main
tag_staging

# Verify output for checklist
assert_prs_merged_between '1.0.0-2' '1.0.1-1' "[ 5, 2 ]"
assert_prs_merged_between '1.0.0-2' '1.0.1-1' "[ 2, 5 ]"

# Verify output for deploy comment
assert_prs_merged_between '1.0.1-0' '1.0.1-1' "[ 5 ]"
Expand All @@ -307,7 +307,7 @@ update_staging_from_main
tag_staging

# Verify output for checklist
assert_prs_merged_between '1.0.0-2' '1.0.1-2' "[ 6, 5, 2 ]"
assert_prs_merged_between '1.0.0-2' '1.0.1-2' "[ 2, 5, 6 ]"

# Verify output for deploy comment
assert_prs_merged_between '1.0.1-1' '1.0.1-2' "[ 6 ]"
Expand All @@ -329,7 +329,7 @@ update_staging_from_main
tag_staging

# Verify output for checklist
assert_prs_merged_between '1.0.0-2' '1.0.1-3' "[ 7, 6, 5, 2 ]"
assert_prs_merged_between '1.0.0-2' '1.0.1-3' "[ 2, 5, 6, 7 ]"

# Verify output for deploy comment
assert_prs_merged_between '1.0.1-2' '1.0.1-3' "[ 7 ]"
Expand Down Expand Up @@ -389,10 +389,10 @@ update_staging_from_main
tag_staging

# Verify production release list
assert_prs_merged_between '1.0.0-2' '1.0.1-4' '[ 9, 7, 6, 5, 2 ]'
assert_prs_merged_between '1.0.0-2' '1.0.1-4' '[ 2, 5, 6, 7, 9 ]'

# Verify PR list for the new checklist
assert_prs_merged_between '1.0.1-4' '1.0.2-0' '[ 10, 8 ]'
assert_prs_merged_between '1.0.1-4' '1.0.2-0' '[ 8, 10 ]'

success "Scenario #6 completed successfully!"

Expand Down

0 comments on commit 86b8231

Please sign in to comment.