Hi !

Lately I've been working on the functional test suite of Bloodhound
RPC plugin and I stumbled upon a few facts regarding the use of tracd,
which I need for the functional test suite. What I'm doing now is
basically to enhance the existing test suite to introduce the concept
of functional tester applied to RPC.

http://rpc.blood-hound.net/changeset/ba8a5d71df6d/rpc
http://rpc.blood-hound.net/changeset/818dce534d81/rpc

If you take a look into the details then you'll notice that RPC
testers are mixins enhancing the usual functional testers by adding
methods useful to instantiate RPC server proxy objects. Using it to
enhancing BloodhoundFunctionalTester class is the obvious next step
but ... there is a subtle dichotomy .

  1. the regular Bloodhound functional test run starts tracd wit no auth
     because that's managed by trachacks:AccountManagerPlugin , and thereby
     RPC requests won't be authenticated
     * this is recommended in the installation procedure
       https://issues.apache.org/bloodhound/wiki/BloodhoundInstall
  2. since BH default install uses digest files for passwords, it's
     straightforward to recommend the same auth scheme for RPC, therefore
     the logical conclusion for the default test suite would be to
     start tracd by supplying --auth param , but ...
     * ... by doing so it's impossible to log in to the BH site under test
       because requests sent to /login path are intercepted by tracd
       auth middlewares.
     * as a consequence functional tester login will always halt
     * and in real deployments based on tracd (if any) this means that
       either trachacks:AccountManager will be useless or it will be
       impossible to perform authenticated RPC requests.

(My) conclusions are that in spite of making auth compatible with BH
default install tracd must be modified in such a way that /login path
will be excluded of HTTP digest auth zone , as opposite to everything
else under that path e.g. /login/rpc

The question is how to achieve this ? By introducing a new parameter
in tracd ? By supplying a regular expression ? Any other suggestions ?
Does this deserve to be backported to Trac (afaict, this will be an
issue for similar Trac deployments too) ?

PS: BTW, is there any plan for milestone:"Release 8" to enhance the
changesets view ?

-- 
Regards,

Olemis - @olemislc

Apache™ Bloodhound contributor
http://issues.apache.org/bloodhound
http://blood-hound.net

Blog ES: http://simelo-es.blogspot.com/
Blog EN: http://simelo-en.blogspot.com/

Featured article:

Reply via email to