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.
336 lines
9.5 KiB
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);
|
|
}
|
|
}
|
|
}
|