Re: NAME field

2004-04-02 Thread Hans Oesterholt-Dijkema
Good point. Any suggestions?

With this module it's possible to have 1 Conf frontend using one
of the provided backends: String, File, SQL, INI for now, but
later probably Win32::Registry, maybe Wx::Config.
I wasn't really concerned about namespaces when I wrote this.
I like modules with short names.
Anyway It would be:

   Config
   Config::String
   Config::File
   Config::SQL
   Config::INI
   (...)

   Config::Win32::Registry
   Config::wxConfig
etc.



Randy W. Sims wrote:

On 4/1/2004 5:25 AM, Hans Oesterholt-Dijkema wrote:

Dear All,

I'm just wondering. I've uploaded a few modules last days,
of which:
   Conf-0.06
   Conf-SQL-0.05
   Conf-INI-0.03


Why? There are already several namespaces where configuration type 
modules are located, primarily Config::*. Why do you feel the need to 
place your modules in a different namespace?

Randy.





running tests

2004-04-02 Thread Tim Harsch
Hi all,
If I have several test files in my test suite, is there a way to get them to
run in a predefined order when the user runs make test?  I realize I could
name them alphabetically like Atest1.t, Bsometest.t, but it seems hokey
and I'm not sure it would work on all systems.



Re: running tests

2004-04-02 Thread Andy Lester
 If I have several test files in my test suite, is there a way to get them to
 run in a predefined order when the user runs make test?  I realize I could
 name them alphabetically like Atest1.t, Bsometest.t, but it seems hokey
 and I'm not sure it would work on all systems.

Look at Test::Manifest by brian d foy.

xoa

-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance


Re: running tests

2004-04-02 Thread Tim Harsch
No.  But there are certain classes of functions of the module that don't
work until others have been run.  So others should have been tested
rigorously in a previous test.  For instance the first would be an error
reporting function which should work no matter what (but I don't want to
test it in every test file), then there are a class of functions for
querying the system which only rely on error function that works, then there
are establishing a template and using the template to set attributes, then
there is job submission and synchronization, then there is job problem
detection, then there is alternate job synchronization, then blah, blah...

But the tests get more complicated in progression so it will need to rely on
previous tests having suceeded, OR write one giant test script.  I just
thought it would be more useful to the user to catch trivial problems in the
first tests, and more complicated problems in later tests.

However, Test::Manifest seems not to be a part of core perl, so if I used
that it would be one more prereq module I'd need, so that is something of a
draw back.

- Original Message - 
From: Andy Lester [EMAIL PROTECTED]
To: Tim Harsch [EMAIL PROTECTED]
Cc: Perl Mod Authors [EMAIL PROTECTED]
Sent: Friday, April 02, 2004 9:59 AM
Subject: Re: running tests


  If I have several test files in my test suite, is there a way to get
them to
  run in a predefined order when the user runs make test?  I realize I
could
  name them alphabetically like Atest1.t, Bsometest.t, but it seems
hokey
  and I'm not sure it would work on all systems.

 Also, WHY do you want them to run in a predefined order?  Are you doing
 setup in one, running some other tests, and then shutdown in another?

 xoa

 -- 
 Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance



Re: running tests

2004-04-02 Thread Arthur Corliss
On Fri, 2 Apr 2004, Tim Harsch wrote:

 Hi all,
 If I have several test files in my test suite, is there a way to get them to
 run in a predefined order when the user runs make test?  I realize I could
 name them alphabetically like Atest1.t, Bsometest.t, but it seems hokey
 and I'm not sure it would work on all systems.

I think a lot of us just use numeric prefixes to control the order:

  01_ini.t
  02_scalar.t
  03_list.t
  ... etc.

--Arthur Corliss
  Bolverk's Lair -- http://arthur.corlissfamily.org/
  Digital Mages -- http://www.digitalmages.com/
  Live Free or Die, the Only Way to Live -- NH State Motto


Re: running tests

2004-04-02 Thread Tim Harsch
That seems a better idea than A, B etc.  I'll just use that.  Thanks!

