Improve tests involving push_bulk (#17508)
sidekiq-bulk's push_bulk can either accept arguments directly or run them through a block. Setting expectations on the result of evaluating the blocks allows testing more code (the block itself) and the test is moved closer to the *interface* of the tested code than its precise implementation.
This commit is contained in:
parent
3dc1e3cfc3
commit
2af03164cb
8 changed files with 26 additions and 31 deletions
|
@ -57,3 +57,10 @@ end
|
|||
def json_str_to_hash(str)
|
||||
JSON.parse(str, symbolize_names: true)
|
||||
end
|
||||
|
||||
def expect_push_bulk_to_match(klass, matcher)
|
||||
expect(Sidekiq::Client).to receive(:push_bulk).with(hash_including({
|
||||
"class" => klass,
|
||||
"args" => matcher
|
||||
}))
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue