Recently Gavin pushed some first unit tests to the bitcoin source tree, which is really good and definitely needed.
It made me think though, that the unit tests are very low level, and that it would be really nice to also have "test bitcoin as a black box using JSPON-RPC calls" approach.
So I was thinking about starting a Rails app that does the following thing :
Each time a commit is pushed upstream
- The code is fetched, and built
- The low level unit tests are run and results recorded
- If the build was successful, a defined wallet and blockchain dump are put in place
- The client is launched and given the opportunity to re-scan
- Behaviour tests are run (written in Ruby), for example :
class BasicTests < UnitTest
test "should honor credentials" do
response = Bitcoin::Client.rpc_call(wrong_credentials)
assert_equal 401, response.status
end
end
- Nice reporting and notifications are presented to developers and the public
So, my questions are :
- Does anyone think this is desirable,
- Would anyone be willing to contribute application code and tests code if I start and lead the project ?
That'll be all for now