- Original Message - 
From: Arthur Corliss [EMAIL PROTECTED]
To: Tim Harsch [EMAIL PROTECTED]
Cc: Perl Mod Authors [EMAIL PROTECTED]
Sent: Friday, April 02, 2004 10:32 AM
Subject: Re: running tests


 On Fri, 2 Apr 2004, Tim Harsch wrote:

  Hi all,
  If I have several test files in my test suite, is there a way to get
them to
  run in a predefined order when the user runs make test?  I realize I
could
  name them alphabetically like Atest1.t, Bsometest.t, but it seems
hokey
  and I'm not sure it would work on all systems.

 I think a lot of us just use numeric prefixes to control the order:

   01_ini.t
   02_scalar.t
   03_list.t
   ... etc.

 --Arthur Corliss
   Bolverk's Lair -- http://arthur.corlissfamily.org/
   Digital Mages -- http://www.digitalmages.com/
   Live Free or Die, the Only Way to Live -- NH State Motto



Re: running tests

2004-04-02 Thread Andy Lester
 No.  But there are certain classes of functions of the module that don't
 work until others have been run.  So others should have been tested

So some tests are setting up other ones, then?

One of my goals when writing tests is to make everything as independent
as possible, so that I can run a single test (using prove) as part of my
development process.

Write the test.
Code the code.
Run the test.
Fix the code.
Run the test.
etc.

xoa


-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance


Re: running tests

2004-04-02 Thread Mark Stosberg
On Fri, Apr 02, 2004 at 01:52:12PM -0600, Andy Lester wrote:
  No.  But there are certain classes of functions of the module that don't
  work until others have been run.  So others should have been tested
 
 So some tests are setting up other ones, then?
 
 One of my goals when writing tests is to make everything as independent
 as possible, so that I can run a single test (using prove) as part of my
 development process.

Andy,

So how do you recommend handling the case where some tests depends on
other things being in place?

For example, with DBD::Pg, a lot of tests depend on having test data in
the database, and having the database connection working and open.  

One idea would seem to be have a testing module that provides the
setup and tear-down functionality. Then each individual test could 
load the testing module, and setup and teardown for itself.

Is that what you do, Andy?

Mark

--
 . . . . . . . . . . . . . . . . . . . . . . . . . . . 
   Mark StosbergPrincipal Developer  
   [EMAIL PROTECTED] Summersault, LLC 
   765-939-9301 ext 202 database driven websites
 . . . . . http://www.summersault.com/ . . . . . . . .


Re: running tests

2004-04-02 Thread Andy Lester
 For example, with DBD::Pg, a lot of tests depend on having test data in
 the database, and having the database connection working and open.  

Every one of our *.t and *.phpt files is self-contained.  If it needs a
connection to the database, it opens one.  If it needs test data in the
database, it creates it.  If it needs to delete the data, then it
deletes it.  We also have some tests that watch for leftover bad data
(customers that have a special status of Z are ones that only exist
for testing, so if they're in the DB, we know that something didn't
clean up)

xoa

-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance


Re: running tests

2004-04-02 Thread Tim Harsch
I don't know what you mean by using prove?

And, you're right, that is the best way to develop a module I think.

Some tests cannot be run unless certain functions run to setup the state, so
I want to formally test the prereq functions to make sure they are returning
the correct number of return values etc, in the earlier trivial tests, but
in the subsequent tests that concentrate on a different subset of functions
they will need to use the previous functions to set up the state, so I only
want to test that the function succeeded in setting up the state, but not
that it is capable of returning the correct number of return values and
working under every imaginable legitimate permutation yet again.

I don't know if I'm making sense.

- Original Message - 
From: Andy Lester [EMAIL PROTECTED]
To: Tim Harsch [EMAIL PROTECTED]
Cc: Perl Mod Authors [EMAIL PROTECTED]
Sent: Friday, April 02, 2004 11:52 AM
Subject: Re: running tests


  No.  But there are certain classes of functions of the module that don't
  work until others have been run.  So others should have been tested

 So some tests are setting up other ones, then?

 One of my goals when writing tests is to make everything as independent
 as possible, so that I can run a single test (using prove) as part of my
 development process.

 Write the test.
 Code the code.
 Run the test.
 Fix the code.
 Run the test.
 etc.

 xoa


 -- 
 Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance



Re: running tests

