| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | 
							- <?php
 
- namespace Tests;
 
- use StatonLab\TripalTestSuite\DBTransaction;
 
- use StatonLab\TripalTestSuite\TripalTestCase;
 
- use Faker\Factory;
 
- /**
 
-  * Tests running BLAST jobs. Specifically, run_BLAST_tripal_job().
 
-  */
 
- class BlastJobTest extends TripalTestCase {
 
-   use DBTransaction;
 
-   /**
 
-    * Tests BLASTN
 
-    */
 
-   public function testBLASTn() {
 
-     $faker = Factory::create();
 
-     // Test we have access to the NCBI Blast commands.
 
-     // Setting the default to where it is on Travis CI: /usr/local/bin.
 
-     $blast_path = variable_get('blast_path', '/usr/local/bin/');
 
-     $this->assertFileExists($blast_path . 'blastn', 'NCBI blastn command not found. Expecting it here: '.$blast_path.'blastn');
 
-     $this->assertFileExists($blast_path . 'blast_formatter', 'NCBI blast_formatter command not found. Expecting it here: '.$blast_path.'blast_formatter');
 
-     // Make sure the path to blast is set!
 
-     if ($blast_path == '/usr/local/bin/') {
 
-       variable_set('blast_path', '/usr/local/bin/');
 
-     }
 
-     // Retrieve paths to files.
 
-     $module_path = DRUPAL_ROOT . '/' . drupal_get_path('module','blast_ui');
 
-     $file_path = DRUPAL_ROOT . '/' . variable_get('file_public_path', conf_path() . '/files'); 
 
-     // Set parameters for run_BLAST_tripal_job().
 
-     $program = 'blastn';
 
-     $query = $module_path . '/tests/test_files/Citrus_sinensis-orange1.1g015632m.g.fasta';
 
-     $database = $module_path . '/tests/test_files/Citrus_sinensis-scaffold00001';
 
-     $output_filestub = $file_path . '/tripal/tripal_blast/' . $faker->word;
 
-     // Quick check that the output file doesnt already exists ;-).
 
-     $this->assertFileNotExists($output_filestub . '.asn', "Result File, $output_file, already exists before the command is run.");
 
-     // We start the test with no options.
 
-     $options = array();
 
-     // Supress output and tripal errors.
 
-     // NOTE: silent() didn't work for some reason.
 
-     putenv("TRIPAL_SUPPRESS_ERRORS=TRUE");
 
-     ob_start();
 
-     run_BLAST_tripal_job($program, $query, $database, $output_filestub, $options);
 
-     // Clean the buffer and unset tripal errors suppression. 
 
-     ob_end_clean();
 
-     putenv("TRIPAL_SUPPRESS_ERRORS");
 
-     // Loop through each expected output file...
 
-     $files_to_check = array();
 
-     $files_to_check[] = $output_filestub . '.asn';
 
-     $files_to_check[] = $output_filestub . '.xml';
 
-     $files_to_check[] = $output_filestub . '.tsv';
 
-     $files_to_check[] = $output_filestub . '.html';
 
-     $files_to_check[] = $output_filestub . '.gff';
 
-     foreach($files_to_check as $output_file) {
 
-       // Check that the file exists.
 
-       $this->assertFileExists($output_file, "Result File, $output_file, doesn't exist.");
 
-       // Check that the file is not empty.
 
-       $this->assertNotEquals(0, filesize($output_file), "The Result File, $output_file, is empty.");
 
-       // Clean-up by removing the file.
 
-       unlink($output_file);
 
-     }
 
-   }
 
- }
 
 
  |