{"id":19903222,"url":"https://github.com/nethereum/nethereum.testrpcrunner","last_synced_at":"2026-04-20T14:05:33.516Z","repository":{"id":89829019,"uuid":"78792708","full_name":"Nethereum/Nethereum.TestRPCRunner","owner":"Nethereum","description":"TestRPC embedded to simplify unit test integration ","archived":false,"fork":false,"pushed_at":"2017-05-12T15:27:05.000Z","size":2005,"stargazers_count":3,"open_issues_count":1,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-10-26T02:22:40.612Z","etag":null,"topics":["atd","bdd","ethereum","nethereum","testing","testrpc"],"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/Nethereum.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2017-01-12T22:29:05.000Z","updated_at":"2020-04-22T18:49:25.000Z","dependencies_parsed_at":"2023-07-25T15:17:26.999Z","dependency_job_id":null,"html_url":"https://github.com/Nethereum/Nethereum.TestRPCRunner","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Nethereum/Nethereum.TestRPCRunner","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nethereum%2FNethereum.TestRPCRunner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nethereum%2FNethereum.TestRPCRunner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nethereum%2FNethereum.TestRPCRunner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nethereum%2FNethereum.TestRPCRunner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nethereum","download_url":"https://codeload.github.com/Nethereum/Nethereum.TestRPCRunner/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nethereum%2FNethereum.TestRPCRunner/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32050454,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T11:35:06.609Z","status":"ssl_error","status_checked_at":"2026-04-20T11:34:48.899Z","response_time":94,"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"}},"keywords":["atd","bdd","ethereum","nethereum","testing","testrpc"],"created_at":"2024-11-12T20:22:38.015Z","updated_at":"2026-04-20T14:05:33.498Z","avatar_url":"https://github.com/Nethereum.png","language":"JavaScript","readme":"# Nethereum TestRPCRunner\n[TestRpc](https://github.com/ethereumjs/testrpc) embedded in Nethereum to simplify smart contract and Ethereum integration testing. \n\nThe Nethereum TestRpc runner, it embeds the portable (packed) version of Test Rpc and allows to launch / close on demand any Ethereum Test Rpc server managed by .Net.\nIt has been tested in Windows, Linux and Osx.\n\n## Installation and different versions\nLatest version of Node is recommended.\n\nThere are 2 versions / projects. A generic .net 4.5 and a .Net standard 1.3, both sharing the same code and functionality. \nThe .Net 4.5 has been created for simpler integration with Visual Studio and the .Net standard for portability and .net core support. \n\n| Package       | Nuget         | \n| ------------- |:-------------:|\n| Nethereum.TestRpcRunner    | [![NuGet version](https://badge.fury.io/nu/nethereum.testrpcrunner.svg)](https://badge.fury.io/nu/nethereum.testrpcrunner)| \n| Nethereum.TestRpcRunner.Net45| [![NuGet version](https://badge.fury.io/nu/nethereum.testrpcrunner.net45.svg)](https://badge.fury.io/nu/nethereum.testrpcrunner.net45)|\n\n## Usage\n\nJust create a new instance of the launcher and use the Arguments property to specify any options for TestRpc.  For more info on the different type of options check the TestRpc [Readme](https://github.com/ethereumjs/testrpc) in Github.  \n\n```csharp\n  var launcher = new TestRPCEmbeddedRunner();\n  launcher.RedirectOuputToDebugWindow = true;\n  launcher.Arguments = \"--port 8546\";\n  launcher.StartTestRPC();\n```\nFinally execute  ```StopTestRPC()``` to stop the server and remove any temporary files.\n\nTo ensure cleaning all resources call \"Dispose()\". \n\n### Unit testing\nThere is a sample included, which demonstrates how to integrate TestRpc with your tests\n\n```csharp\n\n  [Fact]\n        public async void ShouldDeployAContractWithConstructor()\n        {\n            using (var testrpcRunner = new TestRPCEmbeddedRunner())\n            {\n                try\n                {\n                    testrpcRunner.RedirectOuputToDebugWindow = true;\n                    testrpcRunner.StartTestRPC();\n                    .........\n                } finally {\n                    testrpcRunner.StopTestRPC();  \n                }\n\n```\n\n### BDD / ATD feature tests\n\nThere is a sample included which demonstrates how to create Gherkin style written features, enable the integration of executable specifications with smart contracts.\n\n```Gherkin\n@needsTestRPC\nFeature: ContractMultiplication\n\tIn order to avoid silly mistakes\n\tAs a ethereum user\n\tI want to multiply a number\n\nScenario: Multiplication by 7\nGiven I have deployed a multiplication contract with multipler of 7\n\tWhen I call multiply using 7\n\tThen the multiplication result should be 49\n\n\nScenario Outline: Multiplication\n\tGiven I have deployed a multiplication contract with multipler of \u003cinitialMultiplier\u003e\n\tWhen I call multiply using \u003cmultiplier\u003e\n\tThen the multiplication result should be \u003cmultiplicationResult\u003e\n\n\tExamples:\n\t| initialMultiplier | multiplier | multiplicationResult |\n\t| 7                 | 7          | 49                   |\n\t| 7                 | 8          | 56                   |\n\t| 3                 | 3          | 9                    |\n\n``` ","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnethereum%2Fnethereum.testrpcrunner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnethereum%2Fnethereum.testrpcrunner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnethereum%2Fnethereum.testrpcrunner/lists"}