Hi Tom
Thanks for pointing me to Test::mysqld. You're right - it's exactly what I
need! I'll give it a try here and then move it into AutoDB.
You also correctly surmised that both Babel and AutoDB assume it's okay for
their tests to scribble on a db called 'test'. Test::mysqld is a much better
solution.
Thanks again,
Nat
On Jul 27, 2013, at 9:50 AM, Tom Molesworth wrote:
> Hi Nat,
>
> On 27/07/13 16:40, Nathan (Nat) Goodman wrote:
>> Hi Chris
>>
>> I'm guessing you made some change because I saw some test reports from you
>> reporting FAIL and UNKNOWN. I've decided to take a different tack.
>>
>> To reiterate what I'm trying to do: The module in question, Data::Babel,
>> relies heavily on MySQL, and the tests require the ability to create and
>> drop MySQL databases, tables, etc. The distribution includes a check for
>> these capabilities. I'm trying to find a clean way to communicate to the
>> installation driver that the required capabilities are not available. This
>> is very common. If I simply generate a FAIL under these conditions, the
>> module will accumulate a large pile of FAIL reports which I deem to be
>> undesirable.
>
> It seems like this would be an ideal candidate for test_requires => {
> 'Test::mysqld' => 0 }, since if that installs successfully then the mysql
> basics have already been tested for you. It would also avoid polluting any
> existing mysql databases (I'm not entirely clear on how
> Data::Babel/Class::AutoDB select and use a database but a quick glance at
> tests seems to indicate it's a db called 'test' on the localhost mysql
> server?).
>
> cheers,
>
> Tom
>