2004-04-02 Thread Mark Stosberg
On Fri, Apr 02, 2004 at 02:02:24PM -0600, Andy Lester wrote:
  For example, with DBD::Pg, a lot of tests depend on having test data in
  the database, and having the database connection working and open.  
 
 Every one of our *.t and *.phpt files is self-contained.  If it needs a
 connection to the database, it opens one.  If it needs test data in the
 database, it creates it.  If it needs to delete the data, then it
 deletes it.  

Does that mean the test scripts are full of copy/paste coding?

So if there is a bug in the test up routine, it would be propagated
everywhere. It seems reasonable to break with the ideal of self
contained tests a bit and put shared test setup/tearcode code into  
a re-usable testing module. (which itself might have a single set of
tests run against it). 

Mark

--
 . . . . . . . . . . . . . . . . . . . . . . . . . . . 
   Mark StosbergPrincipal Developer  
   [EMAIL PROTECTED] Summersault, LLC 
   765-939-9301 ext 202 database driven websites
 . . . . . http://www.summersault.com/ . . . . . . . .


Re: running tests

2004-04-02 Thread Andy Lester
 Does that mean the test scripts are full of copy/paste coding?
 So if there is a bug in the test up routine, it would be propagated
 everywhere.

That is indeed potentially the case.  OTOH, once the code works, then
changes to it are intentionally painful.

 It seems reasonable to break with the ideal of self
 contained tests a bit and put shared test setup/tearcode code into  
 a re-usable testing module. (which itself might have a single set of
 tests run against it). 

And in many cases we do that as well.  The problem with that is knowing
where the test counts are incremented.

We also have a module TW::Mechanize (TW is our app) that subclasses
WWW::Mechanize and includes TW-specifc object methods.  Now, instead of:

   $mech-get( $url );
   html_ok( $mech-content, HTML is OK );

we do

   $mech-get( $url );
   $mech-html_ok( HTML is OK );

which means that if we want to do other HTML checking, it's encapsulated
in the html_ok() method.

xoa

-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance


Re: running tests

2004-04-02 Thread Mark Stosberg
On Fri, Apr 02, 2004 at 02:12:46PM -0600, Andy Lester wrote:
  I don't know what you mean by using prove?
 
 prove is a command-line utility that ships with Test::Harness.  It
 allows you to run a specific test or tests, as specified on the command
 line, without having to go through the make test rigamarole. 

I use 'prove' as well and find it to be very useful. Here's a command I
mind use to run all the 'base' tests, plus those for milestones 1
through 3:

prove -I../perllib --ext=.pl base m{1,2,3}

Then if one fails, I can zero in one it and turn on the verbose option:

prove -v -I../perllib m1/shelter_add_edit_func.pl

Mark

--
 . . . . . . . . . . . . . . . . . . . . . . . . . . . 
   Mark StosbergPrincipal Developer  
   [EMAIL PROTECTED] Summersault, LLC 
   765-939-9301 ext 202 database driven websites
 . . . . . http://www.summersault.com/ . . . . . . . .


Re: running tests

2004-04-02 Thread Paul Johnson
On Fri, Apr 02, 2004 at 02:19:03PM -0600, Andy Lester wrote:

  Does that mean the test scripts are full of copy/paste coding?
  So if there is a bug in the test up routine, it would be propagated
  everywhere.
 
 That is indeed potentially the case.  OTOH, once the code works, then
 changes to it are intentionally painful.
 
  It seems reasonable to break with the ideal of self
  contained tests a bit and put shared test setup/tearcode code into  
  a re-usable testing module. (which itself might have a single set of
  tests run against it). 

Refactor the duplicated code.

Most of my Devel::Cover tests look something like:

  use Devel::Cover::Test;
  my $test = Devel::Cover::Test-new(trivial);
  $test-run_test

And my Gedcom tests:

  use Basic (resolve = unresolve_xrefs, read_only = 0);

Coding tests is just like coding anything else.  Possibly more so,
because bugs in the tests themselves are a real pain.

-- 
Paul Johnson - [EMAIL PROTECTED]
http://www.pjcj.net


Re: running tests

