> Feb 12 2006 12:38am from IGnatius T Foobar @uncnsrd 
 >A full regression suite is one of those things that we'd like to have, 
 >but haven't implemented because we're still somewhat short-handed.  

Consider myself an extra two hands on the team :) My associate at work
has also been working with me on Citadel stuff, and I believe has been
tinkering with getting it to run on Mac OSX.  I'm sure he'll be
lurking here before too long.

 > Currently we test by deploying new code here on Uncensored.  Our user 
 >community can usually shake out any bugs within a couple of hours.  I 
 >realize that this is somewhat suboptimal, but it's really all we have 
 >available.  
 
One of the things I want to do for CivisLink, once I implement just a
few more commands, is to remove the current "Fake Server"
implementation, and replace it with a harness that would:

1. If necessary, compile db, libical,
and citadel, and install to a
   location local to the test environment.

2. For each test case,

   a. Remove citadel data from test environment.

   b. Start citadel as a concurrent child process, storing data in the
      test environment.

   c. Run any pre-test initialization such as creation of aide user.

   d. Run the test case.

   e. Kill child process.

Using the fake server with a fake connection is nice and fast for
running unit tests, but slow for development.  I don't want to
reimplement a Citadel server in Python (at least not yet!) so it makes
more sense to run Citadel itself in a controlled environment.

So, what this could ultimately grow into is not only tests to ensure
CivisLink is operating properly, but a set of tests that document and
demonstrate several paths of code in Citadel itself.

Reply via email to