You are here

function QuestionsImportTestCase::multiloadHelper in Quiz 6.6

2 calls to QuestionsImportTestCase::multiloadHelper()
QuestionsImportTestCase::testAikenMultiload in includes/questions_import/questions_import.test
QuestionsImportTestCase::testCsvMultiload in includes/questions_import/questions_import.test

File

includes/questions_import/questions_import.test, line 449

Class

QuestionsImportTestCase

Code

function multiloadHelper($import_type) {
  $import_settings['quiz_node'] = '1';
  switch ($import_type) {
    case 'aiken':
      $import_settings['import_type'] = 'native_aiken';
      $filetype = '.txt';
      break;
    case 'csv':
      $import_settings['import_type'] = 'native_csv';
      $filetype = '.csv';
      break;
  }
  $import_settings['field_separator'] = ',';
  $import_questions = array();
  for ($i = 0; $i < 6; $i++) {
    $filepath = file_create_filename($import_type . '_multi_' . $i . $filetype, file_directory_temp());
    $handle = fopen($filepath, "w+");
    for ($j = $i * 5; $j < ($i + 1) * 5; $j++) {
      $question = new stdClass();
      $question->num_options = mt_rand(2, 5);
      $question->answer = mt_rand(0, $question->num_options - 1);
      $question->question = "Question #{$j}:";
      $question->type = "multichoice";
      $question->answers = array(
        "true",
        "false",
      );
      for ($k = 0; $k < $question->num_options; $k++) {
        $question->answers[$k] = "Option #{$k}";
      }
      $write = $this
        ->writeImport($import_type, $question);
      fwrite($handle, $write);
      $import_questions[] = $question;
    }
    fclose($handle);
    $import_settings['files[upload]'] = $filepath;
    $this
      ->drupalPost('admin/quiz/questions_import', $import_settings, 'Import');
    $this
      ->assertPattern('/5 questions were imported successfully/', t('Checking import success message'));
  }
  $this
    ->quizHelper($import_questions);
}