sheerockoff / bitrix-ci
Minimal build of Bitrix for CI
v22.600
2023-03-22 15:32 UTC
Requires
- php: >=7.4
- ext-mysqli: *
Requires (Dev)
- phpunit/phpunit: ^9.0
- symfony/var-dumper: ^3.4
README
Минимальный сборка Bitrix для использования в тестировании.
Быстрый старт
Устанавливаем.
composer require --dev sheerockoff/bitrix-ci
Подключаем зависимости.
<?php require 'vendor/autoload.php';
Подключение к базе данных настраивается переменными окружения MYSQL_HOST
, MYSQL_DATABASE
, MYSQL_USER
и MYSQL_PASSWORD
.
Они могут быть переопределены в PHP.
putenv('MYSQL_HOST=localhost'); putenv('MYSQL_DATABASE=bitrix_ci'); putenv('MYSQL_USER=user'); putenv('MYSQL_PASSWORD=password');
Разворачиваем дамп MySQL.
\Sheerockoff\BitrixCi\Bootstrap::migrate();
Подключаем Bitrix.
\Sheerockoff\BitrixCi\Bootstrap::bootstrap();
Тестируем код, который зависит от API Bitrix.
/** * @param array $stack * @return array */ public function testCanGetBitrixElement(array $stack) { $element = CIBlockElement::GetList(null, ['ID' => $stack['id']])->GetNextElement(); $this->assertInstanceOf(_CIBElement::class, $element); $fields = $element->GetFields(); $this->assertEquals($stack['id'], $fields['ID']); return $stack; }