redo-whichdo: fix a bug where the last dir was checked twice, and add tests.
When we can't find a .do file, we walk all the way back to the root directory. When that happens, the root directory is actually searched twice. This is harmless (since a .do file doesn't exist there anyway) but causes redo-whichdo to produce the wrong output. Also, add a test, which I forgot to do when writing whichdo in the first place. To make the test work from the root directory, we need a way to initialize redo without actually creating a .redo directory. Add a init_no_state() function for that purpose, and split the necessary path functions into their own module so we can avoid importing builder.py.
This commit is contained in:
parent
f835becde4
commit
e40dc5bad2
10 changed files with 133 additions and 50 deletions
|
|
@ -1,5 +1,13 @@
|
|||
import sys, os
|
||||
|
||||
|
||||
def init_no_state():
|
||||
if not os.environ.get('REDO'):
|
||||
os.environ['REDO'] = 'NOT_DEFINED'
|
||||
if not os.environ.get('REDO_BASE'):
|
||||
os.environ['REDO_BASE'] = 'NOT_DEFINED'
|
||||
|
||||
|
||||
def init(targets):
|
||||
if not os.environ.get('REDO'):
|
||||
# toplevel call to redo
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue