Commit 10e44733 authored by Mathieu Giraud's avatar Mathieu Giraud

Merge branch 'feature-a/4203-with-docker' into 'dev'

Tests algo avec docker

Closes #4203

See merge request !612
parents 3f88bc20 a481f64c
Pipeline #127844 failed with stages
in 20 minutes and 3 seconds
...@@ -55,6 +55,7 @@ test_germlines: ...@@ -55,6 +55,7 @@ test_germlines:
include: include:
- local: '/doc/.gitlab-ci.yml' - local: '/doc/.gitlab-ci.yml'
- local: 'algo/.gitlab-ci-compilers.yml' # Stage multiple_tests
# Algorithm # Algorithm
...@@ -177,33 +178,6 @@ deploy_release_prod: ...@@ -177,33 +178,6 @@ deploy_release_prod:
make -C vidjil-algo-${release_name};\ make -C vidjil-algo-${release_name};\
ln -sfT vidjil-algo-${release_name} next" ln -sfT vidjil-algo-${release_name} next"
.testing-compilers: &test_various_compilers
stage: multiple_tests
tags:
- several-compilers
script:
- |
for CXX in $COMPILERS; do
echo "**** Using $CXX for compilation ****"
make -C algo clean
make -C algo CXX=$CXX unit
make -C algo CXX=$CXX should
make -C algo CXX=$CXX valgrind_unit
done
test_various_compilers_manual:
<<: *test_various_compilers
when: manual
only:
- /^feature-.*a.*\/.*$/
- schedules
test_various_compilers_release:
<<: *test_various_compilers
only:
- /^feature-.*a.*\/release$/
# Client # Client
test_browser_unit: test_browser_unit:
......
.testing-compilers:
stage: multiple_tests
tags:
- cidocker
before_script:
- apt-get update
- apt-get install -y time valgrind python3 wget tar
script:
- $CXX --version
- make demo data germline
- make -C algo clean
- make -C algo CXX=$CXX CC=$CC unit
- make -C algo CXX=$CXX CC=$CC should
- make -C algo CXX=$CXX CC=$CC valgrind_unit
.installing-compiler:
before_script:
- apt-get update
- apt-get install -y time valgrind python3 $COMPILER_PKG-$VERSION zlib1g-dev make wget tar python2.7
- ln -sf /usr/bin/python2.7 /usr/bin/python
- export CXX=${COMPILER_CPP}-$VERSION
- export CC=${COMPILER_C}-$VERSION
.testing-gcc:
extends: .testing-compilers
variables:
CXX: g++
CC: gcc
.testing-clang:
variables:
COMPILER_PKG: "clang"
COMPILER_CPP: "clang++"
COMPILER_C: "clang"
VERSION: $CLANG_VERSION
extends:
- .testing-compilers
- .installing-compiler # Overrides the before_script to install the compiler
.installing-testing-gcc:
variables:
COMPILER_PKG: "g++"
COMPILER_CPP: "g++"
COMPILER_C: "gcc"
VERSION: $GCC_VERSION
extends:
- .testing-compilers
- .installing-compiler
.testing_various_compilers_manual:
when: manual
only:
- /^feature-.*a.*\/.*$/
- schedules
.testing_various_compilers_release:
only:
- /^feature-.*a.*\/release$/
test_gcc48_manual:
image: debian:8-slim
variables:
GCC_VERSION: "4.8"
extends:
- .installing-testing-gcc
- .testing_various_compilers_manual
test_gcc48_release:
image: debian:8-slim
variables:
GCC_VERSION: "4.8"
extends:
- .installing-testing-gcc
- .testing_various_compilers_release
test_gcc5_manual:
image: gcc:5.3
extends:
- .testing-gcc
- .testing_various_compilers_manual
test_gcc5_release:
image: gcc:5.3
extends:
- .testing-gcc
- .testing_various_compilers_release
test_gcc6_manual:
image: gcc:6.3
extends:
- .testing-gcc
- .testing_various_compilers_manual
test_gcc6_release:
image: gcc:6.3
extends:
- .testing-gcc
- .testing_various_compilers_release
test_gcc7_manual:
image: gcc:7.3
extends:
- .testing-gcc
- .testing_various_compilers_manual
test_gcc7_release:
image: gcc:7.3
extends:
- .testing-gcc
- .testing_various_compilers_release
test_gcc8_manual:
image: gcc:8
extends:
- .testing-gcc
- .testing_various_compilers_manual
test_gcc8_release:
image: gcc:8
extends:
- .testing-gcc
- .testing_various_compilers_release
test_gcc9_manual:
image: gcc:9
extends:
- .testing-gcc
- .testing_various_compilers_manual
test_gcc9_release:
image: gcc:9
extends:
- .testing-gcc
- .testing_various_compilers_release
test_clang34_manual:
image: debian:8-slim
variables:
CLANG_VERSION: "3.4"
extends:
- .testing-clang
- .testing_various_compilers_manual
test_clang34_release:
image: debian:8-slim
variables:
CLANG_VERSION: "3.4"
extends:
- .testing-clang
- .testing_various_compilers_release
test_clang4_manual:
image: debian:8-slim
variables:
CLANG_VERSION: "4.0"
extends:
- .testing-clang
- .testing_various_compilers_manual
test_clang4_release:
image: debian:8-slim
variables:
CLANG_VERSION: "4.0"
extends:
- .testing-clang
- .testing_various_compilers_release
test_clang6_manual:
image: debian:8-slim
variables:
CLANG_VERSION: "6.0"
extends:
- .testing-clang
- .testing_various_compilers_manual
test_clang6_release:
image: debian:8-slim
variables:
CLANG_VERSION: "6.0"
extends:
- .testing-clang
- .testing_various_compilers_release
test_clang7_manual:
image: debian:10-slim
variables:
CLANG_VERSION: "7"
extends:
- .testing-clang
- .testing_various_compilers_manual
test_clang7_release:
image: debian:10-slim
variables:
CLANG_VERSION: "7"
extends:
- .testing-clang
- .testing_various_compilers_release
...@@ -6,7 +6,7 @@ $ All sequences have been seen as unique clone ...@@ -6,7 +6,7 @@ $ All sequences have been seen as unique clone
$ All sequences have been seen as different IKZF1 recombinations $ All sequences have been seen as different IKZF1 recombinations
1: IKZF1 .* 22 1: IKZF1 .* 22
### control sequence given by Debré ### ### control sequence given by Debre ###
# del4-7__jonction_intron3_intron7 # del4-7__jonction_intron3_intron7
$ Find the correct assignation for the sequence IKZF1-INTRON-3//IKZF1-INTRON-7 $ Find the correct assignation for the sequence IKZF1-INTRON-3//IKZF1-INTRON-7
1: IKZF1-INTRON-3 16/CCCGCG/8 IKZF1-INTRON-7 1: IKZF1-INTRON-3 16/CCCGCG/8 IKZF1-INTRON-7
...@@ -38,9 +38,9 @@ $ Find the correct assignation for the sequence ...@@ -38,9 +38,9 @@ $ Find the correct assignation for the sequence
### 13922 - sequences ikfz1 #### ### 13922 - sequences ikfz1 ####
$ Find the correct assignation for the sequence (témoin del4-7) $ Find the correct assignation for the sequence (temoin del4-7)
1: IKZF1-INTRON-3 1//2 IKZF1-INTRON-7 1: IKZF1-INTRON-3 1//2 IKZF1-INTRON-7
$ Find the correct assignation for the sequence (témoin del2-7) $ Find the correct assignation for the sequence (temoin del2-7)
1: IKZF1-INTRON-1 8/CCCTTC/3 IKZF1-INTRON-7 1: IKZF1-INTRON-1 8/CCCTTC/3 IKZF1-INTRON-7
$ Find the correct assignation for the sequence (seq 4-7 du patient) $ Find the correct assignation for the sequence (seq 4-7 du patient)
1: IKZF1-INTRON-3 0/TCGG/6 IKZF1-INTRON-7 1: IKZF1-INTRON-3 0/TCGG/6 IKZF1-INTRON-7
......
...@@ -250,8 +250,9 @@ void testGetMaximum() { ...@@ -250,8 +250,9 @@ void testGetMaximum() {
// ^^^^^^^^^^ // ^^^^^^^^^^
vector<KmerAffect> affectations(a, a+sizeof(a)/sizeof(KmerAffect)); vector<KmerAffect> affectations(a, a+sizeof(a)/sizeof(KmerAffect));
KmerAffectAnalyser kaa(*index, "", affectations); string seq = "AAAAAAAAAAAAAA";
TAP_TEST_EQUAL(kaa.getSequence(), "", TEST_AA_GET_SEQUENCE, ""); KmerAffectAnalyser kaa(*index, seq, affectations);
TAP_TEST_EQUAL(kaa.getSequence(), seq, TEST_AA_GET_SEQUENCE, "");
affect_infos results = kaa.getMaximum(AFFECT_J_BWD, AFFECT_V_BWD, 2., 0); affect_infos results = kaa.getMaximum(AFFECT_J_BWD, AFFECT_V_BWD, 2., 0);
TAP_TEST(! results.max_found, TEST_AA_GET_MAXIMUM_MAX_FOUND, TAP_TEST(! results.max_found, TEST_AA_GET_MAXIMUM_MAX_FOUND,
...@@ -288,7 +289,8 @@ void testGetMaximum() { ...@@ -288,7 +289,8 @@ void testGetMaximum() {
// V V V V V V V V V V J J J V V V // V V V V V V V V V V J J J V V V
// ^^^^^^^^^^^^ // ^^^^^^^^^^^^
vector<KmerAffect> affectations2(a2, a2+sizeof(a2)/sizeof(KmerAffect)); vector<KmerAffect> affectations2(a2, a2+sizeof(a2)/sizeof(KmerAffect));
KmerAffectAnalyser kaa2(*index, "", affectations2); seq = "AAAAAAAAAAAAAAAA";
KmerAffectAnalyser kaa2(*index, seq, affectations2);
results = kaa2.getMaximum(AFFECT_V, AFFECT_J, 2., 0); results = kaa2.getMaximum(AFFECT_V, AFFECT_J, 2., 0);
TAP_TEST(! results.max_found, TAP_TEST(! results.max_found,
TEST_AA_GET_MAXIMUM_MAX_FOUND, "(" << results.first_pos_max TEST_AA_GET_MAXIMUM_MAX_FOUND, "(" << results.first_pos_max
...@@ -332,7 +334,8 @@ void testGetMaximum() { ...@@ -332,7 +334,8 @@ void testGetMaximum() {
// V V V V V V J J J // nb_before_left (6), nb_after_right (3) // V V V V V V J J J // nb_before_left (6), nb_after_right (3)
// V // nb_before_right (1) // V // nb_before_right (1)
vector<KmerAffect> affectations3(a3, a3+sizeof(a3)/sizeof(KmerAffect)); vector<KmerAffect> affectations3(a3, a3+sizeof(a3)/sizeof(KmerAffect));
KmerAffectAnalyser kaa3(*index, "", affectations3); seq = "AAAAAAAAAAAAAAAAAAAAA";
KmerAffectAnalyser kaa3(*index, seq, affectations3);
// span = 4, maxOverlap = 0 // span = 4, maxOverlap = 0
results = kaa3.getMaximum(AFFECT_V, AFFECT_J, 2., 0); results = kaa3.getMaximum(AFFECT_V, AFFECT_J, 2., 0);
...@@ -363,7 +366,7 @@ void testGetMaximum() { ...@@ -363,7 +366,7 @@ void testGetMaximum() {
// ^^^^^^^^^ // ^^^^^^^^^
// V V V V V V J J J J J J // nb_before_left (6), nb_after_right (6) // V V V V V V J J J J J J // nb_before_left (6), nb_after_right (6)
vector<KmerAffect> affectations4(a4, a4+sizeof(a4)/sizeof(KmerAffect)); vector<KmerAffect> affectations4(a4, a4+sizeof(a4)/sizeof(KmerAffect));
KmerAffectAnalyser kaa4(*index, "", affectations4); KmerAffectAnalyser kaa4(*index, seq, affectations4);
// span = 4, maxOverlap = 0 // span = 4, maxOverlap = 0
results = kaa4.getMaximum(AFFECT_V, AFFECT_J, 2., 0); results = kaa4.getMaximum(AFFECT_V, AFFECT_J, 2., 0);
...@@ -396,7 +399,7 @@ void testGetMaximum() { ...@@ -396,7 +399,7 @@ void testGetMaximum() {
// J J J // nb_after_left (3) // J J J // nb_after_left (3)
vector<KmerAffect> affectations5(a5, a5+sizeof(a5)/sizeof(KmerAffect)); vector<KmerAffect> affectations5(a5, a5+sizeof(a5)/sizeof(KmerAffect));
KmerAffectAnalyser kaa5(*index, "", affectations5); KmerAffectAnalyser kaa5(*index, seq, affectations5);
results = kaa5.getMaximum(AFFECT_V, AFFECT_J, 2., 0); results = kaa5.getMaximum(AFFECT_V, AFFECT_J, 2., 0);
TAP_TEST(! results.max_found, TEST_AA_GET_MAXIMUM_MAX_FOUND, TAP_TEST(! results.max_found, TEST_AA_GET_MAXIMUM_MAX_FOUND,
...@@ -425,7 +428,7 @@ void testGetMaximum() { ...@@ -425,7 +428,7 @@ void testGetMaximum() {
// J-J-J-J-J-J-J-J-V-V-V-V-V-J-J-J-V-V-V-V- // J-J-J-J-J-J-J-J-V-V-V-V-V-J-J-J-V-V-V-V-
// ^^^^^^^^^^ // ^^^^^^^^^^
vector<KmerAffect> affectations6(a6, a6+sizeof(a6)/sizeof(KmerAffect)); vector<KmerAffect> affectations6(a6, a6+sizeof(a6)/sizeof(KmerAffect));
KmerAffectAnalyser kaa6(*index, "", affectations6); KmerAffectAnalyser kaa6(*index, seq, affectations6);
results = kaa6.getMaximum(AFFECT_J_BWD, AFFECT_V_BWD, 2., 0); results = kaa6.getMaximum(AFFECT_J_BWD, AFFECT_V_BWD, 2., 0);
TAP_TEST(! results.max_found, TEST_AA_GET_MAXIMUM_MAX_FOUND, TAP_TEST(! results.max_found, TEST_AA_GET_MAXIMUM_MAX_FOUND,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment