{"id":14955264,"url":"https://github.com/ianks/nicetest","last_synced_at":"2025-10-24T07:31:08.286Z","repository":{"id":247849498,"uuid":"827009254","full_name":"ianks/nicetest","owner":"ianks","description":"minitest + cli + colors","archived":false,"fork":false,"pushed_at":"2025-01-11T19:14:15.000Z","size":38,"stargazers_count":27,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-04T19:11:19.685Z","etag":null,"topics":["minitest","rails","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ianks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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}},"created_at":"2024-07-10T20:45:29.000Z","updated_at":"2025-01-11T19:14:18.000Z","dependencies_parsed_at":"2024-09-21T22:30:36.596Z","dependency_job_id":null,"html_url":"https://github.com/ianks/nicetest","commit_stats":{"total_commits":18,"total_committers":2,"mean_commits":9.0,"dds":"0.38888888888888884","last_synced_commit":"d18f36fe4e25ca72186bee034e4f1ecd51ab1703"},"previous_names":["ianks/nicetest"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianks%2Fnicetest","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianks%2Fnicetest/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianks%2Fnicetest/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ianks%2Fnicetest/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ianks","download_url":"https://codeload.github.com/ianks/nicetest/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237932070,"owners_count":19389560,"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":["minitest","rails","ruby"],"created_at":"2024-09-24T13:10:47.085Z","updated_at":"2025-10-24T07:31:02.777Z","avatar_url":"https://github.com/ianks.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ☀️ nicetest\n\nEnhance your minitest experience with nicetest—a gem offering a CLI, pretty\nassertion diffs, pre-configured reporters, focus checks, and colorful backtrace\nfilters for seamless test running.\n\n## Features\n\n- A decent CLI for running tests, which is compatible with existing minitest plugin options\n- Fancier diffs using [`super_diff`](https://github.com/mcmire/super_diff)\n- Bundled [`minitest-reporters`](https://github.com/minitest-reporters/minitest-reporters), with defaults configured\n- Bundled [`minitest-focus`](https://github.com/minitest/minitest-focus), with CI sanity check\n- A pretty backtrace filter\n\n## Usage\n\n### Take it with you\n\n`nicetest` runs well on most `minitest` suites without hassle, so you can just\nuse it wherever you happen to be:\n\n```sh\n# Gem install it\n$ gem install nicetest\n\n# Go into a repo\n$ git clone https://github.com/Shopfy/liquid; cd liquid; bundle install\n\n# Run a test\n❯ nicetest --reporter doc test/integration/capture_test.rb:14\nStarted with run options --reporter doc --name=/CaptureTest#test_capture_with_hyphen_in_variable_name/ --seed 24518\n\nCaptureTest\n  test_capture_with_hyphen_in_variable_name                       PASS (0.00s)\n\nFinished in 0.00115s\n1 tests, 1 assertions, 0 failures, 0 errors, 0 skips\n\n# JUnit is easy\n❯ nicetest --reporter junit,progress                          \nEmptying /Users/ianks/Code/Shopify/liquid/tmp/nicetest/junit/1721874837\nStarted with run options --reporter junit,progress --seed 36139\n\n  799/799: [================================================================================] 100% Time: 00:00:00, Time: 00:00:00\nWriting XML reports to /Users/ianks/Code/Shopify/liquid/tmp/nicetest/junit/1721874837\n\nFinished in 0.94625s\n799 tests, 1924 assertions, 0 failures, 0 errors, 0 skips\n\n# Filter by name\n❯ nicetest --name=/assign/ \nStarted with run options --name=/assign/ --seed 44734\n\n  33/33: [====================================================================================] 100% Time: 00:00:00, Time: 00:00:00\n\nFinished in 0.03157s\n33 tests, 69 assertions, 0 failures, 0 errors, 0 skips\n```\n\n### Add to project\n\n\nAdd to your `test_helper.rb`:\n\n```ruby\n# test/test_helper.rb\n\nrequire \"nicetest\"\n\n# whatever else you do... can probably remove some stuff\n```\n\nThen, make it easy to run:\n\n```sh\n# Add to Gemfile\n$ bundle add nicetest\n\n# Make a bin/test executable\n$ bundle binstub nicetest \u0026\u0026 mv bin/nicetest bin/test\n```\n\nYou can run it now:\n\n```sh\n# Run tests\n$ bin/test\n\n# In CI\n$ bin/test --reporter doc,junit\n```\n\n### What about Rakefile?\n\nIf you want to use Rake, just do this:\n\n```ruby\n# Rakefile\n\ntask :test do\n  sh(\"bin/test\")\nend\n```\n\n## Recognition\n\n- [minitest] for superb testing\n- [minitest-reporters] for the excellent reporting\n- [super_diff] for the pretty diffs\n- [prism] for the blissful parser\n- [pastel] for the pretty colors\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at\nhttps://github.com/ianks/nicetest.\n\n## License\n\nThe gem is available as open source under the terms of the [MIT\nLicense](https://opensource.org/licenses/MIT).\n\n[minitest]: https://github.com/minitest/minitest\n[minitest-reporters]: https://github.com/minitest-reporters/minitest-reporters\n[super_diff]: https://github.com/mcmire/super_diff\n[prism]: https://github.com/ruby/prism\n[pastel]: https://github.com/piotrmurach/pastel\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fianks%2Fnicetest","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fianks%2Fnicetest","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fianks%2Fnicetest/lists"}