[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Outreachy current



---- On Sat, 16 Mar 2019 22:30:16 +0000 Andreas Tille <andreas@fam-tille.de> wrote ----

Dear Saira,
Hi Andreas!

On Sat, Mar 16, 2019 at 08:59:38PM +0000, Saira Hussain wrote:
> > > thanks a lot for your reply! That's my username, I just registered.
> >
> > I've seen this and accepted as promised - but I was sleeping in between
> > - I live in Germany so UTF +0100 time zone. BTW, what is your time zone?
>
> My zone is GMT +0000

OK, seems to be close enough for non-delayed communication. ;-)
Awesome!

> > > I've been going through the debian-med and looking at packages but is there any website that
> > > is talking about the basics of testing?
> >
> > There is some intro in the Debian Wiki[1].
>
> Thanks for this, I am reading it right now.

May be another hint is to have a look into the Debian Med packaging
template

https://salsa.debian.org/med-team/community/package_template/tree/master/debian/tests

where we have established that the tests will be called run-unit-test
and it is also installed in /usr/share/doc/PACKAGENAME (next to a file
/usr/share/doc/PACKAGENAME/README.test explaining the user that the
package can be tested by running this script). In other words: What is
used as continuous integration test serves at the same time as usage
example. This has several examples also for developing the test.
Please study my commits and their commit message. You are kindly
invited to ask here if anything might remain unclear. I just want to
make sure you understand every bit of my changes.

That's is very useful indeed. The problem I have till this day with the Debian documentation is that albeit very detailed
it's vast!! I never know where to search (and yes I am starting with Google) but it seems there's always a more recent/updated/better
version somewhere, where I didn't look.

> > > I.E. what do you really need to test in a program? Is it just about
> > > the input and output? How can I validate the output (e.g. If I give some specific DNA as input and I know
> > > the expected output, can I save this file and then do a diff between this and the stdout?).
> >
> > The short answer is: It depends. :-)
> >
> > Given that you have some background in bioinformatics I would trust
> > *your* expertise - since I personally have none in Bioinformatics (I'm a
> > physicist). Its a good idea if you clone some of the packaging
> > repositories from salsa.debian.org of software that you know. The most
> > important ones are covered with autopkgtest and so you can get a feeling
> > how tests are done.
>
> I had a look at the previous years commits and I also studied the functionality of
> the package and I added a couple of tests to validate this. Here is my merge request:
> https://salsa.debian.org/med-team/glam2/merge_requests/1

Very cool. I realised that you also commited to branch add/autopkgtest.
This is OK since you probably feel unsure as newcomer. In future I'd
recommend to commit right to master branch. The changes are not really
complex, will not heavily interfere with other package development and
you can not really break anything important. Thus we can leave out a
heavily branched Git repository layout. Thus I merged your commit to
branch master and added some more commits polishing up a bit to bring it
in line with the other tests.

Oh right. When we did dev work before for some Uni projects we were always creating
an extra branched that was automatically deleted when the merged was performed (and squashed).

I suppose your proposal sounds good. Is there any standard that you're following or personal
experience?

For the test itself I've got:

Usage: glam2 [options] alphabet my_seqs.fa
Main alphabets: p = proteins, n = nucleotides
Main options (default settings):
-h: show all options and their default settings
-o: output file (stdout)
-r: number of alignment runs (10)
-n: end each run after this many iterations without improvement (10000)
-2: examine both strands - forward and reverse complement
-z: minimum number of sequences in the alignment (2)
-a: minimum number of aligned columns (2)
-b: maximum number of aligned columns (50)
-w: initial number of aligned columns (20)


I found out that your second command line was lacking the alphabet
option (which I found out quickly by running run-unit-test on my local
system after sneaking a "set -x" in). The program runs if I set 'p' for
proteins as alphabet - please confirm that this is correct.
Yes, indeed forgot to add this! Thanks :)

> > > Looking forward to learning more
> >
> > You are perfectly welcome. However, I would love to switch all non-private
> > communication to mailto:debian-med@lists.debian.org. The profit for you is that
> > you will get input from kind students of previous years who remained in the
> > project - and others might read the web archive of our dicussion to learn
> > from it.
>
> Glad to hear from people in the list and learn even more!

:-) Glad you followed my hint.

I've now commited changes which would make the package "ready to upload"
in my understanding. Please double check that you understand everything
and that my changes are in line with your plan. (You always need to
expect that I'm making mistakes and I'd love to encourage you to point
this out instead of assuming that I'm right as a mentor all the time.
;-) )

Thanks a lot for your promising work
Thanks for quick help and ideas
S.

Andreas.

--
http://fam-tille.de



Reply to: