This repository was archived by the owner on Jul 14, 2022. It is now read-only.
Decoupling functionality to make unit testing easier in the future#13
Merged
Decoupling functionality to make unit testing easier in the future#13
Conversation
passing output up to the caller to print to the screen. this will allow easier testing in the future.
this will allow things like timeouts to be configured by the user later
Contributor
|
The different files for the post to delete operations were intentional. At first I thought that this might improve the "contributability" factor, but later I understood that, this was a huge blunder but I was lazy enought to not refactor 🤪🤪🤪. I was thinking about the tests and looked more into it. As still a noob in Go, I found tests intimidating. Will check more into this and I was thinking of updating the readme. Since today is Sunday here, and my hands are tied up a bit. So will update everything as soon as I'm free😀😀😀. I'm sorry for making this one slow 😢😢 |
athul
added a commit
that referenced
this pull request
Feb 16, 2020
…#13) * decoupled basic http methods from cli io passing output up to the caller to print to the screen. this will allow easier testing in the future. * uber-go/multierr dependency * decoupled send.go funcs from cli io, cleaned up request() * single location for http.Client this will allow things like timeouts to be configured by the user later * formatting mostly * combined basic post|put|patch|delete into a single function * basic test for getHTTPClient * 📝Updated Readme and ran go mod tidy Co-authored-by: Athul Cyriac Ajay <[email protected]>
This file contains hidden or 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
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Separating CLI IO from the functions that perform requests. This will make it easier to write/run unit tests later, since the output of the HTTP request functions can be examined directly and the only function printing to the screen is
main(). I also noticedBasic put|patch|delete|postwere the same function but with a single string parameter changed, so I just combined them into a single function:basic.go::BasicRequestWithBody(cli *cli.Context, method string)wheremethodis one ofPUT|PATCH|DELETE|POSTI'm fairly confident that nothing broke, but please test it on your own. Next, unit tests will be much easier to write.