On Sun, 2014-03-02 at 14:55 -0500, Gary Oberbrunner wrote: > As far as I understand it, env.Detect calls env.WhereIs with path=None, > which means it uses env['ENV']['PATH']. By default, a new Environment > doesn't inherit the user's shell environment into env['ENV'], but users can > modify it as they want. So in a real user's code, the path Detect will use > depends on what they put into their SConstruct. > > I see your point about the tests being more lenient in where they look; it > makes it hard to skip tests reliably. Perhaps the tests that do that > should add their executable's dir to env['ENV']['PATH'] when running the > tests? If you like that, perhaps we could codify it by making it easy to > do from the test framework.
The point for me is that TestSCons.TestSCons().where_is(x) appears not to be following the same rules as env.Detect and it should. This then raises the issue you are hinting at: the base PATH only includes the standard "out of the box", "newly installed" OS path. This is fine for me actually, but if, and only if, there is a way for a test environment to declare a new base PATH because it has to. An example: my Debians have dmd and gdc from packages so they are in the base path. My Fedoras have no gdc (because, … well let's leave that there :-). None of them have an up to date ldc2 so that is only found in the location I set because it is not packaged. My OSX has a very similar set up to my Fedora. Using only the pure base path, I can never test gdc and ldc2 related tests, unless there is some way of setting the base path for env.Detect. This has to be on a per-test location basis, not hardwired in code of SCons and it's tests since where anyone else has dmd, gdc and ldc2 may be different. Having an entry 'test_base_path = '...' in a ~/.scons/settings.py or something similar would work fine for me. This only alters the behaviour for tests, not for normal execution. -- Russel. ============================================================================= Dr Russel Winder t: +44 20 7585 2200 voip: sip:[email protected] 41 Buckmaster Road m: +44 7770 465 077 xmpp: [email protected] London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder _______________________________________________ Scons-dev mailing list [email protected] http://two.pairlist.net/mailman/listinfo/scons-dev