2004-04-02 Thread Adrian Howard
On 2 Apr 2004, at 20:59, Mark Stosberg wrote:
[snip]
One idea would seem to be have a testing module that provides the
setup and tear-down functionality. Then each individual test could
load the testing module, and setup and teardown for itself.
[snip]

That would be my approach. If you want some infrastructure to help you 
might want to take a look at bias type=author Test::Class /bias.

It provides a framework for creating setup/teardown routines that run 
around your tests allowing you to make test fixtures.

Also, if there were dependencies between modules Foo and Bar I'd also 
try to create mocks for Foo in the Bar tests, and for Bar in the Foo 
tests - so I can run each test suite independently.

Adrian



Re: running tests

2004-04-02 Thread Andy Lester
 coded correctly. So it's desirable to see the results of the lower level
 tests first because running the higer level tests could be a waste of time.

But how often does that happen?  Why bother coding to optimize the
failures?

Besides, if you have a smokebot to run the tests for you, then you don't
care how long things take.

xoa

-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance


Re: NAME field

2004-04-02 Thread Randy W. Sims
Hans Oesterholt-Dijkema wrote:
Good point. Any suggestions?

With this module it's possible to have 1 Conf frontend using one
of the provided backends: String, File, SQL, INI for now, but
later probably Win32::Registry, maybe Wx::Config.
I wasn't really concerned about namespaces when I wrote this.
I like modules with short names.
Anyway It would be:

   Config
   Config::String
   Config::File
   Config::SQL
   Config::INI
   (...)

   Config::Win32::Registry
   Config::wxConfig
etc.
Sorry, Config is a core module (see perldoc Config). Look at other 
modules that do what you want:

Browse by catagory:
http://search.cpan.org/modlist/Option_Parameter_Config_Processing
Browse by module name:
http://www.cpan.org/modules/by-module/Config/
Search for keywords:
http://search.cpan.org/search?query=config
Those are just examples, you may find more with different search 
keywords, etc.

There are a lot of modules out there that handle config files. 
Research what is available. If possible use or enhance an existing 
module. If you really believe you have a unique module, the above 
research will help suggest an appropriate name.

I'm not trying to discourage you, but there is already a lot of 
repitition and junk on CPAN. It's an authors responsibility to do the 
research before tossing another module on the heap.

My suggestion for a name (if you find that your module offers something 
unique) would be Config::something, where something hints that it's 
a front end to multiple output formats, maybe Multi

Regards,
Randy.


Re: running tests

2004-04-02 Thread Tim Harsch
Not concerned with wasted time really (at least in this case).  Just seems
more logical to me that if early tests fail it is more of a clue to the user
that something fundamental to the installation was wrong, whereas in later
tests is seems more of a clue that perhaps something architecture dependant
isn't working in the module, or who knows what else.  Sort of a severity
measure

I take it back, I suppose time is a concern: here's why...  My module
provides an API for distributing jobs via a DRM (Distributed Resource
Manager) like SGE or Condor.  A busy cluster may take a while for the job to
leave to waiting queue, transfer to a running state, and complete.  So I
spose my tests in theory could take weeks to complete ( I guess I better
code in an option to not actually distribute jobs), but even just
communicating to the master node (as early tests would do), depending on how
the cluster is configured and how busy the network is, could take awhile on
a busy network.

Sorta similiar I imagine, for a database module, what if the database is
heavily loaded?

I'll post my module docs to help provide context to the discussion.

- Original Message - 
From: Andy Lester [EMAIL PROTECTED]
To: Fergal Daly [EMAIL PROTECTED]
Cc: Tim Harsch [EMAIL PROTECTED]; Perl Mod Authors
[EMAIL PROTECTED]
Sent: Friday, April 02, 2004 12:51 PM
Subject: Re: running tests


  coded correctly. So it's desirable to see the results of the lower level
  tests first because running the higer level tests could be a waste of
time.

 But how often does that happen?  Why bother coding to optimize the
 failures?

 Besides, if you have a smokebot to run the tests for you, then you don't
 care how long things take.

 xoa

 -- 
 Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance



Re: running tests

2004-04-02 Thread Andy Lester
   Beats me what a smokebot is. Presumably it's something I should
 know about. But I only have so many hours in the day to know about everything,
 so simple and not requiring effort is better, for me anyway.

I think you'll find that having a smokebot adds to the simple and not
requiring effort.

