nmh-workers
[Top] [All Lists]

Re: [Nmh-workers] Volunteer Capacity.

2017-07-23 19:34:57
Okay, thanks guys!

I'll start with at least seeing if I can get things to work for
me.  I'm familiar with git(1) for straightforward usage -- I'm in
charge of a couple of simple projects where development is very
linear (though we still use merge requests to keep folks from
stomping on each others' stuff), and we don't use tags.  I
shouldn't have any problems creating new development branches,
and am happy to wait for project veterans to approve/merge them
into "master."  I'm also fine with generating patch(1) output for
someone else to toss into a git branch for proper committing.

I'll look at .../test/README and trying "make gcov" to start,
after I've managed to configure things properly.  I'll also look
specifically at .../test/forw/test-forw-coverage for an example
of recent test coding (though not necessarily as defined template
for all aspects of testing going forward -- in particular, that
just checking the exit status is sufficient).

Note:  I've not yet upgraded from the ancient (and unsupported)
Ubuntu 13.10.  I'm planning to upgrade to the latest LTS
soon-ish.  Do you think that will pose issues that I should
investigate (and deal with) before getting too far into things?

                                Bob

On Sat, 22 Jul 2017 13:23:48 +0100 Ralph Corderoy 
<ralph(_at_)inputplus(_dot_)co(_dot_)uk> sez:

Hi Bob,

Out of curiosity, would it help to have "micro-volunteers" to update
the testing?

I'd have thought so, though David is, I think, the main person behind
the test suite.

namely having (sufficient) test coverage,
...
If enough of us do that, maybe we could significantly improve
coverage?

Yes, I think so, even if it's just a few plugging away steadily.

I played about with gcov(1) coverage testing on nmh a while
back and should do so again and write up how to do it this
time.  Because I was just trying to get more lines executed by
the tests, I added command-invocation tests that didn't check
standard output or error, just the exit status.  An example is
http://git.savannah.nongnu.org/cgit/nmh.git/tree/test/forw/test-forw-coverage

Knowing the tests cover more lines makes running them under
valgrind(1) more useful.

The idea was to chase the low-hanging fruit by looking at
gcov's annotated source and spot the easy bits to get coverage
on.  It may seem that it's only an if statement and an error
message, but they're often calling routines and so have a
knock-on effect for coverage.  I thought once that "easy" outer
veneer was exercised we could look again at gcov's results and
pick a chunk of "library" routines on the next level down and
work backwards to see what caller we can run.  At this point,
we'll probably be more interested in the command output
matching expectations, i.e. did the library routines not just
run but work correctly, so the added tests would be more like
the existing ones.

Of course, one of the main developers still needs to "approve" any
commits, so that doesn't completely eliminate work on testing.

I think a few canned git(1) commands, for those that don't know
it, would get you a long way, and they can prepare a patch for
email that those with commit rights can easily apply whilst
still attributing the original author.  Once they've got the
hang of it and want to keep going then the tester can sign up
on nongnu.org themselves.



On Sun, 23 Jul 2017 08:07:12 -0400 David Levine <levinedl(_at_)acm(_dot_)org> 
sez:

Ken writes:

Ralph has already given you specific answers, but more
generally ... yes!  If you or anyone want to volunteer to do
ANYTHING for nmh, it would help!  No task is too small.

I agree completely.

And I agree that the test suite is a good place to start, and
"make gcov" within that.  tests/README has some guidelines.

The existing tests could use a general cleanup, including
picking one way to do something, such as starting an individual
check, naming output files, or reporting failure.



On Sun, 23 Jul 2017 09:13:55 -0400 David Levine <levinedl(_at_)acm(_dot_)org> 
sez:

I wrote:

tests/README has some guidelines.

That should be test/README

_______________________________________________
Nmh-workers mailing list
Nmh-workers(_at_)nongnu(_dot_)org
https://lists.nongnu.org/mailman/listinfo/nmh-workers

<Prev in Thread] Current Thread [Next in Thread>