You are here

function QuestionsImportTestCase::matchingHelper in Quiz 6.6

1 call to QuestionsImportTestCase::matchingHelper()
QuestionsImportTestCase::testCsvMatching in includes/questions_import/questions_import.test

File

includes/questions_import/questions_import.test, line 329

Class

QuestionsImportTestCase

Code

function matchingHelper($import_type) {
  $import_questions = array();
  switch ($import_type) {
    case 'aiken':
      $this
        ->assertEqual(0, 1, "Aiken does not support matching import questions");
      return;
      break;
    case 'csv':
      $import_settings['import_type'] = 'native_csv';
      $filetype = '.csv';
      break;
  }
  $filepath = file_create_filename($import_type . '_matching' . $filetype, "sites/default/files");
  $handle = fopen($filepath, "w+");
  for ($i = 0; $i < 30; $i++) {
    $question = new stdClass();
    $question->num_options = mt_rand(1, 10);
    $question->question = "Question #{$i}:";
    $question->type = "matching";
    $question->matches = array();
    $question->answers = array();
    for ($j = 0; $j < $question->num_options; $j++) {
      $question->matches[] = "Match #{$j}";
      $question->answers[] = "Answer #{$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);
}