~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to HACKING

Hacking notes on TDD

Show diffs side-by-side

added added

removed removed

Lines of Context:
21
21
  core improvements should be tested closer to the code that is doing the
22
22
  work. Command line level tests should be placed in 'blackbox.py'.
23
23
 
24
 
* Before fixing a bug, write a test case so that it does not regress.
 
24
* Try to practice Test-Driven Development.  before fixing a bug, write a
 
25
  test case so that it does not regress.  Similarly for adding a new
 
26
  feature: write a test case for a small version of the new feature before
 
27
  starting on the code itself.  Check the test fails on the old code, then
 
28
  add the feature or fix and check it passes.
25
29
 
26
30
* Exceptions should be defined inside bzrlib.errors, so that we can
27
31
  see the whole tree at a glance.
34
38
* Module names should always be given fully-qualified,
35
39
  i.e. ``bzrlib.hashcache`` not just ``hashcache``.
36
40
 
37
 
* Commands should return Non-Zero when they encounter circumstances that
 
41
* Commands should return non-zero when they encounter circumstances that
38
42
  the user should really pay attention to - which includes trivial shell
39
43
  pipelines.
40
44