{"id":410,"name":null,"description":"RSpec for Sidekiq","url":"https://github.com/wspurgin/rspec-sidekiq","last_synced_at":"2026-04-30T04:03:20.285Z","repository":{"id":7614636,"uuid":"8973230","full_name":"wspurgin/rspec-sidekiq","owner":"wspurgin","description":"RSpec for Sidekiq","archived":false,"fork":false,"pushed_at":"2026-02-23T00:49:31.000Z","size":446,"stargazers_count":679,"open_issues_count":4,"forks_count":141,"subscribers_count":8,"default_branch":"main","last_synced_at":"2026-04-28T02:13:00.110Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://github.com/wspurgin/rspec-sidekiq","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wspurgin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2013-03-23T16:27:27.000Z","updated_at":"2026-04-24T22:32:00.000Z","dependencies_parsed_at":"2026-01-06T13:00:20.279Z","dependency_job_id":null,"html_url":"https://github.com/wspurgin/rspec-sidekiq","commit_stats":{"total_commits":335,"total_committers":59,"mean_commits":5.677966101694915,"dds":0.6865671641791045,"last_synced_commit":"c31b54ff9568a7e53bab0220aacc0fc053836cb3"},"previous_names":["wspurgin/rspec-sidekiq","philostler/rspec-sidekiq"],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/wspurgin/rspec-sidekiq","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32375611,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-28T09:24:15.638Z","status":"ssl_error","status_checked_at":"2026-04-28T09:24:15.071Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"wspurgin","name":"Will Spurgin","uuid":"3472781","kind":"user","description":"","email":"","website":null,"location":"Dallas, TX","twitter":null,"company":"@stitchfix ","icon_url":"https://avatars.githubusercontent.com/u/3472781?u=86797de0e1acd78da166f9100425032ea40042c2\u0026v=4","repositories_count":58,"last_synced_at":"2024-05-10T21:57:29.571Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/wspurgin","funding_links":[],"total_stars":643,"followers":18,"following":18,"created_at":"2022-11-04T23:20:44.239Z","updated_at":"2024-05-10T21:57:39.600Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin/repositories"},"packages":[{"id":12314145,"name":"rspec-sidekiq","ecosystem":"rubygems","description":"Simple testing of Sidekiq jobs via a collection of matchers and helpers","homepage":"https://github.com/wspurgin/rspec-sidekiq","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/wspurgin/rspec-sidekiq","keywords_array":[],"namespace":null,"versions_count":29,"first_release_published_at":"2013-03-24T02:57:21.555Z","latest_release_published_at":"2026-02-20T17:43:39.534Z","latest_release_number":"5.3.0","last_synced_at":"2026-04-25T02:01:02.203Z","created_at":"2025-10-07T05:34:40.606Z","updated_at":"2026-04-25T02:02:20.966Z","registry_url":"https://gem.coop/gems/rspec-sidekiq","install_command":"gem install rspec-sidekiq -s https://gem.coop","documentation_url":"http://www.rubydoc.info/gems/rspec-sidekiq/","metadata":{"funding":null},"repo_metadata":{"id":7614636,"uuid":"8973230","full_name":"wspurgin/rspec-sidekiq","owner":"wspurgin","description":"RSpec for Sidekiq","archived":false,"fork":false,"pushed_at":"2026-02-23T00:49:31.000Z","size":446,"stargazers_count":679,"open_issues_count":4,"forks_count":141,"subscribers_count":8,"default_branch":"main","last_synced_at":"2026-04-12T19:05:44.905Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://github.com/wspurgin/rspec-sidekiq","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wspurgin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2013-03-23T16:27:27.000Z","updated_at":"2026-04-01T14:06:35.000Z","dependencies_parsed_at":"2026-01-06T13:00:20.279Z","dependency_job_id":null,"html_url":"https://github.com/wspurgin/rspec-sidekiq","commit_stats":{"total_commits":335,"total_committers":59,"mean_commits":5.677966101694915,"dds":0.6865671641791045,"last_synced_commit":"c31b54ff9568a7e53bab0220aacc0fc053836cb3"},"previous_names":["wspurgin/rspec-sidekiq","philostler/rspec-sidekiq"],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/wspurgin/rspec-sidekiq","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31781470,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"wspurgin","name":"Will Spurgin","uuid":"3472781","kind":"user","description":"","email":"","website":null,"location":"Dallas, TX","twitter":null,"company":"@stitchfix ","icon_url":"https://avatars.githubusercontent.com/u/3472781?u=86797de0e1acd78da166f9100425032ea40042c2\u0026v=4","repositories_count":58,"last_synced_at":"2024-05-10T21:57:29.571Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/wspurgin","funding_links":[],"total_stars":643,"followers":18,"following":18,"created_at":"2022-11-04T23:20:44.239Z","updated_at":"2024-05-10T21:57:39.600Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin/repositories"},"tags":[{"name":"v5.3.0","sha":"e6f93446efd9b0977c6fae7a11319414f2298573","kind":"commit","published_at":"2026-02-20T17:36:49.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v5.3.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v5.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v5.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.3.0/manifests"},{"name":"v5.2.0","sha":"bf4b27c684146a6cddcc688beb1cb24fd52aa9c5","kind":"commit","published_at":"2025-07-19T18:09:14.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v5.2.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v5.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v5.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.2.0/manifests"},{"name":"v5.1.0","sha":"df545f5275ae6b7984bc2567ee1d9042ae7d8973","kind":"tag","published_at":"2025-03-07T18:34:06.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v5.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v5.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v5.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.1.0/manifests"},{"name":"v5.0.0","sha":"5becc96e24cc798a13e9a8cf224644b03a86ba0e","kind":"commit","published_at":"2024-05-15T19:17:47.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v5.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v5.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v5.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.0.0/manifests"},{"name":"v4.2.0","sha":"f6eeff6879b704fc5505765a2ffde5ea1eb833a6","kind":"commit","published_at":"2024-04-16T14:03:23.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.2.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.2.0/manifests"},{"name":"v4.1.0","sha":"9987d85b1482ea23427369d7e00dffd9da33b0bf","kind":"commit","published_at":"2023-10-27T19:35:42.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.1.0/manifests"},{"name":"v4.0.2","sha":"ae1b5dbcaa5dabc94802ba43dacb246b2b9a5315","kind":"commit","published_at":"2023-08-25T18:08:46.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.0.2","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.2/manifests"},{"name":"v4.0.1","sha":"08c3020f8b08f4f8626f437716101dba184d0621","kind":"commit","published_at":"2023-08-23T14:12:31.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.0.1","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"bdd2b52bcdd8a7002c50f84b1d46a63933b40279","kind":"commit","published_at":"2023-08-15T13:49:20.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.0/manifests"},{"name":"4.0.0.pre","sha":"b4851ace730a2e7d999ff0c66d799d547432b28b","kind":"commit","published_at":"2023-08-09T19:35:08.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/4.0.0.pre","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/4.0.0.pre","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@4.0.0.pre","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/4.0.0.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/4.0.0.pre/manifests"},{"name":"v3.1.0","sha":"ccce13c71ebfe848bc35ec79fc62f63714f9e3e1","kind":"commit","published_at":"2020-06-21T16:26:08.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.1.0/manifests"},{"name":"v3.0.3","sha":"5fdfd542506c0eb93d03bbd46aa9b6e819ff38b4","kind":"commit","published_at":"2017-06-23T16:24:41.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.0.3","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"280877e91b3928bef7857d8d76df1456dd045947","kind":"commit","published_at":"2017-06-21T21:38:59.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.0.2","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"4f6da310f2311aa2d5bbea983bd17776d041c61a","kind":"commit","published_at":"2017-04-10T15:19:37.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.0.1","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"fd6ffa7564931aba67db76f52f5fb06327af0395","kind":"commit","published_at":"2017-04-04T18:24:58.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.0/manifests"},{"name":"v2.2.0","sha":"82634afe2ed868cdd7bf3da0e4dfdbcbf46fa754","kind":"tag","published_at":"2015-12-22T22:11:40.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v2.2.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.2.0/manifests"},{"name":"v2.1.0","sha":"1574ebc9f6b6d891745f4b4d6b39601ff36eb25c","kind":"tag","published_at":"2015-08-05T20:18:05.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v2.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"ddf94f92370957365a61f2cd10f3a1d4b1793f26","kind":"tag","published_at":"2014-09-24T23:55:50.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v2.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.0.0/manifests"},{"name":"v2.0.0.beta","sha":"25ae22d8aded877d4f03aee5c3bd8fed715ab108","kind":"tag","published_at":"2014-08-19T21:18:07.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v2.0.0.beta","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v2.0.0.beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v2.0.0.beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.0.0.beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.0.0.beta/manifests"},{"name":"v1.1.0","sha":"ccb6865efc42e0ff0f9bff20fd03785d25d57f04","kind":"commit","published_at":"2014-06-25T12:35:28.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v1.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"62bbc04bf98bf6c30d083dcfb704c377e5c9cf53","kind":"commit","published_at":"2014-01-21T00:55:24.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v1.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v1.0.0/manifests"},{"name":"v0.5.1","sha":"bbc3069a27f500bdd2226acc3bf43b2b356c9286","kind":"commit","published_at":"2013-09-10T21:30:00.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.5.1","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"dc058d7bcb98a7d222a500c78a42de54df8eb17d","kind":"commit","published_at":"2013-09-02T11:56:24.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.5.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.5.0/manifests"},{"name":"v0.4.0","sha":"79623702f9bed95479af239c72265a964e5a217d","kind":"commit","published_at":"2013-05-15T20:55:38.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.4.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"a465ad8ad1e9f2abd5735eaf404cde8f4a36cdbf","kind":"commit","published_at":"2013-04-09T19:05:39.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.3.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.3.0/manifests"},{"name":"v0.2.2","sha":"150109478ffcb6ab4b0e90a9a204947d1fd66e61","kind":"commit","published_at":"2013-03-28T17:27:07.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.2.2","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"5a25df0d288662aebb107a332ff7aceabc9dab16","kind":"commit","published_at":"2013-03-27T02:27:24.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.2.1","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"82bdecf8b7a015385203e59938eb6f5d5ae1fa55","kind":"commit","published_at":"2013-03-25T02:49:41.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.2.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"ba835266c56918b9001af1055eb4100b2b4dfa13","kind":"tag","published_at":"2013-03-24T03:18:48.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-04-25T02:02:20.940Z","dependent_packages_count":0,"downloads":54832773,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":0.49901332684561944,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":1.0147865812451005,"average":0.37844997702267996},"purl":"pkg:gem/rspec-sidekiq?repository_url=https://gem.coop","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/rspec-sidekiq","docker_dependents_count":48,"docker_downloads_count":17697296,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/rspec-sidekiq","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/rspec-sidekiq/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-03-12T05:01:08.132Z","issues_count":20,"pull_requests_count":107,"avg_time_to_close_issue":97918366.35714285,"avg_time_to_close_pull_request":7251972.385714286,"issues_closed_count":14,"pull_requests_closed_count":70,"pull_request_authors_count":23,"issue_authors_count":19,"avg_comments_per_issue":2.35,"avg_comments_per_pull_request":0.9252336448598131,"merged_pull_requests_count":61,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":4,"past_year_pull_requests_count":56,"past_year_avg_time_to_close_issue":2422590.5,"past_year_avg_time_to_close_pull_request":445056.2083333333,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":24,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.4107142857142857,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":2,"past_year_merged_pull_requests_count":22,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/issues","maintainers":[{"login":"wspurgin","count":28,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/wspurgin"},{"login":"ydah","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ydah"}],"active_maintainers":[{"login":"ydah","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ydah"},{"login":"wspurgin","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/wspurgin"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/rspec-sidekiq/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/rspec-sidekiq/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/rspec-sidekiq/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/rspec-sidekiq/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages/rspec-sidekiq/codemeta","maintainers":[{"uuid":"180136","login":"wspur","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://gem.coop/profiles/wspur","role":null,"created_at":"2025-10-08T04:58:48.770Z","updated_at":"2025-10-08T04:58:48.770Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers/wspur/packages"}],"registry":{"name":"gem.coop","url":"https://gem.coop","ecosystem":"rubygems","default":false,"packages_count":190276,"maintainers_count":67443,"namespaces_count":0,"keywords_count":0,"github":"gem-coop","metadata":{"funded_packages_count":6507},"icon_url":"https://github.com/gem-coop.png","created_at":"2025-10-06T17:24:20.932Z","updated_at":"2026-04-03T06:45:05.763Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/gem.coop/namespaces"}},{"id":291150,"name":"rspec-sidekiq","ecosystem":"rubygems","description":"Simple testing of Sidekiq jobs via a collection of matchers and helpers","homepage":"https://github.com/wspurgin/rspec-sidekiq","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/wspurgin/rspec-sidekiq","keywords_array":[],"namespace":null,"versions_count":29,"first_release_published_at":"2013-03-24T02:57:21.555Z","latest_release_published_at":"2026-02-20T17:43:39.534Z","latest_release_number":"5.3.0","last_synced_at":"2026-04-25T03:00:56.072Z","created_at":"2022-04-06T09:47:09.886Z","updated_at":"2026-04-25T03:02:11.737Z","registry_url":"https://rubygems.org/gems/rspec-sidekiq","install_command":"gem install rspec-sidekiq -s https://rubygems.org","documentation_url":"http://www.rubydoc.info/gems/rspec-sidekiq/","metadata":{"funding":null},"repo_metadata":{"id":7614636,"uuid":"8973230","full_name":"wspurgin/rspec-sidekiq","owner":"wspurgin","description":"RSpec for Sidekiq","archived":false,"fork":false,"pushed_at":"2026-02-23T00:49:31.000Z","size":446,"stargazers_count":680,"open_issues_count":4,"forks_count":141,"subscribers_count":8,"default_branch":"main","last_synced_at":"2026-04-20T13:16:14.850Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://github.com/wspurgin/rspec-sidekiq","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wspurgin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2013-03-23T16:27:27.000Z","updated_at":"2026-04-17T13:45:23.000Z","dependencies_parsed_at":"2026-01-06T13:00:20.279Z","dependency_job_id":null,"html_url":"https://github.com/wspurgin/rspec-sidekiq","commit_stats":{"total_commits":335,"total_committers":59,"mean_commits":5.677966101694915,"dds":0.6865671641791045,"last_synced_commit":"c31b54ff9568a7e53bab0220aacc0fc053836cb3"},"previous_names":["wspurgin/rspec-sidekiq","philostler/rspec-sidekiq"],"tags_count":29,"template":false,"template_full_name":null,"purl":"pkg:github/wspurgin/rspec-sidekiq","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32159962,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-22T17:06:48.269Z","status":"ssl_error","status_checked_at":"2026-04-22T17:06:19.037Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"wspurgin","name":"Will Spurgin","uuid":"3472781","kind":"user","description":"","email":"","website":null,"location":"Dallas, TX","twitter":null,"company":"@stitchfix ","icon_url":"https://avatars.githubusercontent.com/u/3472781?u=86797de0e1acd78da166f9100425032ea40042c2\u0026v=4","repositories_count":58,"last_synced_at":"2024-05-10T21:57:29.571Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/wspurgin","funding_links":[],"total_stars":643,"followers":18,"following":18,"created_at":"2022-11-04T23:20:44.239Z","updated_at":"2024-05-10T21:57:39.600Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wspurgin/repositories"},"tags":[{"name":"v5.3.0","sha":"e6f93446efd9b0977c6fae7a11319414f2298573","kind":"commit","published_at":"2026-02-20T17:36:49.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v5.3.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v5.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v5.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.3.0/manifests"},{"name":"v5.2.0","sha":"bf4b27c684146a6cddcc688beb1cb24fd52aa9c5","kind":"commit","published_at":"2025-07-19T18:09:14.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v5.2.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v5.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v5.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.2.0/manifests"},{"name":"v5.1.0","sha":"df545f5275ae6b7984bc2567ee1d9042ae7d8973","kind":"tag","published_at":"2025-03-07T18:34:06.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v5.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v5.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v5.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.1.0/manifests"},{"name":"v5.0.0","sha":"5becc96e24cc798a13e9a8cf224644b03a86ba0e","kind":"commit","published_at":"2024-05-15T19:17:47.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v5.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v5.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v5.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v5.0.0/manifests"},{"name":"v4.2.0","sha":"f6eeff6879b704fc5505765a2ffde5ea1eb833a6","kind":"commit","published_at":"2024-04-16T14:03:23.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.2.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.2.0/manifests"},{"name":"v4.1.0","sha":"9987d85b1482ea23427369d7e00dffd9da33b0bf","kind":"commit","published_at":"2023-10-27T19:35:42.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.1.0/manifests"},{"name":"v4.0.2","sha":"ae1b5dbcaa5dabc94802ba43dacb246b2b9a5315","kind":"commit","published_at":"2023-08-25T18:08:46.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.0.2","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.2/manifests"},{"name":"v4.0.1","sha":"08c3020f8b08f4f8626f437716101dba184d0621","kind":"commit","published_at":"2023-08-23T14:12:31.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.0.1","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"bdd2b52bcdd8a7002c50f84b1d46a63933b40279","kind":"commit","published_at":"2023-08-15T13:49:20.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v4.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v4.0.0/manifests"},{"name":"4.0.0.pre","sha":"b4851ace730a2e7d999ff0c66d799d547432b28b","kind":"commit","published_at":"2023-08-09T19:35:08.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/4.0.0.pre","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/4.0.0.pre","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@4.0.0.pre","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/4.0.0.pre","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/4.0.0.pre/manifests"},{"name":"v3.1.0","sha":"ccce13c71ebfe848bc35ec79fc62f63714f9e3e1","kind":"commit","published_at":"2020-06-21T16:26:08.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.1.0/manifests"},{"name":"v3.0.3","sha":"5fdfd542506c0eb93d03bbd46aa9b6e819ff38b4","kind":"commit","published_at":"2017-06-23T16:24:41.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.0.3","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"280877e91b3928bef7857d8d76df1456dd045947","kind":"commit","published_at":"2017-06-21T21:38:59.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.0.2","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"4f6da310f2311aa2d5bbea983bd17776d041c61a","kind":"commit","published_at":"2017-04-10T15:19:37.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.0.1","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"fd6ffa7564931aba67db76f52f5fb06327af0395","kind":"commit","published_at":"2017-04-04T18:24:58.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v3.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v3.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v3.0.0/manifests"},{"name":"v2.2.0","sha":"82634afe2ed868cdd7bf3da0e4dfdbcbf46fa754","kind":"tag","published_at":"2015-12-22T22:11:40.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v2.2.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v2.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.2.0/manifests"},{"name":"v2.1.0","sha":"1574ebc9f6b6d891745f4b4d6b39601ff36eb25c","kind":"tag","published_at":"2015-08-05T20:18:05.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v2.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v2.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"ddf94f92370957365a61f2cd10f3a1d4b1793f26","kind":"tag","published_at":"2014-09-24T23:55:50.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v2.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v2.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.0.0/manifests"},{"name":"v2.0.0.beta","sha":"25ae22d8aded877d4f03aee5c3bd8fed715ab108","kind":"tag","published_at":"2014-08-19T21:18:07.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v2.0.0.beta","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v2.0.0.beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v2.0.0.beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.0.0.beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v2.0.0.beta/manifests"},{"name":"v1.1.0","sha":"ccb6865efc42e0ff0f9bff20fd03785d25d57f04","kind":"commit","published_at":"2014-06-25T12:35:28.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v1.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v1.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"62bbc04bf98bf6c30d083dcfb704c377e5c9cf53","kind":"commit","published_at":"2014-01-21T00:55:24.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v1.0.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v1.0.0/manifests"},{"name":"v0.5.1","sha":"bbc3069a27f500bdd2226acc3bf43b2b356c9286","kind":"commit","published_at":"2013-09-10T21:30:00.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.5.1","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.5.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"dc058d7bcb98a7d222a500c78a42de54df8eb17d","kind":"commit","published_at":"2013-09-02T11:56:24.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.5.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.5.0/manifests"},{"name":"v0.4.0","sha":"79623702f9bed95479af239c72265a964e5a217d","kind":"commit","published_at":"2013-05-15T20:55:38.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.4.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"a465ad8ad1e9f2abd5735eaf404cde8f4a36cdbf","kind":"commit","published_at":"2013-04-09T19:05:39.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.3.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.3.0/manifests"},{"name":"v0.2.2","sha":"150109478ffcb6ab4b0e90a9a204947d1fd66e61","kind":"commit","published_at":"2013-03-28T17:27:07.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.2.2","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"5a25df0d288662aebb107a332ff7aceabc9dab16","kind":"commit","published_at":"2013-03-27T02:27:24.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.2.1","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"82bdecf8b7a015385203e59938eb6f5d5ae1fa55","kind":"commit","published_at":"2013-03-25T02:49:41.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.2.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.2.0/manifests"},{"name":"v0.1.0","sha":"ba835266c56918b9001af1055eb4100b2b4dfa13","kind":"tag","published_at":"2013-03-24T03:18:48.000Z","download_url":"https://codeload.github.com/wspurgin/rspec-sidekiq/tar.gz/v0.1.0","html_url":"https://github.com/wspurgin/rspec-sidekiq/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/wspurgin/rspec-sidekiq@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2026-04-25T03:02:11.707Z","dependent_packages_count":38,"downloads":54832773,"downloads_period":"total","dependent_repos_count":1035,"rankings":{"downloads":0.5224071988492546,"dependent_repos_count":1.0096899008708644,"dependent_packages_count":0.6701530982036329,"stargazers_count":2.290897737536379,"forks_count":2.322677044189962,"docker_downloads_count":1.117851049832183,"average":1.322279338247046},"purl":"pkg:gem/rspec-sidekiq","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/rubygems/rspec-sidekiq","docker_dependents_count":48,"docker_downloads_count":17697296,"usage_url":"https://repos.ecosyste.ms/usage/rubygems/rspec-sidekiq","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/rubygems/rspec-sidekiq/dependencies","status":null,"funding_links":[],"critical":true,"issue_metadata":{"last_synced_at":"2026-03-12T05:01:08.132Z","issues_count":20,"pull_requests_count":107,"avg_time_to_close_issue":97918366.35714285,"avg_time_to_close_pull_request":7251972.385714286,"issues_closed_count":14,"pull_requests_closed_count":70,"pull_request_authors_count":23,"issue_authors_count":19,"avg_comments_per_issue":2.35,"avg_comments_per_pull_request":0.9252336448598131,"merged_pull_requests_count":61,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":4,"past_year_pull_requests_count":56,"past_year_avg_time_to_close_issue":2422590.5,"past_year_avg_time_to_close_pull_request":445056.2083333333,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":24,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.4107142857142857,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":2,"past_year_merged_pull_requests_count":22,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/issues","maintainers":[{"login":"wspurgin","count":28,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/wspurgin"},{"login":"ydah","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ydah"}],"active_maintainers":[{"login":"ydah","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ydah"},{"login":"wspurgin","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/wspurgin"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/rspec-sidekiq/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/rspec-sidekiq/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/rspec-sidekiq/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/rspec-sidekiq/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages/rspec-sidekiq/codemeta","maintainers":[{"uuid":"180136","login":"wspur","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://rubygems.org/profiles/wspur","role":null,"created_at":"2023-08-06T00:02:02.218Z","updated_at":"2023-08-06T00:02:02.218Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers/wspur/packages"}],"registry":{"name":"rubygems.org","url":"https://rubygems.org","ecosystem":"rubygems","default":true,"packages_count":205424,"maintainers_count":68434,"namespaces_count":0,"keywords_count":0,"github":"rubygems","metadata":{"funded_packages_count":7260},"icon_url":"https://github.com/rubygems.png","created_at":"2022-04-04T15:19:23.446Z","updated_at":"2026-04-03T06:42:17.024Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/rubygems.org/namespaces"}}],"commits":{"id":1741545,"full_name":"wspurgin/rspec-sidekiq","default_branch":"main","total_commits":399,"total_committers":67,"total_bot_commits":2,"total_bot_committers":1,"mean_commits":5.955223880597015,"dds":0.736842105263158,"past_year_total_commits":56,"past_year_total_committers":6,"past_year_total_bot_commits":2,"past_year_total_bot_committers":1,"past_year_mean_commits":9.333333333333334,"past_year_dds":0.1785714285714286,"last_synced_at":"2026-04-23T00:11:43.655Z","last_synced_commit":"e6f93446efd9b0977c6fae7a11319414f2298573","created_at":"2024-09-13T16:33:17.020Z","updated_at":"2026-04-23T00:08:43.204Z","committers":[{"name":"Phil Ostler","email":"philostler@gmail.com","login":"philostler","count":105},{"name":"Will Spurgin","email":"will.spurgin@stitchfix.com","login":"wspurgin","count":66},{"name":"Phil Ostler","email":"github@philostler.com","login":null,"count":58},{"name":"Yudai Takada","email":"t.yudai92@gmail.com","login":"ydah","count":46},{"name":"Aidan Coyle","email":"packrat386@gmail.com","login":"packrat386","count":16},{"name":"Arne De Herdt","email":"arne@represent.com","login":null,"count":6},{"name":"Wanderson Policarpo","email":"wpolicarpo@gmail.com","login":"wpolicarpo","count":6},{"name":"Peter M. Goldstein","email":"peter.m.goldstein@gmail.com","login":"petergoldstein","count":4},{"name":"Maarten Jacobs","email":"m.jacobs@defacto.nl","login":"tarzan","count":4},{"name":"“Pavel","email":"“pavel.jurasek@bcgdv.com”","login":null,"count":4},{"name":"Bernabas","email":"bdagnachew@weddingwire.com","login":null,"count":3},{"name":"Adam Steel","email":"adam.steel@stitchfix.com","login":null,"count":3},{"name":"Arne De Herdt","email":"arne.de.herdt@gmail.com","login":"coding-red-panda","count":3},{"name":"Dominik Masur","email":"dominik.masur@googlemail.com","login":"dmasur","count":3},{"name":"Erik Ogan","email":"erik@ogan.net","login":"erikogan","count":3},{"name":"Jesse Smith","email":"sosaucily@gmail.com","login":"sosaucily","count":3},{"name":"Josh Becker","email":"beckerbi@gmail.com","login":"Geesu","count":3},{"name":"Riccardo","email":"riccardo.odone@gmail.com","login":"3v0k4","count":3},{"name":"Viet Hoang","email":"1300077+vietqhoang","login":"vietqhoang","count":2},{"name":"Trevor Wistaff","email":"trev@a07.com.au","login":"trev","count":2},{"name":"Tobias Bohwalli","email":"hi@futhr.io","login":"futhr","count":2},{"name":"Mourad Hammiche","email":"mourad.hammiche@ifeelgoods.com","login":"mourad-ifeelgoods","count":2},{"name":"Marc Huffnagle","email":"marc@element84.com","login":"marchuffnagle","count":2},{"name":"Fabio Kreusch","email":"fabiokr@gmail.com","login":"fabiokr","count":2},{"name":"Adam Prescott","email":"adam@aprescott.com","login":"aprescott","count":2},{"name":"Adam Farhi","email":"afarhi@ebay.com","login":null,"count":2},{"name":"Ben Woosley and Tom Conroy","email":"pair+ben+tom@pacerpro.com","login":null,"count":2},{"name":"Brian Sharon","email":"brian.sharon@omadahealth.com","login":null,"count":2},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":2},{"name":"Adam Farhi","email":"yelled3@gmail.com","login":"yelled3","count":1},{"name":"Akihiko Odaki","email":"akihiko.odaki.4i@stu.hosei.ac.jp","login":"akihikodaki","count":1},{"name":"JD Hendrickson","email":"jd@digitalopera.com","login":null,"count":1},{"name":"Michael Mitchell","email":"michaelmitchell@gmail.com","login":null,"count":1},{"name":"Mateusz Luterek","email":"mateusz.luterek@raylo.com","login":"Pacyfik","count":1},{"name":"Mauro George","email":"maurogot@gmail.com","login":"maurogeorge","count":1},{"name":"Michael Johnston","email":"lastobelus@mac.com","login":"lastobelus","count":1},{"name":"Mitch Dempsey","email":"mrdempsey@gmail.com","login":"webdestroya","count":1},{"name":"Paul Friedman","email":"paulrfri@gmail.com","login":"paulfri","count":1},{"name":"Peter Boling","email":"peter.boling@gmail.com","login":"pboling","count":1},{"name":"Ryan LeFevre","email":"meltingice8917@gmail.com","login":"meltingice","count":1},{"name":"Ryo Nakamura","email":"r7kamura@gmail.com","login":"r7kamura","count":1},{"name":"Teck Wan Wong","email":"36706647+teckwan","login":"teckwan","count":1},{"name":"Wu","email":"monkeywzr@gmail.com","login":"monkeyWzr","count":1},{"name":"Yuki Kurihara","email":"co000ri@gmail.com","login":"ksss","count":1},{"name":"centaure","email":"centaure@gmail.com","login":"centaure","count":1},{"name":"fynsta","email":"63241108+fynsta","login":"fynsta","count":1},{"name":"homanchou","email":"homan@sellbrite.com","login":"homanchou","count":1},{"name":"jkogara","email":"johnogara@gmail.com","login":"jkogara","count":1},{"name":"johanneswuerbach","email":"johannes.wuerbach@googlemail.com","login":"johanneswuerbach","count":1},{"name":"wizardofelves","email":"cward@teamnorthwoods.com","login":"wizardofelves","count":1},{"name":"Kelly Felkins","email":"pair+kelly@pacerpro.com","login":null,"count":1},{"name":"Albert Salim","email":"albertlimca@gmail.com","login":"caalberts","count":1},{"name":"Aldis Berjoza","email":"graudeejs@yandex.ru","login":"graudeejs","count":1},{"name":"Ben Muschol","email":"benmuschol@gmail.com","login":"BenMusch","count":1},{"name":"Brad Haydon","email":"bradhaydon@gmail.com","login":"bradhaydon","count":1},{"name":"Brandon Hicks","email":"tarellel","login":"tarellel","count":1},{"name":"Chris Maximin","email":"chris@chrismaximin.com","login":"chrismaximin","count":1},{"name":"David Santos Merino","email":"dsantosmerino@gmail.com","login":"dsantosmerino","count":1},{"name":"Edward Rudd","email":"urkle@outoforder.cc","login":"urkle","count":1},{"name":"Eric Proulx","email":"eproulx@petalmd.com","login":"ericproulx","count":1},{"name":"Gabe Heafitz","email":"gabe@shopkeep.com","login":"Noreaster76","count":1},{"name":"Georg Gadinger","email":"georg.gadinger@runtastic.com","login":"nilsding","count":1},{"name":"John Bolliger","email":"skunkworker","login":"skunkworker","count":1},{"name":"Josh Schwartzman","email":"geeosh@gmail.com","login":"geeosh","count":1},{"name":"Joshua Lane","email":"me@joshualane.com","login":"lanej","count":1},{"name":"Jukka Rautanen","email":"jukka.hela@outlook.com","login":"jukra","count":1},{"name":"Ken Mayer","email":"ken@bitwrangler.com","login":"kmayer","count":1}],"past_year_committers":[{"name":"Yudai Takada","email":"t.yudai92@gmail.com","login":"ydah","count":46},{"name":"Will Spurgin","email":"will.spurgin@gmail.com","login":"wspurgin","count":4},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":2},{"name":"Viet Hoang","email":"1300077+vietqhoang","login":"vietqhoang","count":2},{"name":"Wu","email":"monkeywzr@gmail.com","login":"monkeyWzr","count":1},{"name":"Mateusz Luterek","email":"mateusz.luterek@raylo.com","login":"Pacyfik","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-26T00:00:10.019Z","repositories_count":6218656,"commits_count":899421109,"contributors_count":34886385,"owners_count":1145542,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"wspurgin/rspec-sidekiq","html_url":"https://github.com/wspurgin/rspec-sidekiq","last_synced_at":"2026-03-12T05:01:08.132Z","status":"active","issues_count":20,"pull_requests_count":107,"avg_time_to_close_issue":97918366.35714285,"avg_time_to_close_pull_request":7251972.385714286,"issues_closed_count":14,"pull_requests_closed_count":70,"pull_request_authors_count":23,"issue_authors_count":19,"avg_comments_per_issue":2.35,"avg_comments_per_pull_request":0.9252336448598131,"merged_pull_requests_count":61,"bot_issues_count":0,"bot_pull_requests_count":2,"past_year_issues_count":4,"past_year_pull_requests_count":56,"past_year_avg_time_to_close_issue":2422590.5,"past_year_avg_time_to_close_pull_request":445056.2083333333,"past_year_issues_closed_count":2,"past_year_pull_requests_closed_count":24,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":0.4107142857142857,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":2,"past_year_merged_pull_requests_count":22,"created_at":"2024-05-10T21:31:56.025Z","updated_at":"2026-03-12T05:01:08.133Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/wspurgin%2Frspec-sidekiq/issues","issue_labels_count":{"stale":3,"new feature":2,"nice-to-have":1,"question":1},"pull_request_labels_count":{"github_actions":2,"dependencies":2,"stale":2},"issue_author_associations_count":{"NONE":16,"OWNER":2,"CONTRIBUTOR":2},"pull_request_author_associations_count":{"CONTRIBUTOR":49,"NONE":27,"OWNER":26,"COLLABORATOR":5},"issue_authors":{"wspurgin":2,"pbstriker38":1,"r7kamura":1,"yelled3":1,"nrpx":1,"h8rry":1,"rubendinho":1,"n-rodriguez":1,"mamirad":1,"arpadlukacs":1,"typeoneerror":1,"mjankowski":1,"IanWhitney":1,"franzliedke":1,"jarthod":1,"stevecrozz":1,"aahmad":1,"DmitryBarskov":1,"guisehn":1},"pull_request_authors":{"ydah":45,"wspurgin":26,"3v0k4":6,"jukra":2,"ericproulx":2,"pboling":2,"guisehn":2,"monkeyWzr":2,"dependabot[bot]":2,"tarellel":2,"fynsta":2,"leviwilson":2,"vietqhoang":2,"ksss":1,"anikolskiy":1,"wizardofelves":1,"n-rodriguez":1,"skunkworker":1,"chrismaximin":1,"Pacyfik":1,"teckwan":1,"mochetts":1,"r7kamura":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-09T00:00:10.509Z","repositories_count":14167315,"issues_count":34539368,"pull_requests_count":112966883,"authors_count":11231461,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{"new feature":1},"past_year_pull_request_labels_count":{"dependencies":2,"github_actions":2},"past_year_issue_author_associations_count":{"NONE":3,"OWNER":1},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":35,"NONE":13,"COLLABORATOR":5,"OWNER":3},"past_year_issue_authors":{"DmitryBarskov":1,"franzliedke":1,"mjankowski":1,"wspurgin":1},"past_year_pull_request_authors":{"ydah":45,"wspurgin":3,"dependabot[bot]":2,"monkeyWzr":2,"vietqhoang":2,"mochetts":1,"Pacyfik":1},"maintainers":[{"login":"wspurgin","count":28,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/wspurgin"},{"login":"ydah","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ydah"}],"active_maintainers":[{"login":"ydah","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ydah"},{"login":"wspurgin","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/wspurgin"}]},"events":{"total":{"ReleaseEvent":2,"DeleteEvent":6,"MemberEvent":1,"PullRequestEvent":55,"ForkEvent":7,"IssuesEvent":4,"WatchEvent":19,"IssueCommentEvent":23,"PushEvent":40,"PullRequestReviewCommentEvent":2,"PullRequestReviewEvent":11,"CreateEvent":6},"last_year":{"ReleaseEvent":1,"DeleteEvent":4,"MemberEvent":1,"PullRequestEvent":45,"ForkEvent":2,"IssuesEvent":3,"WatchEvent":7,"IssueCommentEvent":11,"PushEvent":29,"PullRequestReviewEvent":7,"PullRequestReviewCommentEvent":1,"CreateEvent":4}},"keywords":[],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/main.yml","sha":null,"kind":"manifest","created_at":"2023-07-23T21:49:35.643Z","updated_at":"2023-07-23T21:49:35.643Z","repository_link":"https://github.com/wspurgin/rspec-sidekiq/blob/main/.github/workflows/main.yml","dependencies":[{"id":11919066864,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":11919066865,"package_name":"ruby/setup-ruby","ecosystem":"actions","requirements":"ee2113536afb7f793eed4ce60e8d3b26db912da4","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"rubygems","filepath":"Gemfile","sha":null,"kind":"manifest","created_at":"2023-07-23T21:49:35.654Z","updated_at":"2023-07-23T21:49:35.654Z","repository_link":"https://github.com/wspurgin/rspec-sidekiq/blob/main/Gemfile","dependencies":[{"id":11919066866,"package_name":"psych","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false},{"id":11919066867,"package_name":"rubinius-developer_tools","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"rubygems","filepath":"rspec-sidekiq.gemspec","sha":null,"kind":"manifest","created_at":"2023-07-23T21:49:35.730Z","updated_at":"2023-07-23T21:49:35.730Z","repository_link":"https://github.com/wspurgin/rspec-sidekiq/blob/main/rspec-sidekiq.gemspec","dependencies":[{"id":11919067229,"package_name":"rspec-core","ecosystem":"rubygems","requirements":"~\u003e 3.0, \u003e= 3.0.0","direct":true,"kind":"runtime","optional":false},{"id":11919067230,"package_name":"sidekiq","ecosystem":"rubygems","requirements":"\u003e= 2.4.0, \u003c 7","direct":true,"kind":"runtime","optional":false},{"id":11919067231,"package_name":"pry","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067232,"package_name":"pry-doc","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067233,"package_name":"pry-nav","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067234,"package_name":"rspec","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067235,"package_name":"coveralls","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067236,"package_name":"fuubar","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067237,"package_name":"activejob","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067238,"package_name":"actionmailer","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067239,"package_name":"activerecord","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067240,"package_name":"activemodel","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false},{"id":11919067241,"package_name":"activesupport","ecosystem":"rubygems","requirements":"\u003e= 0","direct":true,"kind":"development","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/codespell.yaml","sha":null,"kind":"manifest","created_at":"2026-01-06T13:00:19.255Z","updated_at":"2026-01-06T13:00:19.255Z","repository_link":"https://github.com/wspurgin/rspec-sidekiq/blob/main/.github/workflows/codespell.yaml","dependencies":[{"id":25790327328,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v6","direct":true,"kind":"composite","optional":false},{"id":25790327329,"package_name":"codespell-project/actions-codespell","ecosystem":"actions","requirements":"master","direct":true,"kind":"composite","optional":false}]}],"score":29.52385450377914,"created_at":"2024-12-15T21:38:07.978Z","updated_at":"2026-04-30T04:03:20.286Z","avatar_url":"https://github.com/wspurgin.png","language":"Ruby","monthly_downloads":0,"readme":"[![Gem Version](https://badge.fury.io/rb/rspec-sidekiq.svg)](https://badge.fury.io/rb/rspec-sidekiq)\n[![Github Actions CI][github_actions_badge]][github_actions]\n\nSimple testing of Sidekiq jobs via a collection of matchers and helpers.\n\n[Jump to Matchers »](#matchers) | [Jump to Helpers »](#helpers)\n\n## Installation\n\n```ruby\n# Gemfile\ngroup :test do\n  gem 'rspec-sidekiq'\nend\n```\n\nrspec-sidekiq requires `sidekiq/testing` by default so there is no need to include the line `require \"sidekiq/testing\"` inside your `spec_helper.rb`.\n\n\u003e [!IMPORTANT]\n\u003e This has the effect of not pushing enqueued jobs to Redis but to a `job` array to enable testing ([see the FAQ \u0026 Troubleshooting Wiki page][rspec_sidekiq_wiki_faq_\u0026_troubleshooting]). Thus, only include `gem \"rspec-sidekiq\"` in environments where this behaviour is required, such as the `test` group.*\n\n## Configuration\n\nIf you wish to modify the default behaviour, add the following to your `spec_helper.rb` file\n\n```ruby\nRSpec::Sidekiq.configure do |config|\n  # Clears all job queues before each example\n  config.clear_all_enqueued_jobs = true # default =\u003e true\n\n  # Whether to use terminal colours when outputting messages\n  config.enable_terminal_colours = true # default =\u003e true\n\n  # Warn when jobs are not enqueued to Redis but to a job array\n  config.warn_when_jobs_not_processed_by_sidekiq = true # default =\u003e true\nend\n```\n\n## Matchers\n\n* [`enqueue_sidekiq_job`](#enqueue_sidekiq_job)\n* [`have_enqueued_sidekiq_job`](#have_enqueued_sidekiq_job)\n* [`have_job`](#have_job)\n* [`have_job_option`](#have_job_option)\n* [`have_job_options`](#have_job_options)\n* [`be_processed_in`](#be_processed_in)\n* [`be_retryable`](#be_retryable)\n* [`save_backtrace`](#save_backtrace)\n* [`be_unique`](#be_unique)\n* [`be_expired_in`](#be_expired_in)\n* [`be_delayed` (_deprecated_)](#be_delayed)\n\n### `enqueue_sidekiq_job`\n\n*Describes that the block should enqueue a job*. Optionally specify the\nspecific job class, arguments, timing, and other context\n\n```ruby\n# Basic\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job\n\n# A specific job class\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job(AwesomeJob)\n\n# with specific arguments\nexpect { AwesomeJob.perform_async \"Awesome!\" }.to enqueue_sidekiq_job.with(\"Awesome!\")\n\n# On a specific queue\nexpect { AwesomeJob.set(queue: \"high\").perform_async }.to enqueue_sidekiq_job.on(\"high\")\n\n# At a specific datetime\nspecific_time = 1.hour.from_now\nexpect { AwesomeJob.perform_at(specific_time) }.to enqueue_sidekiq_job.at(specific_time)\n\n# In a specific interval (be mindful of freezing or managing time here)\nfreeze_time do\n  expect { AwesomeJob.perform_in(1.hour) }.to enqueue_sidekiq_job.in(1.hour)\nend\n\n# A specific number of times\n\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.never\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.exactly(0)\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.exactly(0).time\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.once\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.exactly(1).time\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.exactly(:once)\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.at_least(1).time\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.at_least(:once)\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.at_most(2).times\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.at_most(:twice)\nexpect { AwesomeJob.perform_async }.to enqueue_sidekiq_job.at_most(:thrice)\n\n# With specific context:\n# Useful for testing anything `set` on the job, including\n# overrides to things like `retry`\nexpect {\n  AwesomeJob.set(trace_id: \"something\").perform_async\n}.to enqueue_sidekiq_job.with_context(trace_id: anything)\n\nexpect {\n  AwesomeJob.set(retry: 5).perform_async\n}.to enqueue_sidekiq_job.with_context(retry: 5)\n\n# Combine and chain them as desired\nexpect { AwesomeJob.perform_at(specific_time, \"Awesome!\") }.to(\n  enqueue_sidekiq_job(AwesomeJob)\n  .with(\"Awesome!\")\n  .on(\"default\")\n  .at(specific_time)\n)\n\n# Also composable\nexpect do\n  AwesomeJob.perform_async\n  OtherJob.perform_async\nend.to enqueue_sidekiq_job(AwesomeJob).and enqueue_sidekiq_job(OtherJob)\n```\n\n### `have_enqueued_sidekiq_job`\n\nDescribes that there should be an enqueued job (with the specified arguments):\n\n```ruby\nAwesomeJob.perform_async 'Awesome', true\n# test with...\nexpect(AwesomeJob).to have_enqueued_sidekiq_job\nexpect(AwesomeJob).to have_enqueued_sidekiq_job('Awesome', true)\n```\n\nYou can use the built-in RSpec args matchers too:\n\n```ruby\nAwesomeJob.perform_async({\"something\" =\u003e \"Awesome\", \"extra\" =\u003e \"stuff\"})\n\n# using built-in matchers from rspec-mocks:\nexpect(AwesomeJob).to have_enqueued_sidekiq_job(hash_including(\"something\" =\u003e \"Awesome\"))\nexpect(AwesomeJob).to have_enqueued_sidekiq_job(any_args)\nexpect(AwesomeJob).to have_enqueued_sidekiq_job(hash_excluding(\"bad_stuff\" =\u003e anything))\n\n# composable as well\nexpect(AwesomeJob).to have_enqueued_sidekiq_job(any_args).and have_enqueued_sidekiq_job(hash_including(\"something\" =\u003e \"Awesome\"))\n```\n\nYou can specify the number of jobs enqueued:\n\n```ruby\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.once\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.exactly(1).time\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.exactly(:once)\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.at_least(1).time\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.at_least(:once)\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.at_most(2).times\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.at_most(:twice)\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.at_most(:thrice)\n```\n\nLikewise, specify what should be in the context:\n\n```ruby\nAwesomeJob.set(trace_id: \"something\").perform_async\n\nexpect(AwesomeJob).to have_enqueued_sidekiq_job.with_context(trace_id: anything)\n```\n\n#### Testing scheduled jobs\n\n*Use chainable matchers `#at`, `#in` and `#immediately`*\n\n```ruby\ntime = 5.minutes.from_now\nAwesomeJob.perform_at time, 'Awesome', true\n# test with...\nexpect(AwesomeJob).to have_enqueued_sidekiq_job('Awesome', true).at(time)\n```\n\n```ruby\nAwesomeJob.perform_in 5.minutes, 'Awesome', true\n# test with...\nexpect(AwesomeJob).to have_enqueued_sidekiq_job('Awesome', true).in(5.minutes)\n```\n\n```ruby\n# Job scheduled for a date in the past are enqueued immediately.\nAwesomeJob.perform_later 5.minutes.ago, 'Awesome', true # equivalent to: AwesomeJob.perform_async 'Awesome', true\n# test with...\nexpect(AwesomeJob).to have_enqueued_sidekiq_job('Awesome', true).immediately\n```\n\n#### Testing queue set for job\n\nUse the chainable `#on` matcher\n\n```ruby\nclass AwesomeJob\n  include Sidekiq::Job\n\n  sidekiq_options queue: :low\nend\n\nAwesomeJob.perform_async(\"a little awesome\")\n\n# test with..\nexpect(AwesomeJob).to have_enqueued_sidekiq_job(\"a little awesome\").on(\"low\")\n\n# Setting the queue when enqueuing\nAwesomeJob.set(queue: \"high\").perform_async(\"Very Awesome!\")\n\nexpect(AwesomeJob).to have_enqueued_sidekiq_job(\"Very Awesome!\").on(\"high\")\n```\n\n#### Testing ActiveMailer jobs\n\n```ruby\nuser = User.first\nAwesomeActionMailer.invite(user, true).deliver_later\n\nexpect(Sidekiq::Worker).to have_enqueued_sidekiq_job(\n  \"AwesomeActionMailer\",\n  \"invite\",\n  \"deliver_now\",\n  user,\n  true\n)\n```\n\n### `have_job`\n\nDescribes that a Sidekiq set (ScheduledSet, RetrySet, DeadSet) should contain a job. Typically used together with [`stub_named_queues`](#stub_named_queues).\n\n```ruby\n# Match any job in the set\nexpect(Sidekiq::ScheduledSet.new).to have_job\n\n# Match a specific job class\nexpect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob)\n\n# With specific arguments\nexpect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob).with('arg')\n\n# A specific number of times\nexpect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob).once\nexpect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob).twice\nexpect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob).exactly(3).times\nexpect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob).at_least(1).time\nexpect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob).at_most(2).times\n```\n\n#### Testing retry jobs\n\n```ruby\nexpect(Sidekiq::RetrySet.new)\n  .to have_job(AwesomeJob)\n  .with('arg')\n  .with_error('something went wrong')\n  .with_error_class(RuntimeError)\n  .with_retry_count(2)\n```\n\n#### Testing dead jobs\n\n```ruby\nexpect(Sidekiq::DeadSet.new)\n  .to have_job(AwesomeJob)\n  .with('arg')\n  .died_within(1.hour)\n```\n\n#### Scanning with a pattern\n\nUse `.scanning(pattern)` to filter by a glob-style pattern matched against the job's JSON representation:\n\n```ruby\nexpect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob).scanning(\"*some_trace_id*\")\n```\n\n### `have_job_option`\n\nDescribes a single Sidekiq option set on a job class:\n\n```ruby\nclass AwesomeJob\n  include Sidekiq::Job\n  sidekiq_options retry: 5, queue: 'critical', dead: false\nend\n\nexpect(AwesomeJob).to have_job_option(:retry, 5)\nexpect(AwesomeJob).to have_job_option(:queue, 'critical')\nexpect(AwesomeJob).to have_job_option(:dead, false)\n```\n\n### `have_job_options`\n\nDescribes multiple Sidekiq options set on a job class:\n\n```ruby\nclass AwesomeJob\n  include Sidekiq::Job\n  sidekiq_options retry: 5, queue: 'critical', backtrace: true\nend\n\nexpect(AwesomeJob).to have_job_options(retry: 5, queue: 'critical', backtrace: true)\n```\n\n### `be_processed_in`\n\n*Describes the queue that a job should be processed in*\n\n```ruby\nsidekiq_options queue: :download\n# test with...\nexpect(AwesomeJob).to be_processed_in :download # or\nit { is_expected.to be_processed_in :download }\n```\n\n### `be_retryable`\n\n*Describes if a job should retry when there is a failure in its execution*\n\nNote: this only tests against the `retry` option in the job's Sidekiq options.\nTo test an enqueued job's retry, i.e. `AwesomeJob.set(retry: 5)`, use\n`with_context`\n\n```ruby\nsidekiq_options retry: 5\n# test with...\nexpect(AwesomeJob).to be_retryable true # or\nit { is_expected.to be_retryable true }\n# ...or alternatively specify the number of times it should be retried\nexpect(AwesomeJob).to be_retryable 5 # or\nit { is_expected.to be_retryable 5 }\n# ...or when it should not retry\nexpect(AwesomeJob).to be_retryable false # or\nit { is_expected.to be_retryable false }\n```\n\n### `save_backtrace`\n\n*Describes if a job should save the error backtrace when there is a failure in its execution*\n\n```ruby\nsidekiq_options backtrace: 5\n# test with...\nexpect(AwesomeJob).to save_backtrace # or\nit { is_expected.to save_backtrace }\n# ...or alternatively specify the number of lines that should be saved\nexpect(AwesomeJob).to save_backtrace 5 # or\nit { is_expected.to save_backtrace 5 }\n# ...or when it should not save the backtrace\nexpect(AwesomeJob).to_not save_backtrace # or\nexpect(AwesomeJob).to save_backtrace false # or\nit { is_expected.to_not save_backtrace } # or\nit { is_expected.to save_backtrace false }\n```\n\n### `be_unique`\n\n\u003e [!CAUTION]\n\u003e This is intended to for Sidekiq Enterprise unique job implementation.\n\u003e There is _limited_ support for Sidekiq Unique Jobs, but compatibility is not\n\u003e guaranteed.\n\n*Describes when a job should be unique within its queue*\n\n```ruby\nsidekiq_options unique_for: 1.hour\n# test with...\nexpect(AwesomeJob).to be_unique\nit { is_expected.to be_unique }\n\n# specify a specific interval\nsidekiq_options unique_for: 1.hour\nit { is_expected.to be_unique.for(1.hour) }\n```\n\n#### `until` sub-matcher\n\n\u003e [!CAUTION]\n\u003e This sub-matcher only works for Sidekiq Enterprise\n\n```ruby\nsidekiq_options unique_for: 1.hour, unique_until: :start\nit { is_expected.to be_unique.until(:start) }\n```\n\n### `be_expired_in`\n\n*Describes when a job should expire*\n\n```ruby\nsidekiq_options expires_in: 1.hour\n# test with...\nit { is_expected.to be_expired_in 1.hour }\nit { is_expected.to_not be_expired_in 2.hours }\n```\n\n### `be_delayed`\n\n**This matcher is deprecated**. Use of it with Sidekiq 7+ will raise an error.\nSidekiq 7 [dropped Delayed\nExtensions](https://github.com/sidekiq/sidekiq/issues/5076).\n\n*Describes a method that should be invoked asynchronously (See [Sidekiq Delayed Extensions][sidekiq_wiki_delayed_extensions])*\n\n```ruby\nObject.delay.is_nil? # delay\nexpect(Object.method :is_nil?).to be_delayed\nObject.delay.is_a? Object # delay with argument\nexpect(Object.method :is_a?).to be_delayed(Object)\n\nObject.delay_for(1.hour).is_nil? # delay for\nexpect(Object.method :is_nil?).to be_delayed.for 1.hour\nObject.delay_for(1.hour).is_a? Object # delay for with argument\nexpect(Object.method :is_a?).to be_delayed(Object).for 1.hour\n\nObject.delay_until(1.hour.from_now).is_nil? # delay until\nexpect(Object.method :is_nil?).to be_delayed.until 1.hour.from_now\nObject.delay_until(1.hour.from_now).is_a? Object # delay until with argument\nexpect(Object.method :is_a?).to be_delayed(Object).until 1.hour.from_now\n\n#Rails Mailer\nMyMailer.delay.some_mail\nexpect(MyMailer.instance_method :some_mail).to be_delayed\n```\n\n## Example matcher usage\n\n```ruby\nrequire 'spec_helper'\n\ndescribe AwesomeJob do\n  it { is_expected.to be_processed_in :my_queue }\n  it { is_expected.to be_retryable 5 }\n  it { is_expected.to be_unique }\n  it { is_expected.to be_expired_in 1.hour }\n\n  it 'enqueues another awesome job' do\n    subject.perform\n\n    expect(AnotherAwesomeJob).to have_enqueued_sidekiq_job('Awesome', true)\n  end\nend\n```\n\n## Helpers\n\n* [`stub_named_queues`](#stub_named_queues)\n* [Batches (Sidekiq Pro) _experimental_](#batches)\n* [`within_sidekiq_retries_exhausted_block`](#within_sidekiq_retries_exhausted_block)\n\n### `stub_named_queues`\n\nIf you need to test jobs in Sidekiq's named sets (ScheduledSet, RetrySet, DeadSet) without\na Redis instance, opt-in with `stub_named_queues: true`. This replaces those sets with\nin-memory implementations backed by a `JobStore`.\n\n```ruby\nRSpec.describe \"Scheduled jobs\", stub_named_queues: true do\n  it \"schedules a job\" do\n    AwesomeJob.perform_at(1.hour.from_now, 'arg')\n\n    expect(Sidekiq::ScheduledSet.new).to have_job(AwesomeJob).with('arg')\n  end\n\n  it \"tracks retry jobs via the job store\" do\n    store = RSpec::Sidekiq::NamedQueues.job_store\n    store.add_retry(\n      \"class\" =\u003e \"AwesomeJob\",\n      \"args\" =\u003e [\"arg\"],\n      \"error_message\" =\u003e \"boom\",\n      \"error_class\" =\u003e \"RuntimeError\",\n      \"retry_count\" =\u003e 1\n    )\n\n    expect(Sidekiq::RetrySet.new)\n      .to have_job(AwesomeJob)\n      .with_error('boom')\n      .with_retry_count(1)\n  end\n\n  it \"tracks dead jobs via the job store\" do\n    store = RSpec::Sidekiq::NamedQueues.job_store\n    store.add_dead(\n      \"class\" =\u003e \"AwesomeJob\",\n      \"args\" =\u003e [\"arg\"],\n      \"failed_at\" =\u003e Time.now.to_f\n    )\n\n    expect(Sidekiq::DeadSet.new)\n      .to have_job(AwesomeJob)\n      .died_within(1.minute)\n  end\nend\n```\n\n### Batches\n\nIf you are using Sidekiq Batches ([Sidekiq Pro feature][sidekiq_wiki_batches]),\nYou can *opt-in* with `stub_batches` to make `rspec-sidekiq` mock the\nimplementation (using a NullObject pattern). This enables testing without a\nRedis instance. Mocha and RSpec stubbing is supported here.\n\n\u003e [!CAUTION]\n\u003e Opting-in to this feature, while allowing you to test without\n\u003e having Redis, _does not_ provide the exact API that `Sidekiq::Batch` does. As\n\u003e such it can cause surprises.\n\n```ruby\nRSpec.describe \"Using mocked batches\", stub_batches: true do\n  it \"uses mocked batches\" do\n    batch = Sidekiq::Batch.new\n    batch.jobs do\n      SomeJob.perform_async 123\n    end\n\n    expect(SomeJob).to have_enqueued_sidekiq_job\n\n    # Caution, the NullObject pattern means that the mocked Batch implementation\n    # responds to anything... even if it's not on the true `Sidekiq::Batch` API\n    # For example, the following fails\n    expect { batch.foobar! }.to raise_error(NoMethodError)\n  end\nend\n```\n\n### within_sidekiq_retries_exhausted_block\n\n```ruby\nsidekiq_retries_exhausted do |msg|\n  bar('hello')\nend\n# test with...\nFooClass.within_sidekiq_retries_exhausted_block {\n  expect(FooClass).to receive(:bar).with('hello')\n}\n```\n\n## Testing\n\n```\nbundle exec rspec\n```\n\n## Maintainers\n\n* [@wspurgin]\n* [@ydah]\n\n### Alumni\n\n* [@packrat386]\n* [@philostler]\n\n## Contribute\n\nPlease do! If there's a feature missing that you'd love to see then get in on the action!\n\nIssues/Pull Requests/Comments all welcome...\n\n[@packrat386]: https://github.com/packrat386\n[@philostler]: https://github.com/philostler\n[@wspurgin]: https://github.com/wspurgin\n[@ydah]: https://github.com/ydah\n[github_actions]: https://github.com/wspurgin/rspec-sidekiq/actions\n[github_actions_badge]: https://github.com/wspurgin/rspec-sidekiq/actions/workflows/main.yml/badge.svg\n[rspec_sidekiq_wiki_faq_\u0026_troubleshooting]: https://github.com/wspurgin/rspec-sidekiq/wiki/FAQ-\u0026-Troubleshooting\n[sidekiq_wiki_batches]: https://github.com/sidekiq/sidekiq/wiki/Batches\n[sidekiq_wiki_delayed_extensions]: https://github.com/sidekiq/sidekiq/wiki/Delayed-Extensions\n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["activerecord","activejob","mvc","rubygems","sidekiq","jobs","background-jobs","rspec","crash-reporting","rack"],"project_url":"https://ruby.ecosyste.ms/api/v1/projects/410","html_url":"https://ruby.ecosyste.ms/projects/410"}