(#759) Add reference spec tests for sensu_check JSON provider #765
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.
Without this patch there are no spec tests for the sensu_check JSON provider.
This is problem because a reference is needed to specify the expected behavior
of all providers.
This patch implements a pattern of stubbing out the filesystem. All reads and
writes in the provider itself are routed through the
read_file
andwrite_json_object
methods. The RSpec tests then use rspec-mocks to stub outthe reads and set expectations on the output.
This reference may be applied to any provider using the
flush
method. Thesetter methods in the provider for each property are expected to update state
in an instance variable, conventionally named @property_flush but named @conf
in the sensu_check provider. The flush method is responsible for writing out
@property_flush (@conf), which we intercept and set expectations on the data
provided.
Resolves #759