{"id":16940604,"url":"https://github.com/halostatue/minitest-bonus-assertions","last_synced_at":"2025-04-11T19:23:08.352Z","repository":{"id":28199634,"uuid":"31701950","full_name":"halostatue/minitest-bonus-assertions","owner":"halostatue","description":"Useful Minitest assertions, and assertions for testing Minitest assertions","archived":false,"fork":false,"pushed_at":"2022-09-03T03:49:00.000Z","size":32,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-11T19:23:03.275Z","etag":null,"topics":["assertions","minitest","ruby"],"latest_commit_sha":null,"homepage":"","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/halostatue.png","metadata":{"files":{"readme":"README.rdoc","changelog":"History.rdoc","contributing":"Contributing.rdoc","funding":null,"license":null,"code_of_conduct":"Code-of-Conduct.rdoc","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-05T07:45:52.000Z","updated_at":"2018-02-28T17:11:08.000Z","dependencies_parsed_at":"2022-08-20T13:10:54.064Z","dependency_job_id":null,"html_url":"https://github.com/halostatue/minitest-bonus-assertions","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/halostatue%2Fminitest-bonus-assertions","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/halostatue%2Fminitest-bonus-assertions/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/halostatue%2Fminitest-bonus-assertions/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/halostatue%2Fminitest-bonus-assertions/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/halostatue","download_url":"https://codeload.github.com/halostatue/minitest-bonus-assertions/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248465353,"owners_count":21108244,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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"}},"keywords":["assertions","minitest","ruby"],"created_at":"2024-10-13T21:07:28.359Z","updated_at":"2025-04-11T19:23:08.319Z","avatar_url":"https://github.com/halostatue.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"= minitest-bonus-assertions\n\ncode :: https://github.com/halostatue/minitest-bonus-assertions\nbugs :: https://github.com/halostatue/minitest-bonus-assertions/issues\ncontinuous integration :: {\u003cimg src=\"https://travis-ci.org/halostatue/minitest-bonus-assertions.png\" /\u003e}[https://travis-ci.org/halostatue/minitest-bonus-assertions]\n\n== Description\n\nBonus assertions for {Minitest}[https://github.com/seattlerb/minitest],\nproviding assertions I use frequently, supporting only Ruby 2.0 or better.\n\n== Features\n\nNew assertions:\n\n* +assert_false+: requires that the value be exactly +false+. (+must_be_false+)\n* +assert_true+: requires that the value be exactly +true+. (+must_be_true+)\n* +assert_between+: requires that the value be strictly between the low and\n  high values provided, or the range (this test is boundary-exclusive).\n  (+must_be_between+)\n* +assert_has_keys+/+refute_missing_keys+: requires that the object contains all\n  of the keys expected. (+must_have_keys+)\n* +assert_missing_keys+/+refute_has_keys+: requires that the object *not* have\n  any of the keys expected. (+must_not_have_keys+)\n* +assert_raises_with_message+: requires that the exception raised in the\n  provided block has a specific message (tested with +assert_equal+).\n  (+must_raise_with_message+)\n* +assert_set_equal+: requires that the actual enumerable have the same values\n  as the expected enumerable, without regard to order and ignoring duplicate\n  values. (+must_equal_set+)\n* +refute_set_equal+: requires that the actual enumerable *not* have the same\n  values as the expected enumerable. (+must_not_equal_set+)\n* +assert_result_equal+: requires that the actual is equal to the result of\n  evaluating an expression.\n\nI am also providing the Minitest-tester code I use as something that can be\nrequired by other developers. This should *only* be used to test Minitest\nassertions and extensions. For more information on Minitest::AssertionTests,\nsee its documentation.\n\n== Background\n\nminitest-bonus-assertions started life as a patch to Ben Somer’s\n{minitest-extra-assertions}[https://github.com/bensomers/minitest-extra-assertions].\nThere were some nice assertions included, but there were other changes that\nneeded to be made to bring it up to support Minitest 5. There was also an\noverride to the default +assert_match+ implementation meant to ease the\ntransition from Test::Unit (the main reason he wrote this assertion plugin for\nMinitest in the first place). I do not believe this is sensible five major\nversions into Minitest: I removed it. Ben did not feel comfortable making this\nparticular change, so I felt that the best way to provide the original\nassertions and my new assertions—without the +assert_match+ override—was to\nfork this as a new project. I am indebted to Ben and his contributors for\nwriting these assertions in the first place.\n\n== Install\n\nAdd it to your Gemfile:\n\n  gem 'minitest-bonus-assertions', '~\u003e 1.1'\n\nOr manually install:\n\n  % gem install minitest-bonus-assertions\n\n== minitest-bonus-assertions Semantic Versioning\n\nminitest-bonus-assertions uses a {Semantic Versioning}[http://semver.org/]\nscheme with one change:\n\n* When PATCH is zero (+0+), it will be omitted from version references.\n\n:include: Code-of-Conduct.rdoc\n\n:include: Contributing.rdoc\n\n:include: Licence.rdoc\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhalostatue%2Fminitest-bonus-assertions","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhalostatue%2Fminitest-bonus-assertions","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhalostatue%2Fminitest-bonus-assertions/lists"}