You are here

function QuestionsImportTestCase::multichoiceHelper in Quiz 6.6

2 calls to QuestionsImportTestCase::multichoiceHelper()
QuestionsImportTestCase::testAikenMultichoice in includes/questions_import/questions_import.test
QuestionsImportTestCase::testCsvMultichoice in includes/questions_import/questions_import.test

File

includes/questions_import/questions_import.test, line 289

Class

QuestionsImportTestCase

Code

function multichoiceHelper($import_type) {
  $import_questions = array();
  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;
  }
  $filepath = file_create_filename($import_type . '_multichoice' . $filetype, file_directory_temp());
  $handle = fopen($filepath, "w+");
  for ($i = 0; $i < 30; $i++) {
    $question = new stdClass();
    $question->num_options = mt_rand(2, 6);
    $question->answer = mt_rand(0, $question->num_options - 1);
    $question->question = "Question #{$i}:";
    $question->type = "multichoice";
    $question->answers = array();
    for ($j = 0; $j < $question->num_options; $j++) {
      $question->answers[$j] = "Option #{$j}";
    }
    $write = $this
      ->writeImport($import_type, $question);
    fwrite($handle, $write);
    $import_questions[] = $question;
  }
  fclose($handle);
  $import_settings['quiz_node'] = '1';
  $import_settings['field_separator'] = ',';
  $import_settings['files[upload]'] = $filepath;
  $msg = $this
    ->drupalPost('admin/quiz/questions_import', $import_settings, 'Import');
  $this
    ->assertPattern('/30 questions were imported successfully/', t('Checking import success message'));
  $this
    ->quizHelper($import_questions);
}