[med-svn] [Git][med-team/pyensembl][master] Run source unittests during build and autopkgtest

Lance Lin (@linqigang) gitlab at salsa.debian.org
Thu Aug 17 16:02:22 BST 2023



Lance Lin pushed to branch master at Debian Med / pyensembl


Commits:
125f35aa by Lance Lin at 2023-08-17T21:36:25+07:00
Run source unittests during build and autopkgtest

- - - - -


5 changed files:

- debian/changelog
- debian/control
- debian/rules
- + debian/tests/control
- + debian/tests/run-unit-test


Changes:

=====================================
debian/changelog
=====================================
@@ -1,3 +1,12 @@
+pyensembl (2.2.8+ds-2) UNRELEASED; urgency=medium
+
+  * d/rules: Run source unittests during build
+  * d/tests/*: Add autopkgtest for source unittests
+  * d/control: Add python3-pytest and python3-nose to Build-Depends
+               Remove Testsuite: autopkgtest-pkg-python
+
+ -- Lance Lin <lq27267 at gmail.com>  Wed, 16 Aug 2023 20:37:38 +0700
+
 pyensembl (2.2.8+ds-1) unstable; urgency=medium
 
   * Team upload.


=====================================
debian/control
=====================================
@@ -13,14 +13,15 @@ Build-Depends: debhelper-compat (= 13),
                python3-datacache,
                python3-serializable,
                python3-memoized-property,
-               python3-gtfparse
+               python3-gtfparse,
+               python3-nose <!nocheck>,
+               python3-pytest <!nocheck>,
 #              python3-tinytimer # only run during tests that are not run because of
 #              demand for internet access
 Standards-Version: 4.6.2
 Homepage: https://github.com/openvax/pyensembl
 Vcs-Browser: https://salsa.debian.org/med-team/pyensembl
 Vcs-Git: https://salsa.debian.org/med-team/pyensembl.git
-Testsuite: autopkgtest-pkg-python
 Rules-Requires-Root: no
 
 Package: pyensembl


=====================================
debian/rules
=====================================
@@ -2,6 +2,19 @@
 export DH_VERBOSE = 1
 export PYBUILD_NAME=pyensembl
 
+# See d/tests/control for why the following tests are ignored:
+export PYBUILD_TEST_ARGS=--ignore=test/test_download_cache.py --ignore=test/test_ensembl_gtf.py \
+                         --ignore=test/test_gene_ids.py --ignore=test/test_gene_names.py \
+                         --ignore=test/test_gene_objects.py --ignore=test/test_id_length.py \
+                         --ignore=test/test_missing_genome_sources.py --ignore=test/test_mouse.py \
+                         --ignore=test/test_search.py --ignore=test/test_sequence_data.py \
+                         --ignore=test/test_serialization.py --ignore=test/test_transcript_ids.py \
+                         --ignore=test/test_transcript_objects.py --ignore=test/test_ucsc_gtf.py \
+                         --ignore=test/test_contigs.py --ignore=test/test_exon_id.py \
+                         --ignore=test/test_exon_object.py --ignore=test/test_string_representation.py \
+                         --ignore=test/test_timings.py --ignore=test/test_transcript_sequences.py \
+                         --ignore=test/test_transcript_support_level.py
+
 %:
 	dh $@ --with python3 --buildsystem=pybuild
 


=====================================
debian/tests/control
=====================================
@@ -0,0 +1,3 @@
+Tests: run-unit-test
+Depends: python3-all, python3-nose, python3-pytest, pyensembl
+Restrictions: needs-internet


=====================================
debian/tests/run-unit-test
=====================================
@@ -0,0 +1,46 @@
+#!/bin/bash
+set -e
+
+pkg=pyensembl
+if [ "$AUTOPKGTEST_TMP" = "" ] ; then
+  AUTOPKGTEST_TMP=`mktemp -d /tmp/${pkg}-test.XXXXXX`
+  trap "rm -rf $AUTOPKGTEST_TMP" 0 INT QUIT ABRT PIPE TERM
+fi
+
+cp -a test/ $AUTOPKGTEST_TMP
+
+cd $AUTOPKGTEST_TMP
+
+# common.py and data.py are missing from the source tarball in Pypi, but these
+# files are present in the Github source code. These files are required to run
+# the following tests:
+rm test/test_download_cache.py
+rm test/test_ensembl_gtf.py
+rm test/test_gene_ids.py
+rm test/test_gene_names.py
+rm test/test_gene_objects.py
+rm test/test_id_length.py
+rm test/test_missing_genome_sources.py
+rm test/test_mouse.py
+rm test/test_search.py
+rm test/test_sequence_data.py
+rm test/test_serialization.py
+rm test/test_transcript_ids.py
+rm test/test_transcript_objects.py
+rm test/test_ucsc_gtf.py
+
+# pyensembl is missing a dependency needed to import test data. The test data
+# could be added to debian/tests/data or in a multi-source tarball depending
+# on the size of data being added. The following tests are affected:
+rm test/test_contigs.py
+rm test/test_exon_id.py
+rm test/test_exon_object.py
+rm test/test_string_representation.py
+rm test/test_timings.py
+rm test/test_transcript_sequences.py
+rm test/test_transcript_support_level.py
+
+for py in $(py3versions -s)
+do 
+	$py -m pytest test
+done



View it on GitLab: https://salsa.debian.org/med-team/pyensembl/-/commit/125f35aa707b49e8e73387c960bbefcc0ef624f0

-- 
View it on GitLab: https://salsa.debian.org/med-team/pyensembl/-/commit/125f35aa707b49e8e73387c960bbefcc0ef624f0
You're receiving this email because of your account on salsa.debian.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20230817/8a871bd8/attachment-0001.htm>


More information about the debian-med-commit mailing list