You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
trial/app/migrations/Version20240331093352.php

336 lines
9.5 KiB
PHP

<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240331093352 extends AbstractMigration
{
public const TESTS = [[
'id' => 1,
'name' => 'Trial1'
]];
public const QUESTIONS = [
[
'id' => 1,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "1"}, {"type": "op", "value": "+"}, {"type": "number", "value": "1"}]',
'answers' => [
[[
'type' => 'number',
'value' => '3'
]],
[[
'type' => 'number',
'value' => '2'
]],
[[
'type' => 'number',
'value' => '0'
]]
],
],
[
'id' => 2,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "2"}, {"type": "op", "value": "+"}, {"type": "number", "value": "2"}]',
'answers' => [
[[
'type' => 'number',
'value' => '4'
]],
[
[
'type' => 'number',
'value' => '3'
],
[
'type' => 'op',
'value' => '+'
],
[
'type' => 'number',
'value' => '1'
]
],
[[
'type' => 'number',
'value' => '10'
]]
],
],
[
'id' => 3,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "3"}, {"type": "op", "value": "+"}, {"type": "number", "value": "3"}]',
'answers' => [
[
[
'type' => 'number',
'value' => '1'
],
[
'type' => 'op',
'value' => '+'
],
[
'type' => 'number',
'value' => '5'
]
],
[[
'type' => 'number',
'value' => '1'
]],
[[
'type' => 'number',
'value' => '6'
]],
[
[
'type' => 'number',
'value' => '2'
],
[
'type' => 'op',
'value' => '+'
],
[
'type' => 'number',
'value' => '4'
]
]
],
],
[
'id' => 4,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "4"}, {"type": "op", "value": "+"}, {"type": "number", "value": "4"}]',
'answers' => [
[[
'type' => 'number',
'value' => '8'
]],
[[
'type' => 'number',
'value' => '4'
]],
[[
'type' => 'number',
'value' => '0'
]],
[
[
'type' => 'number',
'value' => '0'
],
[
'type' => 'op',
'value' => '+'
],
[
'type' => 'number',
'value' => '8'
]
],
],
],
[
'id' => 5,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "5"}, {"type": "op", "value": "+"}, {"type": "number", "value": "5"}]',
'answers' => [
[[
'type' => 'number',
'value' => '6'
]],
[[
'type' => 'number',
'value' => '18'
]],
[[
'type' => 'number',
'value' => '10'
]],
[[
'type' => 'number',
'value' => '9'
]],
[[
'type' => 'number',
'value' => '0'
]],
],
],
[
'id' => 6,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "6"}, {"type": "op", "value": "+"}, {"type": "number", "value": "6"}]',
'answers' => [
[[
'type' => 'number',
'value' => '3'
]],
[[
'type' => 'number',
'value' => '9'
]],
[[
'type' => 'number',
'value' => '0'
]],
[[
'type' => 'number',
'value' => '12'
]],
[
[
'type' => 'number',
'value' => '5'
],
[
'type' => 'op',
'value' => '+'
],
[
'type' => 'number',
'value' => '7'
]
],
],
],
[
'id' => 7,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "7"}, {"type": "op", "value": "+"}, {"type": "number", "value": "7"}]',
'answers' => [
[[
'type' => 'number',
'value' => '5'
]],
[[
'type' => 'number',
'value' => '14'
]],
],
],
[
'id' => 8,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "8"}, {"type": "op", "value": "+"}, {"type": "number", "value": "8"}]',
'answers' => [
[[
'type' => 'number',
'value' => '16'
]],
[[
'type' => 'number',
'value' => '12'
]],
[[
'type' => 'number',
'value' => '9'
]],
[[
'type' => 'number',
'value' => '5'
]],
],
],
[
'id' => 9,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "9"}, {"type": "op", "value": "+"}, {"type": "number", "value": "9"}]',
'answers' => [
[[
'type' => 'number',
'value' => '18'
]],
[[
'type' => 'number',
'value' => '9'
]],
[
[
'type' => 'number',
'value' => '17'
],
[
'type' => 'op',
'value' => '+'
],
[
'type' => 'number',
'value' => '1'
]
],
[
[
'type' => 'number',
'value' => '2'
],
[
'type' => 'op',
'value' => '+'
],
[
'type' => 'number',
'value' => '16'
]
],
],
],
[
'id' => 10,
'test_id' => 1,
'prompt' => '[{"type": "number", "value": "10"}, {"type": "op", "value": "+"}, {"type": "number", "value": "10"}]',
'answers' => [
[[
'type' => 'number',
'value' => '0'
]],
[[
'type' => 'number',
'value' => '2'
]],
[[
'type' => 'number',
'value' => '8'
]],
[[
'type' => 'number',
'value' => '20'
]],
],
],
];
public function getDescription(): string
{
return 'Initial';
}
public function up(Schema $schema): void
{
// fill in questions
foreach(self::TESTS as $TEST) {
$this->connection->insert('test', $TEST);
}
foreach(self::QUESTIONS as $QUESTION) {
$QUESTION['answers'] = json_encode($QUESTION['answers']);
$this->connection->insert('question', $QUESTION);
}
}
}