A smokebot is a script that runs your test suite at regular intervals,
kicked off by cron.  It checks out a given CVS branch, and then runs the
entire test suite.  For us, it runs once an hour, and if any tests fail,
the entire department gets notified.

# Crontab entries
0 * * * * smokebot HEAD [EMAIL PROTECTED]
30 * * * * smokebot cp2004-branch [EMAIL PROTECTED]

Note that it pulls the main trunk to do testing on the hour, and the
branch for development on the half-hour.

And here's the smokebot script

# The script proper
#!/bin/sh

if [ $# -lt 2 ]
then
echo Must pass at least a branch, and one email address, 
echo plus any parms to echo pass to smoke.
exit 1
fi

REV=$1
shift

MAIL=$1
shift

cd $TMP
DIR=tw
FULLPATH=$TMP/$DIR

# This assumes you have already logged in once as anoncvs
# so that the password is in your ~/.cvspass file.
cvs -d/home/cvs -Q co -d $DIR -r $REV tw  /dev/null

TWROOT=$FULLPATH
export TWROOT

/home/smoke/tw/Dev/devapache stop/dev/null 21
/home/smoke/tw/Dev/devapache start  /home/smoke/smoke.out 21 

cd $TWROOT
smoke $@  /home/smoke/smoke.out 21 
grep -i ^Failed /home/smoke/smoke.out  /home/smoke/smoke.out.fail

if [ -s /home/smoke/smoke.out.fail ]
then
STATUS=FAILED
mail -sSmoke $REV $@ $STATUS `date` $MAIL  /home/smoke/smoke.out
else
STATUS=passed
fi

/home/smoke/tw/Dev/devapache stop  /home/smoke/smoke.out 21 
-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance


Re: NAME field

2004-04-02 Thread Hans Oesterholt-Dijkema




I know, Config.pm would not be a good thing to replace .


I've been looking around quite a lot lately. And I must say, I didn't

find a Configuration module that provided a single interface to
multiple

backends. 

Although many folks say a lot about abstraction and layering,

(I would think it common practice). I found only one that comes near.
But

it's part of OpenInteract and not quite the same.


I think Config::Multi is not a bad name for this module. But
Config::Front

would also be a name. I think it can have it's uses, as it is in fact a
module

that only forms a front end to other config modules and unifies the API
(to
a very simple key/value form). I'm writing it because I want to be able
to 
write unix/perl/win32 registry through one interface. 

So which would be better:


 Config::Multi

 Config::Front

 Config::End

 Config::Frontend


I personally am quite charmed about the last one.


Best whishes,

Hans Oesterholt.

Randy W. Sims wrote:
Hans
Oesterholt-Dijkema wrote:
  
  Good point. Any suggestions?


With this module it's possible to have 1 Conf frontend using one

of the provided backends: String, File, SQL, INI for now, but

later probably Win32::Registry, maybe Wx::Config.


I wasn't really concerned about namespaces when I wrote this.

I like modules with short names.


Anyway It would be:


 Config

 Config::String

 Config::File

 Config::SQL

 Config::INI


 (...)


 Config::Win32::Registry

 Config::wxConfig


etc.

  
  
Sorry, Config is a core module (see perldoc Config). Look at other
modules that do what you want:
  
  
Browse by catagory:
  
http://search.cpan.org/modlist/Option_Parameter_Config_Processing
  
  
Browse by module name:
  
http://www.cpan.org/modules/by-module/Config/
  
  
Search for keywords:
  
http://search.cpan.org/search?query=config
  
  
Those are just examples, you may find more with different search
keywords, etc.
  
  
There are a lot of modules out there that handle config "files".
Research what is available. If possible use or enhance an existing
module. If you really believe you have a unique module, the above
research will help suggest an appropriate name.
  
  
I'm not trying to discourage you, but there is already a lot of
repitition and "junk" on CPAN. It's an authors responsibility to do the
research before tossing another module on the heap.
  
  
My suggestion for a name (if you find that your module offers something
unique) would be Config::something, where something
hints that it's a front end to multiple output formats, maybe Multi
  
  
Regards,
  
Randy.
  
  
  



-- 
Best regards,

Hans Oesterholt-Dijkema




inline: wink_n.gif

Re: running tests

2004-04-02 Thread Mark Stosberg
On Fri, Apr 02, 2004 at 03:48:12PM -0600, Andy Lester wrote:
 
 A smokebot is a script that runs your test suite at regular intervals,
 kicked off by cron.  It checks out a given CVS branch, and then runs the
 entire test suite.  For us, it runs once an hour, and if any tests fail,
 the entire department gets notified.

Very helpful Andy.

 smoke $@  /home/smoke/smoke.out 21 

And what does the inside of this 'smoke' script look like?

Mark

--
 . . . . . . . . . . . . . . . . . . . . . . . . . . . 
   Mark StosbergPrincipal Developer  
   [EMAIL PROTECTED] Summersault, LLC 
   765-939-9301 ext 202 database driven websites
 . . . . . http://www.summersault.com/ . . . . . . . .


Schedule::DRMAAc docs

2004-04-02 Thread Tim Harsch
Here are the docs for the module I plan to release in the next week or so.
Any comments appreciated.
Title: DRMAAc.pm




 

NAME

Schedule::DRMAAc - Perl wrapper of the C binding of the DRMAA
(Distributed Resource Managment Application API) specification.


 

SYNOPSIS



This module is a Perl wrapper for the C binding of the DRMAA
specification, which allows for the submission and control of jobs to one
or more Distributed Resource Management (DRM) systems (eg. SGE, Condor,
etc. ).


use DRMAA qw/ :all /;
( $error, $diagnosis ) = drmaa_init( undef );
die drmaa_strerror( $error ) . ``\n'' . $diagnosis if $error;
( $error, $jt, $diagnosis ) = 
drmaa_allocate_job_template()
;
die drmaa_strerror( $error ) . ``\n'' . $diagnosis if $error;
( $error, $diagnosis ) = drmaa_set_attribute( $jt, $DRMAA_REMOTE_COMMAND, '/bin/sleep' );
die drmaa_strerror( $error ) . ``\n'' . $diagnosis if $error;
( $error, $diagnosis ) = drmaa_set_vector_attribute( $jt, $DRMAA_V_ARGV, [ ``1'' ] );  # 1st argv param = 1 (to run for 1 second)
die drmaa_strerror( $error ) . ``\n'' . $diagnosis if $error;
( $error, $jobid, $diagnosis ) = drmaa_run_job( $jt );
die drmaa_strerror( $error ) . ``\n'' . $diagnosis if $error;
my @job_constant = ( $DRMAA_JOB_IDS_SESSION_ALL );
( $error, $diagnosis ) = drmaa_synchronize( \@job_constant , $DRMAA_TIMEOUT_WAIT_FOREVER, 0 );
die drmaa_strerror( $error ) . ``\n'' . $diagnosis if $error;
( $error, $diagnosis ) = drmaa_delete_job_template( $jt );
die drmaa_strerror( $error ) . ``\n'' . $diagnosis if $error;


 

AUTHOR

Tim Harsch [EMAIL PROTECTED]


 

NOTES

This module was created using SWIG on the drmaa.h file provided in SGE
version 6.0.  As such, certain behaviours of the module were decided by
either the unerlying DRMAA library, or by SWIG's method of generating Perl
to C wrapping functionality.  Needless, to say the design of this Perl
module's API is somewhat constrained by the underlying C library.
Nearly every function listed below has an $error and a $diagnosis
returned from it.  In nearly all cases $error will be
$DRMAA_ERRNO_SUCCESS, and an error otherwise.  The $error can be looked up
via the drmaa_strerror function.  And, $diagnosis provides further
problem hints.
A useful line for checking the success of most of these functions is:
die drmaa_strerror( $error ) . ``\n$diagnosis'' if $error;
Because $error and $diagnosis are trivial they will not be mentioned again
unless special meaning needs to be clarified.
This documentation was created using the DRMAA spec, SGE drmma.h and
drmaa.c source files as a reference.  Any ambiguities here can be cleared
up by visiting those.


 

DESCRIPTION


 

vector attributes ( to be used with drmaa_set_vector_attribute and

related functions )
$DRMAA_V_ARGV( vector of strings )
These parameters are passed as arguments to the job.
$DRMAA_V_ENV( vector of strings )
The environment values that define the remote environment. Each string
complies with the format name=value.  The values override the remote
environment values if there are collisions.
If the above is not possible, it is implementation dependent.
$DRMAA_V_EMAIL( vector of strings )
The email address(es) used to report the job completion and status.

 

non-vector attributes ( to be used with drmaa_set_attribute and

related functions )
$DRMAA_REMOTE_COMMAND ( String )


The name (and optional path) of the job.  If a relative path is used,
it should be relative to $DRMAA_WD.


$DRMAA_JS_STATE   ( ``drmaa_active'' or ``drmaa_hold'' )


A beginning state for the job to start as on the exec host

$DRMAA_WD ( String )
The directory where the job is executed

$DRMAA_JOB_CATEGORY   ( String )
DRM specific value for site-specific policies

$DRMAA_NATIVE_SPECIFICATION ( String )
DRM specific value for site-specific policies"

$DRMAA_BLOCK_EMAIL  ( 0 or 1 )
Send or Block email notifications from the DRM

$DRMAA_START_TIME   CC]YY/]MM/]DD] hh:mm[:ss] [{-|+}UU:uu]
The earliest time when the job may be eligible to be run.  The time
format is as follows:
CC]YY/]MM/]DD] hh:mm[:ss] [{-|+}UU:uu]

