{"id":16567440,"url":"https://github.com/badgerati/node-edison","last_synced_at":"2025-03-05T10:29:46.242Z","repository":{"id":146595499,"uuid":"86853524","full_name":"Badgerati/node-edison","owner":"Badgerati","description":"This is the node.js version of the Edison .NET unit testing framework","archived":false,"fork":false,"pushed_at":"2017-04-04T20:22:43.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-15T23:55:02.145Z","etag":null,"topics":["assert","continuous-testing","edison","integration-testing","nodejs","parallel","regression-testing","system-testing","test-framework","tests","unit-testing"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/Badgerati.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":"2017-03-31T19:28:39.000Z","updated_at":"2017-04-01T18:12:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"e8b96799-cc35-4cd4-80d5-0a8f0c331a4e","html_url":"https://github.com/Badgerati/node-edison","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Badgerati%2Fnode-edison","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Badgerati%2Fnode-edison/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Badgerati%2Fnode-edison/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Badgerati%2Fnode-edison/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Badgerati","download_url":"https://codeload.github.com/Badgerati/node-edison/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242009123,"owners_count":20057030,"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":["assert","continuous-testing","edison","integration-testing","nodejs","parallel","regression-testing","system-testing","test-framework","tests","unit-testing"],"created_at":"2024-10-11T21:06:35.998Z","updated_at":"2025-03-05T10:29:46.219Z","avatar_url":"https://github.com/Badgerati.png","language":"JavaScript","readme":"# Edison for Node.js (Alpha)\n\nThis is the Node.js version of Edison, if you're after the .NET version go [here](https://github.com/Badgerati/Edison).\n\nThis is still in alpha, so use at own risk. Though from testing it's pretty reliable.\n\n## Features\n\n* Framework with Assert class for writing unit/integration tests.\n* Allows you to have setup/teardown for each test-file, as well as each test.\n* Can run tests async or sync.\n* CLI binary to run multiple test-files.\n* Able to have multiple test-cases for tests.\n* Set categories against tests to include/exclude specific ones during a full run.\n* Ability to store versioned console parameters in an Edisonfile.\n\n## Usage\n\nSee the `examples/quick-start.test.js`, and other files in `examples`, for usages.\n\nQuick example:\n\n```js\nvar edison = require('../lib/edison.js').create();\n\nedison.test('test-name', function(assert, done) {\n    var x = 3;\n    assert.areEqual(3, x); // will fail if x is not 3\n    done(); // must be called at a point where the test will have succesfully ended\n});\n\nedison.run();\n```\n\nand to run:\n\n```batch\nnode bin\\edison examples\\*.tests.js\n```\n\nor if you're using an Edisonfile, just:\n\n```batch\nnode bin\\edison\n```\n\nAn example of the output in 'dot' format on the CLI is:\n\n```batch\n.......\n\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\nTotal: 7, Passed: 7, Failed: 0, Errored: 0, Inconclusive: 0, Skipped: 0\nSuccess Rate: 1.0\nFailure Rate: 0.0\nDuration: 0d 0h 0m 1s 19ms\n= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =\n```\n\nwhere the fullstops at the top indicate tests that have passed. Failed tests will appear as either 'F' or 'E' (Failed or Errored). Any tests that fail will be displayed after all tests have run. If any tests have failed the process will return with an exit code of 1, otherwise 0 for success.\n\n## Edisonfile\n\nThe `Edisonfile` allows you to save, and version control, the arguments that you can supply to the binary. The file is of YAML format and should be saved at the root of your repository.\nThe following is an example of the format:\n\n```yaml\ntest_files:\n  - tests\\*.tests.js\n\ndisable_console_output: true\nconsole_output_type: dot\nsync_type: async\n```\n\nTo use, just run run the `edison` binary at the root, with no arguments supplied. The framework will locate the Edisonfile and populate the parameters accordingly.\n\nFor example, the above will be just like running:\n\n```batch\nnode bin\\edison tests\\*.tests.js --dco --cot dot --st async\n```\n\n## Bugs and Feature Requests\n\nFor any bugs you may find or features you wish to request, please create an [issue](https://github.com/Badgerati/node-edison/issues \"Issues\") in GitHub.\n\n\n### TODO\n\n* Write results to file\n* Send results to URL\n* Send results to Slack\n* Re-run failed tests\n* The 'tests' in Edisonfile should be to only run specific tests\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbadgerati%2Fnode-edison","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbadgerati%2Fnode-edison","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbadgerati%2Fnode-edison/lists"}