Browse Source

Add unit test for GFF3Importer::loadFastas()

Peter Richter 4 years ago
parent
commit
62e45b7146

+ 16 - 1
tests/tripal_chado/data/small_gene.gff

@@ -1,6 +1,21 @@
 ##gff-version 3
-scaffold1	scaffold1	scaffold	1	2000	.	.	.	ID=scaffold1
+scaffold1	scaffold1	scaffold	1	1000	.	.	.	ID=scaffold1
 scaffold1	test_gene_001	gene	100	200	.	+	.	ID=test_gene_001;Name=test_gene_001;biotype=protein_coding;Alias=first_test_gene;Dbxref=TEST_DB:test_gene_dbx_001;Ontology_term=SO:0000704;Target=scaffold1 100 200;target_type=supercontig;Gap=test_gap_1;Gap=test_gap_2;Note=test_gene_001_note
 scaffold1	test_mrna_001	mRNA	100	150	.	+	.	ID=test_mrna_001.1;Parent=test_gene_001;Name=test_mrna_001;biotype=protein_coding;AED=0.05
 scaffold1	test_protein_001	polypeptide	100	150	.	+	.	ID=test_protein_001.1;Parent=test_mrna_001.1
 scaffold1	test_gene_002	gene	300	400	.	+	.	ID=test_gene_002;Name=test_gene_002;biotype=protein_coding;Derives_from=test_gene_001
+##FASTA
+>scaffold1
+TAGTGTCTTTTTATTGGTTAATGAGTTTCTTTTTTTATAAACAATATTTTGATTTAAAAAAGAACGTAGGACTTAAATGC
+AATTTTTTAAATCTACAATTGAGGAGATTTTATGCACAATATTATATTAATTGCAAAAAAAACCCACTTACAAGAATCAC
+CCATATTGTTAATGAAATAATTCCATATTATTGGTTTTCAAATTTTATCCCTCCTACGTGTCAAAATAGTGTCTTTTTAT
+TGGTTAATGATTTTTTTTGTATAAACAATATCTTTCATTAAAAAAACGTGCGACTGAAATGCAATTATGTTCCACCACAT
+ATATCACATATTATTATTAATTTCAAAATAACCCCACTTACCATATTCAGCCATATTATTAATGAATTAATTTCACATTA
+TTGATTTTTAAATTTTATCTCTCCTGCATGTCAAAATGACGTCTTTTTATTGGCTATTTAGTTTAGCTTTTTAATCAATT
+GCTTCATATTAAAAACGTAAATATATAAATGTACATTCCACTTAATTTGGGTGCCCAATATTATATTAATTGTCAAAAAA
+ACCCAATTTTCAAATTTCTTCTATCCTATATGACAAAATAATGTCTTTTTATTGGTTAATGAGTTTTTTTTTTATAAACA
+ATATATTGATTGAAAAAGTGTAGGACGTAAATGCATTTTTTTTTTAATTTTACAATTGATTAAATTTTATGCAATATATT
+ATACTAATTCCCAAAAAACCCACTTACAAGAATCACCCATATTGTTAATGAAATAATTCAACATTATTGGTTTTCAAATT
+TTATCTCTCCTACGTGTCAAAATAGTATCTTTTTATTGGTTAAACAGTTTTATTTTTTTTATAAACAATATTTTCATTAA
+AAAAAACGTGGGACTGAAATGCAATTATGTTCCACCATATATATCATATATTATTATTTTTAAAGTAATTTAGATAAATT
+AGGTAATTACATCAATTTAAATTAATTACTTATTTGTTAC

+ 26 - 0
tests/tripal_chado/loaders/GFF3ImporterTest.php

@@ -93,8 +93,15 @@ class GFF3ImporterTest extends TripalTestCase {
         'name' => 'sequence',
       ),
     ))->cvterm_id;
+    $this->supercontig_cvt = chado_get_cvterm(array(
+      'name' => 'supercontig',
+      'cv_id' => array(
+        'name' => 'sequence',
+      ),
+    ))->cvterm_id;
     $this->gene_1_uname = 'test_gene_001';
     $this->gene_2_uname = 'test_gene_002';
+    $this->scaffold_1_uname = 'scaffold1';
   }
 
   /**
@@ -380,6 +387,25 @@ class GFF3ImporterTest extends TripalTestCase {
     $this->assertEquals($this->gene_cvt, $derivesfrom_feature->type_id);
   }
 
+  /**
+   * Ensure FASTA information loaded correctly into chado.
+   *
+   * @group gff
+   */
+  public function testGFFImporterAttributeFastas() {
+    $this->initGFFImporterAttributes();
+
+    $scaffold = db_select('chado.feature', 'f')
+      ->fields('f')
+      ->condition('uniquename', $this->scaffold_1_uname)
+      ->condition('type_id', $this->supercontig_cvt)
+      ->execute()->fetchObject();
+
+    $this->assertEquals(1000, $scaffold->seqlen);
+    $this->assertEquals(1000, strlen($scaffold->residues));
+    $this->assertEquals('0154424abe69dd64cd428c330d480ba0', $scaffold->md5checksum);
+  }
+
   /**
    * Add a skip protein option.  Test that when checked, implicit proteins are
    * not created, but that they are created when unchecked.