CC is the first two digits of the year (century-1)

YY is the last two digits of the year
MM is the two digits of the month [01,12]

DD is the two-digit day of the month [01,31]

hh is the two-digit hour of the day [00,23]

mm is the two-digit minute of the day [00,59]

ss is the two-digit second of the minute [00,61]

UU is the two-digit hours since (before) UTC

uu is the two-digit minutes since (before) UTC

If the optional UTC-offset is not specified, the offset
associated with the local timezone will be used. If the day (DD) is not
specified, the current day 

Re: running tests

2004-04-02 Thread Andy Lester
  smoke $@  /home/smoke/smoke.out 21 
 
 And what does the inside of this 'smoke' script look like?

It's just prove.  An FLR-specific version of prove, but it's just prove.

xoa

-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance


Re: running tests

2004-04-02 Thread Fergal Daly
On Fri, Apr 02, 2004 at 02:51:11PM -0600, Andy Lester wrote:
  coded correctly. So it's desirable to see the results of the lower level
  tests first because running the higer level tests could be a waste of time.
 
 But how often does that happen?  Why bother coding to optimize the
 failures?
 
 Besides, if you have a smokebot to run the tests for you, then you don't
 care how long things take.

It's more the time spent looking at the test results rather than the time
spent running the tests. So actually it's the result presentation order that
matters. Basically you want to consider the failure reports starting from
the lowest level as these may make the higher level failures irrelevant.

