| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 | <?phpnamespace Tests;use StatonLab\TripalTestSuite\DBTransaction;use StatonLab\TripalTestSuite\TripalTestCase;class FASTAImporterTest extends TripalTestCase {  // Uncomment to auto start and rollback db transactions per test method.  use DBTransaction;  /**   * Basic test example.   * Tests must begin with the word "test".   * See https://phpunit.readthedocs.io/en/latest/ for more information.   */  /**   * @group fasta   * @group chado   */  public function testImporterAssociatesParentWithoutRegexp() {    module_load_include('inc', 'tripal_chado', 'includes/TripalImporter/FASTAImporter');    $importer = new \FASTAImporter();    //this test will first create an organism and mrna features with the same name as devseed proteins.    //It will then load the devseed protein fasta via the importer.    //Finally it will ensure feature_relationships exist with the test mrna.    $organism = factory('chado.organism')->create();    $mrna_term = chado_get_cvterm(['id' => 'SO:0000234']);    $analysis = factory('chado.analysis')->create();    $mrna_1 = factory('chado.feature')->create([      'type_id' => $mrna_term->cvterm_id,      'organism_id' => $organism->organism_id,      'name' => 'FRAEX38873_v2_000000010.1',      'uniquename' => 'FRAEX38873_v2_000000010.1',    ]);    $mrna_2 = factory('chado.feature')->create([      'type_id' => $mrna_term->cvterm_id,      'organism_id' => $organism->organism_id,      'name' => 'FRAEX38873_v2_000000010.2',      'uniquename' => 'FRAEX38873_v2_000000010.2',    ]);    $file = ['file_local' => __DIR__ . '/../data/two_prots.fasta'];    $run_args = [      'analysis_id' => $analysis->analysis_id,      'organism_id' => $organism->organism_id,      'seqtype' => 'polypeptide',      'parent_type' => "mRNA",      'rel_type' => "derives_from",      'method' => '2',      'match_type' => '1',      're_name' => "",      're_uname' => "",      're_accession' => "",      'db_id' => "",      're_subject' => "",      'match_type' => "1",    ];    $importer->create($run_args, $file);    $importer->prepareFiles();    $importer->run();    $result = db_select('chado.feature', 'f')      ->fields('f')      ->condition('f.organism_id', $organism->organism_id)      ->execute()      ->fetchAll();    $this->assertNotEquals(2, count($result), 'The child features were not loaded when a regexp was not provided.');    $query = db_select('chado.feature_relationship', 'fr')      ->fields('fr')      ->condition('fr.object_id', $mrna_1->feature_id);      $query->join('chado.feature', 'f', 'f.feature_id = fr.subject_id');      $result = $query->execute()      ->fetchObject();    $this->assertNotFalse($result, 'relationship was not added to parente feature when regexp not provided (same parent/child name).');  }}
 |