-
Notifications
You must be signed in to change notification settings - Fork 60
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
Make Provider Catalog Types Pluggable #389
Conversation
ddb2326
to
268b148
Compare
@@ -358,11 +358,11 @@ def create_factory_ems(name, region) | |||
end | |||
end | |||
|
|||
context 'catalog types' do | |||
describe "#catalog types" do |
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.
I'm totally nitpicking, and I realize that they're synonyms, but I generally use context
for inner blocks, and describe
for the outer block only.
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.
That's funny because in ManageIQ/manageiq#20039 (comment) I got the opposite advice :)
I tend to use describe as the top level for a method, and context if I'm testing different...well...contexts within that method
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.
Eh, maybe you're right: https://lmws.net/describe-vs-context-in-rspec
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.
@djberg96 I don't do describe vs context based on location (inner vs outer). I tend to recommend more like what @agrare said:
-
Use
describe
to describe the method under test, trying to use the actual method name if possible (e.g.".the_method"
for class methods,"#the_method"
for instance methods and appending" (private)"
if the method under test is private). -
Use
context
to describe a particular environment in which the tests runs. (e.g."when there are credentials defined"
), and then having abefore
that sets up specific credentials -
I tend to avoid creating extraneous
describe
s andcontext
s unless I have more than one test. That is, if a singleit
is good enough, I just do that...# I don't really like: describe ".the_method" do it "works" do described_class.the_method end end # I prefer: it ".the_method" do described_class.the_method end
268b148
to
2278740
Compare
Checked commit agrare@2278740 with ruby 2.5.7, rubocop 0.69.0, haml-lint 0.28.0, and yamllint |
Merging on red since cross-repo is green |
Make Provider Catalog Types Pluggable (cherry picked from commit 116fc4b)
Jansa backport details:
|
Cross Repo Tests: ManageIQ/manageiq-cross_repo-tests#106
Core PR: ManageIQ/manageiq#20039