Skip to content
Snippets Groups Projects
Commit 84af9409 authored by Andrew Downes's avatar Andrew Downes Committed by Michael Aherne
Browse files

Updated to send in batches

parent 037a50be
No related branches found
No related tags found
No related merge requests found
......@@ -95,22 +95,19 @@ class store extends php_obj implements log_writer {
$translatorcontroller = new translator_controller();
// Emits events to other APIs.
foreach ($events as $event) {
$event = (array) $event;
$this->error_log('');
$this->error_log_value('event', $event);
$moodleevent = $moodlecontroller->createEvent($event);
if (is_null($moodleevent)) {
continue;
}
$this->error_log_value('moodleevent', $moodleevent);
$translatorevents = $translatorcontroller->createEvents($moodleevent);
$this->error_log_value('translatorevents', $translatorevents);
foreach ($translatorevents as $index => $translatorevent) {
$xapievent = $xapicontroller->createEvent($translatorevent);
$this->error_log_value('xapievent', $xapievent);
}
foreach ($events as $index => $event) {
$events[$index] = (array) $event;
}
$this->error_log('');
$this->error_log_value('events', $events);
$moodleevents = $moodlecontroller->createEvents($events);
$this->error_log_value('moodleevent', $moodleevents);
$translatorevents = $translatorcontroller->createEvents($moodleevents);
$this->error_log_value('translatorevents', $translatorevents);
$xapievents = $xapicontroller->createEvents($translatorevents);
$this->error_log_value('xapievents', $xapievents);
}
private function error_log_value($key, $value) {
......
......@@ -29,20 +29,22 @@ abstract class TestCase extends PhpUnitTestCase {
public function testCreateEvent() {
$input = $this->constructInput();
$moodle_event = $this->moodle_controller->createEvent($input);
$this->assertTrue($moodle_event != null, 'Check that the event exists in the expander controller.');
$moodle_events = $this->moodle_controller->createEvents([$input]);
$this->assertNotNull($moodle_events, 'Check that the event exists in the expander controller.');
$translator_event = $this->translator_controller->createEvent($moodle_event);
$this->assertTrue($translator_event != null, 'Check that the event exists in the translator controller.');
$translator_events = $this->translator_controller->createEvents($moodle_events);
$this->assertNotNull($translator_events, 'Check that the event exists in the translator controller.');
$xapi_event = $this->xapi_controller->createEvent($translator_event);
$this->assertTrue($xapi_event != null, 'Check that the event exists in the emitter controller.');
$xapi_events = $this->xapi_controller->createEvents($translator_events);
$this->assertNotNull($xapi_events, 'Check that the event exists in the emitter controller.');
$this->assertOutput($input, $xapi_event);
$this->assertOutput($input, $xapi_events);
}
protected function assertOutput($input, $output) {
$this->assertValidXapiStatement((new TinCanStatement($output))->asVersion('1.0.0'));
foreach ($output as $outputpart) {
$this->assertValidXapiStatement((new TinCanStatement($outputpart))->asVersion('1.0.0'));
}
}
protected function assertValidXapiStatement($output) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment