-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix testAvoidRedundantFetchWithHonorRefSpec assertions #926
Merged
MarkEWaite
merged 4 commits into
jenkinsci:master
from
MarkEWaite:use-correct-branches-in-GitSCMTest
Jul 2, 2020
Merged
Fix testAvoidRedundantFetchWithHonorRefSpec assertions #926
MarkEWaite
merged 4 commits into
jenkinsci:master
from
MarkEWaite:use-correct-branches-in-GitSCMTest
Jul 2, 2020
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The previous implementation of the test would create a new CheckoutCommand with git.checkout() but then did nothing with it. It created the "foo" branch but did not checkout the "foo" branch. The commit that was described as "Commit in foo" was a commit to the master branch, not a commit to the foo branch.
The previous implementation of the test would create a new CheckoutCommand with git.checkout() but then did nothing with it. It created the "foo" branch but did not checkout the "foo" branch. The commit that was described as "Commit in foo" was a commit to the master branch, not a commit to the foo branch.
The previous implementation of the test would create a new CheckoutCommand with git.checkout() but then did nothing with it. It created the "foo" branch but did not checkout the "foo" branch. The commit that was described as "Commit in foo" was a commit to the master branch, not a commit to the foo branch.
The previous implementation of the test failed when the branch name 'master' is used because the Jenkins job directory name includes the branch name. This now asserts more precisely on the content of the FETCH_HEAD file. As part of the exploration to find the problem, additional assertions have been added to confirm that the correct SHA1 is mentioned in the FETCH_HEAD file. Use correct branch in GitSCMTest.testAvoidRedundantFetchWithHonorRefSpec The previous implementation of the test would create a new CheckoutCommand with git.checkout() but then did nothing with it. It created the "foo" branch but did not checkout the "foo" branch. The commit that was described as "Commit in foo" was a commit to the master branch, not a commit to the foo branch.
fcojfernandez
approved these changes
Jul 2, 2020
final List<String> buildLog = build.getLog(50); | ||
assertThat("master branch was fetched: " + buildLog, fetchHeadContents, not(containsString("branch 'master'"))); | ||
assertThat("foo branch was not fetched: " + buildLog, fetchHeadContents, containsString("branch 'foo'")); | ||
assertThat("master branch SHA1 '" + commitFile1SHA1a + "' fetched " + buildLog, fetchHeadContents, not(containsString(commitFile1SHA1a))); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a great assertion to exactly map the SHA1.
@MarkEWaite Thanks for fixing those tests, I was always a little confused with master and foo branch. Now I know. |
MarkEWaite
added
enhancement
Improvement or new feature
test
and removed
enhancement
Improvement or new feature
labels
Jul 4, 2020
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fix testAvoidRedundantFetchWithHonorRefSpec assertions
The previous implementation of the test failed when the branch name 'master' is used because the Jenkins job directory name includes the branch name. This now asserts more precisely on the content of the FETCH_HEAD
file.
Checklist
Types of changes
Further comments
As part of the exploration to find the problem, additional assertions have been added to confirm that the correct SHA1 is mentioned in the FETCH_HEAD file.
The previous test implementations would create a new CheckoutCommand with git.checkout() but then did nothing with it. It created the "foo" branch but did not checkout the "foo" branch. The commit that was described as "Commit in foo" was a commit to the master branch, not a commit to the foo branch.
The new code creates the branch and then uses the branch for new commits.