diff options
author | Robert Collins <robertc@robertcollins.net> | 2010-01-09 17:16:09 +1100 |
---|---|---|
committer | Robert Collins <robertc@robertcollins.net> | 2010-01-09 17:16:09 +1100 |
commit | 8a6b4858e037f2899956b2ec4fd3f64fc18c8689 (patch) | |
tree | f2a53c52dc4bfef9768a5509f5dfde3b7eb546c0 /doc | |
parent | 0e75992a7a2f2d850066a21e3d0cf958b8174e32 (diff) | |
download | testrepository-8a6b4858e037f2899956b2ec4fd3f64fc18c8689.tar.gz |
Design docs.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/DESIGN.txt | 29 | ||||
-rw-r--r-- | doc/DEVELOPERS.txt | 3 |
2 files changed, 32 insertions, 0 deletions
diff --git a/doc/DESIGN.txt b/doc/DESIGN.txt index 8b6e600..840787e 100644 --- a/doc/DESIGN.txt +++ b/doc/DESIGN.txt @@ -4,6 +4,35 @@ Design / Architecture of Test Repository Values ~~~~~~ +Code reuse. +Focus on the project. +Do one thing well. + Goals ~~~~~ +Achieve a Clean UI, responsive UI, small-tools approach. Simulataneously have +a small clean code base which is easily approachable. + +Data model/storage +~~~~~~~~~~~~~~~~~~ + +testrepository stores subunit streams as subunit streams in .testrespository +with simple additional metadata - a format marker to allow this to be changed +in the future, and a next-stream counter counting the id to give the next +stream. + +Code layout +~~~~~~~~~~~ + +One conceptual thing per module, packages for anything where multiple types +are expected (e.g. testrepository.commands, testrespository.ui). + +Generic driver code should not trigger lots of imports: code dependencies +should be loaded when needed. For example, argument validation uses argument +types that each command can import, so the core code doesn't need to know about +all types. + +The tests for the code in testrepository.foo.bar is in +testrepository.tests.foo.test_bar. Interface tests for testrepository.foo is +in testrepository.tests.test_foo. diff --git a/doc/DEVELOPERS.txt b/doc/DEVELOPERS.txt index fc090b6..5995cba 100644 --- a/doc/DEVELOPERS.txt +++ b/doc/DEVELOPERS.txt @@ -30,3 +30,6 @@ of Test Repository, and there is no automated test-before-merge process at the moment. The quid pro quo for committers is that they should check that the automated job found their change acceptable after merging it, and either roll it back or fix it immediately. A broken trunk is not acceptable! + +See DESIGN.txt for information about code layout which will help you find +where to add tests (and indeed where to change things). |