The order the tests actually ran in should be irrelevant to the outcome but
if you're running from the command line the run order determines the
presentation order.

Even if you have a smoke bot, you presumably run the tests (depends on the
size of the suite I suppose) before a checkin and it's convenient to know
that the first failure message you see if the most relevant (ie at the
lowest level). Also when running tests interactively it's nice to be able to
save even 30 seconds by killing the suite if a low level test fails,

F


Re: running tests

2004-04-02 Thread Andy Lester
 Even if you have a smoke bot, you presumably run the tests (depends on the
 size of the suite I suppose) before a checkin and it's convenient to know
 that the first failure message you see if the most relevant (ie at the
 lowest level). Also when running tests interactively it's nice to be able to
 save even 30 seconds by killing the suite if a low level test fails,

Sure, but even better is to run only the tests that need to be run,
which is a key part of prove.  You can run prove -Mblib t/mytest.t
instead of the entire make test suite.

xoa

-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance


Re: running tests

2004-04-02 Thread Andy Lester
On Sat, Apr 03, 2004 at 01:37:03AM +0200, Paul Johnson ([EMAIL PROTECTED]) wrote:
 Coming soon to Devel::Cover (well, on my TODO list anyway):

Could we pleease get it to run under -T first, though?

Then I could do coverage testing on Test::Harness!

xoa

-- 
Andy Lester = [EMAIL PROTECTED] = www.petdance.com = AIM:petdance