Compare commits

...

16 Commits

Author SHA1 Message Date
aslan 5f3c4449c0 add ExaminationTypeTest.php
Tests & Lint & Deploy to Railway / build (2.6.6, 20.x, 8.3) (push) Failing after 2m8s Details
Tests & Lint & Deploy to Railway / deploy (push) Has been skipped Details
2024-02-17 10:24:21 +03:00
aslan f5d69e9c7f fix tests error show view on examination type 2024-02-17 10:10:57 +03:00
aslan 1e0cf9a9e0 fix lint 2024-02-17 09:24:45 +03:00
aslan e86a93d3d4 add refresh 2024-02-16 16:28:30 +03:00
aslan a78f2bdef5 add faker to required 2024-02-16 16:23:35 +03:00
aslan c34ba769dd add faker to required 2024-02-16 16:19:38 +03:00
aslan 0fc9053675 add dev to install docker 2024-02-16 16:12:50 +03:00
aslan 8b2736e785 add comand db-prepare and start-app 2024-02-16 16:04:44 +03:00
aslan f8f6d4b3d3 add fix in appservice provider 2024-02-16 15:59:29 +03:00
aslan 65d9b41197 add php 8.3 2024-02-16 15:55:04 +03:00
aslan 96e2e4270c add php 8.3 2024-02-16 15:53:07 +03:00
aslan 4b154e1160 add php 8.3 2024-02-16 15:51:13 +03:00
aslan 90488e5d99 add php 8.3 2024-02-16 15:47:08 +03:00
aslan 46d984b49b add php 8.3 2024-02-16 15:38:13 +03:00
aslan 00271923b1 add xdebud.ini 2024-02-16 15:25:30 +03:00
aslan 6e7ed94654 add Docker for deploy 2024-02-16 15:20:54 +03:00
10 changed files with 406 additions and 242 deletions

24
Dockerfile Normal file
View File

@ -0,0 +1,24 @@
# syntax = edrevo/dockerfile-plus
INCLUDE+ Dockerfile.dev
ENV PORT=80
COPY composer.json composer.lock ./
#COPY app/Helpers/helpers.php ./app/Helpers/helpers.php
RUN composer install --prefer-dist --no-scripts --no-dev --no-autoloader
COPY package.json package-lock.json ./
RUN npm install
COPY . .
RUN composer dump-autoload --no-dev --optimize
RUN npm run prod
CMD ["bash", "-c", "make db-prepare start-app"]
EXPOSE ${PORT}

48
Dockerfile.dev Normal file
View File

@ -0,0 +1,48 @@
FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=Europe/Moscow
ENV PATH=node_modules/.bin:$PATH
WORKDIR /app
RUN apt update && apt upgrade -y
RUN apt install ca-certificates apt-transport-https software-properties-common lsb-release -y
RUN add-apt-repository ppa:ondrej/php -y
RUN apt-get update && apt-get install -y \
make \
curl \
git \
libpq-dev \
libzip-dev \
sqlite3 \
unzip \
zip \
php8.3 \
php8.3-bcmath \
php8.3-exif \
php8.3-pdo \
php8.3-pgsql \
php8.3-pgsql \
php8.3-zip \
php8.3-xdebug \
php8.3-dom \
php8.3-xml \
php8.3-mbstring \
php8.3-sqlite3 \
php8.3-curl
RUN apt-get update && apt-get install -y \
software-properties-common \
&& rm -rf /var/lib/apt/lists/*
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
COPY ./xdebug.ini /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash -
RUN apt-get update && apt-get install -y nodejs
ENV PATH=node_modules/.bin:$PATH

View File

@ -57,3 +57,9 @@ ide-helper:
php artisan ide-helper:gen
php artisan ide-helper:meta
php artisan ide-helper:mod -n
db-prepare:
php artisan migrate:refresh --force --seed
start-app:
php artisan serve --host 0.0.0.0 --port ${PORT}

View File

@ -2,23 +2,20 @@
namespace App\Providers;
use Illuminate\Routing\UrlGenerator;
use Illuminate\Support\ServiceProvider;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*/
public function register(): void
{
//
}
/**
* Bootstrap any application services.
*/
public function boot(): void
public function boot(UrlGenerator $url): void
{
//
if (env('APP_ENV') == 'production') {
$url->forceScheme('https');
}
}
}

View File

@ -16,10 +16,10 @@
"laravel/tinker": "^2.9.0",
"laravel/ui": "^4.4.0",
"laravelcollective/html": "^6.4.1",
"league/flysystem": "^3.24.0"
"league/flysystem": "^3.24.0",
"fakerphp/faker": "^1.23.1"
},
"require-dev": {
"fakerphp/faker": "^1.23.1",
"laravel/breeze": "^1.28.1",
"laravel/pint": "^1.13.10",
"laravel/sail": "^1.27.3",

425
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "3c31e42f7cfc5921b4dfaffd75926ba5",
"content-hash": "5cf86f441bf56b881a8a88e4cd9e4af6",
"packages": [
{
"name": "brick/math",
@ -298,27 +298,27 @@
},
{
"name": "doctrine/lexer",
"version": "3.0.0",
"version": "3.0.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/lexer.git",
"reference": "84a527db05647743d50373e0ec53a152f2cde568"
"reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/lexer/zipball/84a527db05647743d50373e0ec53a152f2cde568",
"reference": "84a527db05647743d50373e0ec53a152f2cde568",
"url": "https://api.github.com/repos/doctrine/lexer/zipball/31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd",
"reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd",
"shasum": ""
},
"require": {
"php": "^8.1"
},
"require-dev": {
"doctrine/coding-standard": "^10",
"phpstan/phpstan": "^1.9",
"phpunit/phpunit": "^9.5",
"doctrine/coding-standard": "^12",
"phpstan/phpstan": "^1.10",
"phpunit/phpunit": "^10.5",
"psalm/plugin-phpunit": "^0.18.3",
"vimeo/psalm": "^5.0"
"vimeo/psalm": "^5.21"
},
"type": "library",
"autoload": {
@ -355,7 +355,7 @@
],
"support": {
"issues": "https://github.com/doctrine/lexer/issues",
"source": "https://github.com/doctrine/lexer/tree/3.0.0"
"source": "https://github.com/doctrine/lexer/tree/3.0.1"
},
"funding": [
{
@ -371,7 +371,7 @@
"type": "tidelift"
}
],
"time": "2022-12-15T16:57:16+00:00"
"time": "2024-02-05T11:56:58+00:00"
},
{
"name": "dragonmantank/cron-expression",
@ -501,6 +501,69 @@
],
"time": "2023-10-06T06:47:41+00:00"
},
{
"name": "fakerphp/faker",
"version": "v1.23.1",
"source": {
"type": "git",
"url": "https://github.com/FakerPHP/Faker.git",
"reference": "bfb4fe148adbf78eff521199619b93a52ae3554b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FakerPHP/Faker/zipball/bfb4fe148adbf78eff521199619b93a52ae3554b",
"reference": "bfb4fe148adbf78eff521199619b93a52ae3554b",
"shasum": ""
},
"require": {
"php": "^7.4 || ^8.0",
"psr/container": "^1.0 || ^2.0",
"symfony/deprecation-contracts": "^2.2 || ^3.0"
},
"conflict": {
"fzaninotto/faker": "*"
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.4.1",
"doctrine/persistence": "^1.3 || ^2.0",
"ext-intl": "*",
"phpunit/phpunit": "^9.5.26",
"symfony/phpunit-bridge": "^5.4.16"
},
"suggest": {
"doctrine/orm": "Required to use Faker\\ORM\\Doctrine",
"ext-curl": "Required by Faker\\Provider\\Image to download images.",
"ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.",
"ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.",
"ext-mbstring": "Required for multibyte Unicode string functionality."
},
"type": "library",
"autoload": {
"psr-4": {
"Faker\\": "src/Faker/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "François Zaninotto"
}
],
"description": "Faker is a PHP library that generates fake data for you.",
"keywords": [
"data",
"faker",
"fixtures"
],
"support": {
"issues": "https://github.com/FakerPHP/Faker/issues",
"source": "https://github.com/FakerPHP/Faker/tree/v1.23.1"
},
"time": "2024-01-02T13:46:09+00:00"
},
{
"name": "fruitcake/php-cors",
"version": "v1.3.0",
@ -1099,16 +1162,16 @@
},
{
"name": "laravel/framework",
"version": "v10.43.0",
"version": "v10.44.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
"reference": "4f7802dfc9993cb57cf69615491ce1a7eb2e9529"
"reference": "1199dbe361787bbe9648131a79f53921b4148cf6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/framework/zipball/4f7802dfc9993cb57cf69615491ce1a7eb2e9529",
"reference": "4f7802dfc9993cb57cf69615491ce1a7eb2e9529",
"url": "https://api.github.com/repos/laravel/framework/zipball/1199dbe361787bbe9648131a79f53921b4148cf6",
"reference": "1199dbe361787bbe9648131a79f53921b4148cf6",
"shasum": ""
},
"require": {
@ -1156,6 +1219,7 @@
"conflict": {
"carbonphp/carbon-doctrine-types": ">=3.0",
"doctrine/dbal": ">=4.0",
"phpunit/phpunit": ">=11.0.0",
"tightenco/collect": "<5.5.33"
},
"provide": {
@ -1300,7 +1364,7 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
"time": "2024-01-30T16:25:02+00:00"
"time": "2024-02-13T16:01:16+00:00"
},
{
"name": "laravel/prompts",
@ -2438,25 +2502,27 @@
},
{
"name": "nikic/php-parser",
"version": "v4.18.0",
"version": "v5.0.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
"reference": "1bcbb2179f97633e98bbbc87044ee2611c7d7999"
"reference": "4a21235f7e56e713259a6f76bf4b5ea08502b9dc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/1bcbb2179f97633e98bbbc87044ee2611c7d7999",
"reference": "1bcbb2179f97633e98bbbc87044ee2611c7d7999",
"url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/4a21235f7e56e713259a6f76bf4b5ea08502b9dc",
"reference": "4a21235f7e56e713259a6f76bf4b5ea08502b9dc",
"shasum": ""
},
"require": {
"ext-ctype": "*",
"ext-json": "*",
"ext-tokenizer": "*",
"php": ">=7.0"
"php": ">=7.4"
},
"require-dev": {
"ircmaxell/php-yacc": "^0.0.7",
"phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0"
"phpunit/phpunit": "^7.0 || ^8.0 || ^9.0"
},
"bin": [
"bin/php-parse"
@ -2464,7 +2530,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "4.9-dev"
"dev-master": "5.0-dev"
}
},
"autoload": {
@ -2488,9 +2554,9 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
"source": "https://github.com/nikic/PHP-Parser/tree/v4.18.0"
"source": "https://github.com/nikic/PHP-Parser/tree/v5.0.0"
},
"time": "2023-12-10T21:03:43+00:00"
"time": "2024-01-07T17:17:35+00:00"
},
{
"name": "nunomaduro/termwind",
@ -4246,16 +4312,16 @@
},
{
"name": "symfony/polyfill-ctype",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
"reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb"
"reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb",
"reference": "ea208ce43cbb04af6867b4fdddb1bdbf84cc28cb",
"url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/ef4d7e442ca910c4764bce785146269b30cb5fc4",
"reference": "ef4d7e442ca910c4764bce785146269b30cb5fc4",
"shasum": ""
},
"require": {
@ -4269,9 +4335,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4308,7 +4371,7 @@
"portable"
],
"support": {
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-ctype/tree/v1.29.0"
},
"funding": [
{
@ -4324,20 +4387,20 @@
"type": "tidelift"
}
],
"time": "2023-01-26T09:26:14+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/polyfill-intl-grapheme",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-grapheme.git",
"reference": "875e90aeea2777b6f135677f618529449334a612"
"reference": "32a9da87d7b3245e09ac426c83d334ae9f06f80f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/875e90aeea2777b6f135677f618529449334a612",
"reference": "875e90aeea2777b6f135677f618529449334a612",
"url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/32a9da87d7b3245e09ac426c83d334ae9f06f80f",
"reference": "32a9da87d7b3245e09ac426c83d334ae9f06f80f",
"shasum": ""
},
"require": {
@ -4348,9 +4411,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4389,7 +4449,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.29.0"
},
"funding": [
{
@ -4405,20 +4465,20 @@
"type": "tidelift"
}
],
"time": "2023-01-26T09:26:14+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/polyfill-intl-idn",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-idn.git",
"reference": "ecaafce9f77234a6a449d29e49267ba10499116d"
"reference": "a287ed7475f85bf6f61890146edbc932c0fff919"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/ecaafce9f77234a6a449d29e49267ba10499116d",
"reference": "ecaafce9f77234a6a449d29e49267ba10499116d",
"url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/a287ed7475f85bf6f61890146edbc932c0fff919",
"reference": "a287ed7475f85bf6f61890146edbc932c0fff919",
"shasum": ""
},
"require": {
@ -4431,9 +4491,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4476,7 +4533,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.29.0"
},
"funding": [
{
@ -4492,20 +4549,20 @@
"type": "tidelift"
}
],
"time": "2023-01-26T09:30:37+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/polyfill-intl-normalizer",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
"reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92"
"reference": "bc45c394692b948b4d383a08d7753968bed9a83d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
"reference": "8c4ad05dd0120b6a53c1ca374dca2ad0a1c4ed92",
"url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/bc45c394692b948b4d383a08d7753968bed9a83d",
"reference": "bc45c394692b948b4d383a08d7753968bed9a83d",
"shasum": ""
},
"require": {
@ -4516,9 +4573,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4560,7 +4614,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.29.0"
},
"funding": [
{
@ -4576,20 +4630,20 @@
"type": "tidelift"
}
],
"time": "2023-01-26T09:26:14+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/polyfill-mbstring",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
"reference": "42292d99c55abe617799667f454222c54c60e229"
"reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/42292d99c55abe617799667f454222c54c60e229",
"reference": "42292d99c55abe617799667f454222c54c60e229",
"url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/9773676c8a1bb1f8d4340a62efe641cf76eda7ec",
"reference": "9773676c8a1bb1f8d4340a62efe641cf76eda7ec",
"shasum": ""
},
"require": {
@ -4603,9 +4657,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4643,7 +4694,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-mbstring/tree/v1.29.0"
},
"funding": [
{
@ -4659,20 +4710,20 @@
"type": "tidelift"
}
],
"time": "2023-07-28T09:04:16+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/polyfill-php72",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php72.git",
"reference": "70f4aebd92afca2f865444d30a4d2151c13c3179"
"reference": "861391a8da9a04cbad2d232ddd9e4893220d6e25"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/70f4aebd92afca2f865444d30a4d2151c13c3179",
"reference": "70f4aebd92afca2f865444d30a4d2151c13c3179",
"url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/861391a8da9a04cbad2d232ddd9e4893220d6e25",
"reference": "861391a8da9a04cbad2d232ddd9e4893220d6e25",
"shasum": ""
},
"require": {
@ -4680,9 +4731,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4719,7 +4767,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php72/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-php72/tree/v1.29.0"
},
"funding": [
{
@ -4735,20 +4783,20 @@
"type": "tidelift"
}
],
"time": "2023-01-26T09:26:14+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/polyfill-php80",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php80.git",
"reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5"
"reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
"reference": "6caa57379c4aec19c0a12a38b59b26487dcfe4b5",
"url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/87b68208d5c1188808dd7839ee1e6c8ec3b02f1b",
"reference": "87b68208d5c1188808dd7839ee1e6c8ec3b02f1b",
"shasum": ""
},
"require": {
@ -4756,9 +4804,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4802,7 +4847,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php80/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-php80/tree/v1.29.0"
},
"funding": [
{
@ -4818,20 +4863,20 @@
"type": "tidelift"
}
],
"time": "2023-01-26T09:26:14+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/polyfill-php83",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php83.git",
"reference": "b0f46ebbeeeda3e9d2faebdfbf4b4eae9b59fa11"
"reference": "86fcae159633351e5fd145d1c47de6c528f8caff"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/b0f46ebbeeeda3e9d2faebdfbf4b4eae9b59fa11",
"reference": "b0f46ebbeeeda3e9d2faebdfbf4b4eae9b59fa11",
"url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/86fcae159633351e5fd145d1c47de6c528f8caff",
"reference": "86fcae159633351e5fd145d1c47de6c528f8caff",
"shasum": ""
},
"require": {
@ -4840,9 +4885,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4882,7 +4924,7 @@
"shim"
],
"support": {
"source": "https://github.com/symfony/polyfill-php83/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-php83/tree/v1.29.0"
},
"funding": [
{
@ -4898,20 +4940,20 @@
"type": "tidelift"
}
],
"time": "2023-08-16T06:22:46+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/polyfill-uuid",
"version": "v1.28.0",
"version": "v1.29.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-uuid.git",
"reference": "9c44518a5aff8da565c8a55dbe85d2769e6f630e"
"reference": "3abdd21b0ceaa3000ee950097bc3cf9efc137853"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/9c44518a5aff8da565c8a55dbe85d2769e6f630e",
"reference": "9c44518a5aff8da565c8a55dbe85d2769e6f630e",
"url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/3abdd21b0ceaa3000ee950097bc3cf9efc137853",
"reference": "3abdd21b0ceaa3000ee950097bc3cf9efc137853",
"shasum": ""
},
"require": {
@ -4925,9 +4967,6 @@
},
"type": "library",
"extra": {
"branch-alias": {
"dev-main": "1.28-dev"
},
"thanks": {
"name": "symfony/polyfill",
"url": "https://github.com/symfony/polyfill"
@ -4964,7 +5003,7 @@
"uuid"
],
"support": {
"source": "https://github.com/symfony/polyfill-uuid/tree/v1.28.0"
"source": "https://github.com/symfony/polyfill-uuid/tree/v1.29.0"
},
"funding": [
{
@ -4980,7 +5019,7 @@
"type": "tidelift"
}
],
"time": "2023-01-26T09:26:14+00:00"
"time": "2024-01-29T20:11:03+00:00"
},
{
"name": "symfony/process",
@ -5899,40 +5938,40 @@
"packages-dev": [
{
"name": "barryvdh/laravel-ide-helper",
"version": "v2.13.0",
"version": "v2.15.1",
"source": {
"type": "git",
"url": "https://github.com/barryvdh/laravel-ide-helper.git",
"reference": "81d5b223ff067a1f38e14c100997e153b837fe4a"
"reference": "77831852bb7bc54f287246d32eb91274eaf87f8b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/81d5b223ff067a1f38e14c100997e153b837fe4a",
"reference": "81d5b223ff067a1f38e14c100997e153b837fe4a",
"url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/77831852bb7bc54f287246d32eb91274eaf87f8b",
"reference": "77831852bb7bc54f287246d32eb91274eaf87f8b",
"shasum": ""
},
"require": {
"barryvdh/reflection-docblock": "^2.0.6",
"composer/class-map-generator": "^1.0",
"doctrine/dbal": "^2.6 || ^3",
"doctrine/dbal": "^2.6 || ^3.1.4",
"ext-json": "*",
"illuminate/console": "^8 || ^9 || ^10",
"illuminate/filesystem": "^8 || ^9 || ^10",
"illuminate/support": "^8 || ^9 || ^10",
"nikic/php-parser": "^4.7",
"php": "^7.3 || ^8.0",
"illuminate/console": "^9 || ^10",
"illuminate/filesystem": "^9 || ^10",
"illuminate/support": "^9 || ^10",
"nikic/php-parser": "^4.18 || ^5",
"php": "^8.0",
"phpdocumentor/type-resolver": "^1.1.0"
},
"require-dev": {
"ext-pdo_sqlite": "*",
"friendsofphp/php-cs-fixer": "^2",
"illuminate/config": "^8 || ^9 || ^10",
"illuminate/view": "^8 || ^9 || ^10",
"friendsofphp/php-cs-fixer": "^3",
"illuminate/config": "^9 || ^10",
"illuminate/view": "^9 || ^10",
"mockery/mockery": "^1.4",
"orchestra/testbench": "^6 || ^7 || ^8",
"phpunit/phpunit": "^8.5 || ^9",
"spatie/phpunit-snapshot-assertions": "^3 || ^4",
"vimeo/psalm": "^3.12"
"orchestra/testbench": "^7 || ^8",
"phpunit/phpunit": "^9",
"spatie/phpunit-snapshot-assertions": "^4",
"vimeo/psalm": "^5.4"
},
"suggest": {
"illuminate/events": "Required for automatic helper generation (^6|^7|^8|^9|^10)."
@ -5940,7 +5979,7 @@
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "2.12-dev"
"dev-master": "2.15-dev"
},
"laravel": {
"providers": [
@ -5977,7 +6016,7 @@
],
"support": {
"issues": "https://github.com/barryvdh/laravel-ide-helper/issues",
"source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.13.0"
"source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.15.1"
},
"funding": [
{
@ -5989,7 +6028,7 @@
"type": "github"
}
],
"time": "2023-02-04T13:56:40+00:00"
"time": "2024-02-15T14:23:20+00:00"
},
{
"name": "barryvdh/reflection-docblock",
@ -6282,16 +6321,16 @@
},
{
"name": "doctrine/dbal",
"version": "3.8.1",
"version": "3.8.2",
"source": {
"type": "git",
"url": "https://github.com/doctrine/dbal.git",
"reference": "c9ea252cdce4da324ede3d6c5913dd89f769afd2"
"reference": "a19a1d05ca211f41089dffcc387733a6875196cb"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/dbal/zipball/c9ea252cdce4da324ede3d6c5913dd89f769afd2",
"reference": "c9ea252cdce4da324ede3d6c5913dd89f769afd2",
"url": "https://api.github.com/repos/doctrine/dbal/zipball/a19a1d05ca211f41089dffcc387733a6875196cb",
"reference": "a19a1d05ca211f41089dffcc387733a6875196cb",
"shasum": ""
},
"require": {
@ -6375,7 +6414,7 @@
],
"support": {
"issues": "https://github.com/doctrine/dbal/issues",
"source": "https://github.com/doctrine/dbal/tree/3.8.1"
"source": "https://github.com/doctrine/dbal/tree/3.8.2"
},
"funding": [
{
@ -6391,7 +6430,7 @@
"type": "tidelift"
}
],
"time": "2024-02-03T17:33:49+00:00"
"time": "2024-02-12T18:36:36+00:00"
},
{
"name": "doctrine/deprecations",
@ -6531,69 +6570,6 @@
],
"time": "2022-10-12T20:59:15+00:00"
},
{
"name": "fakerphp/faker",
"version": "v1.23.1",
"source": {
"type": "git",
"url": "https://github.com/FakerPHP/Faker.git",
"reference": "bfb4fe148adbf78eff521199619b93a52ae3554b"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FakerPHP/Faker/zipball/bfb4fe148adbf78eff521199619b93a52ae3554b",
"reference": "bfb4fe148adbf78eff521199619b93a52ae3554b",
"shasum": ""
},
"require": {
"php": "^7.4 || ^8.0",
"psr/container": "^1.0 || ^2.0",
"symfony/deprecation-contracts": "^2.2 || ^3.0"
},
"conflict": {
"fzaninotto/faker": "*"
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.4.1",
"doctrine/persistence": "^1.3 || ^2.0",
"ext-intl": "*",
"phpunit/phpunit": "^9.5.26",
"symfony/phpunit-bridge": "^5.4.16"
},
"suggest": {
"doctrine/orm": "Required to use Faker\\ORM\\Doctrine",
"ext-curl": "Required by Faker\\Provider\\Image to download images.",
"ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.",
"ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.",
"ext-mbstring": "Required for multibyte Unicode string functionality."
},
"type": "library",
"autoload": {
"psr-4": {
"Faker\\": "src/Faker/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "François Zaninotto"
}
],
"description": "Faker is a PHP library that generates fake data for you.",
"keywords": [
"data",
"faker",
"fixtures"
],
"support": {
"issues": "https://github.com/FakerPHP/Faker/issues",
"source": "https://github.com/FakerPHP/Faker/tree/v1.23.1"
},
"time": "2024-01-02T13:46:09+00:00"
},
{
"name": "filp/whoops",
"version": "2.15.4",
@ -6718,16 +6694,16 @@
},
{
"name": "laravel/breeze",
"version": "v1.28.1",
"version": "v1.28.2",
"source": {
"type": "git",
"url": "https://github.com/laravel/breeze.git",
"reference": "e853918e770822780efd160a73fd676992340aca"
"reference": "1e48e29d3f769bb90bbdf2934c52f4612e3b5b47"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/breeze/zipball/e853918e770822780efd160a73fd676992340aca",
"reference": "e853918e770822780efd160a73fd676992340aca",
"url": "https://api.github.com/repos/laravel/breeze/zipball/1e48e29d3f769bb90bbdf2934c52f4612e3b5b47",
"reference": "1e48e29d3f769bb90bbdf2934c52f4612e3b5b47",
"shasum": ""
},
"require": {
@ -6776,20 +6752,20 @@
"issues": "https://github.com/laravel/breeze/issues",
"source": "https://github.com/laravel/breeze"
},
"time": "2024-01-15T16:14:10+00:00"
"time": "2024-02-13T02:26:19+00:00"
},
{
"name": "laravel/pint",
"version": "v1.13.10",
"version": "v1.13.11",
"source": {
"type": "git",
"url": "https://github.com/laravel/pint.git",
"reference": "e2b5060885694ca30ac008c05dc9d47f10ed1abf"
"reference": "60a163c3e7e3346a1dec96d3e6f02e6465452552"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/pint/zipball/e2b5060885694ca30ac008c05dc9d47f10ed1abf",
"reference": "e2b5060885694ca30ac008c05dc9d47f10ed1abf",
"url": "https://api.github.com/repos/laravel/pint/zipball/60a163c3e7e3346a1dec96d3e6f02e6465452552",
"reference": "60a163c3e7e3346a1dec96d3e6f02e6465452552",
"shasum": ""
},
"require": {
@ -6800,13 +6776,13 @@
"php": "^8.1.0"
},
"require-dev": {
"friendsofphp/php-cs-fixer": "^3.47.1",
"illuminate/view": "^10.41.0",
"friendsofphp/php-cs-fixer": "^3.49.0",
"illuminate/view": "^10.43.0",
"larastan/larastan": "^2.8.1",
"laravel-zero/framework": "^10.3.0",
"mockery/mockery": "^1.6.7",
"nunomaduro/termwind": "^1.15.1",
"pestphp/pest": "^2.31.0"
"pestphp/pest": "^2.33.6"
},
"bin": [
"builds/pint"
@ -6842,20 +6818,20 @@
"issues": "https://github.com/laravel/pint/issues",
"source": "https://github.com/laravel/pint"
},
"time": "2024-01-22T09:04:15+00:00"
"time": "2024-02-13T17:20:13+00:00"
},
{
"name": "laravel/sail",
"version": "v1.27.3",
"version": "v1.27.4",
"source": {
"type": "git",
"url": "https://github.com/laravel/sail.git",
"reference": "7e01b345072c9604ead9d7aed175bf7ac1d80289"
"reference": "3047e1a157fad968cc5f6e620d5cbe5c0867fffd"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/sail/zipball/7e01b345072c9604ead9d7aed175bf7ac1d80289",
"reference": "7e01b345072c9604ead9d7aed175bf7ac1d80289",
"url": "https://api.github.com/repos/laravel/sail/zipball/3047e1a157fad968cc5f6e620d5cbe5c0867fffd",
"reference": "3047e1a157fad968cc5f6e620d5cbe5c0867fffd",
"shasum": ""
},
"require": {
@ -6874,9 +6850,6 @@
],
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.x-dev"
},
"laravel": {
"providers": [
"Laravel\\Sail\\SailServiceProvider"
@ -6907,7 +6880,7 @@
"issues": "https://github.com/laravel/sail/issues",
"source": "https://github.com/laravel/sail"
},
"time": "2024-01-30T03:03:59+00:00"
"time": "2024-02-08T15:24:21+00:00"
},
{
"name": "mockery/mockery",
@ -7418,16 +7391,16 @@
},
{
"name": "phpstan/phpstan",
"version": "1.10.57",
"version": "1.10.58",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpstan.git",
"reference": "1627b1d03446904aaa77593f370c5201d2ecc34e"
"reference": "a23518379ec4defd9e47cbf81019526861623ec2"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/1627b1d03446904aaa77593f370c5201d2ecc34e",
"reference": "1627b1d03446904aaa77593f370c5201d2ecc34e",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/a23518379ec4defd9e47cbf81019526861623ec2",
"reference": "a23518379ec4defd9e47cbf81019526861623ec2",
"shasum": ""
},
"require": {
@ -7476,7 +7449,7 @@
"type": "tidelift"
}
],
"time": "2024-01-24T11:51:34+00:00"
"time": "2024-02-12T20:02:57+00:00"
},
{
"name": "phpunit/php-code-coverage",
@ -9080,16 +9053,16 @@
},
{
"name": "spatie/laravel-ignition",
"version": "2.4.1",
"version": "2.4.2",
"source": {
"type": "git",
"url": "https://github.com/spatie/laravel-ignition.git",
"reference": "005e1e7b1232f3b22d7e7be3f602693efc7dba67"
"reference": "351504f4570e32908839fc5a2dc53bf77d02f85e"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/005e1e7b1232f3b22d7e7be3f602693efc7dba67",
"reference": "005e1e7b1232f3b22d7e7be3f602693efc7dba67",
"url": "https://api.github.com/repos/spatie/laravel-ignition/zipball/351504f4570e32908839fc5a2dc53bf77d02f85e",
"reference": "351504f4570e32908839fc5a2dc53bf77d02f85e",
"shasum": ""
},
"require": {
@ -9168,7 +9141,7 @@
"type": "github"
}
],
"time": "2024-01-12T13:14:58+00:00"
"time": "2024-02-09T16:08:40+00:00"
},
{
"name": "squizlabs/php_codesniffer",

View File

@ -3,7 +3,8 @@
"type": "module",
"scripts": {
"dev": "vite",
"build": "vite build"
"build": "vite build",
"prod": "vite build"
},
"devDependencies": {
"@popperjs/core": "^2.11.6",

View File

@ -3,14 +3,16 @@
@auth()
<div class="container mt-4">
<h2>Название</h2>
<p>{{ $educationForm->name }}</p>
<p>{{ $examinationType->name }}</p>
<h2>Описание</h2>
<p>{{ $educationForm->description }}</p>
<p>{{ $examinationType->description }}</p>
<h2>URL</h2>
<p>{{ $educationForm->slug }}</p>
<p>{{ $examinationType->slug }}</p>
<h2>Позиция</h2>
<p>{{ $examinationType->position }}</p>
<h2>Направления</h2>
@foreach($directions as $direction)
<p><a href="{{ route('directions.show', $direction) }}">{{ $direction->name }}</a></p>
@foreach($examinationType->entranceExaminations as $entranceExamination)
<p><a href="{{ route('entrance_examinations.show', $entranceExamination) }}">{{ $entranceExamination->name }}</a></p>
@endforeach
</div>
@endauth

View File

@ -0,0 +1,107 @@
<?php
namespace Tests\Feature\admin\catalog\direction;
use App\Models\Department;
use App\Models\Direction;
use App\Models\EducationalInstitution;
use App\Models\EducationForm;
use App\Models\EducationLevel;
use App\Models\ExaminationType;
use App\Models\Faculty;
use App\Models\User;
use Tests\TestCase;
class ExaminationTypeTest extends TestCase
{
private User $user;
private ExaminationType $type;
private array $data;
protected function setUp(): void
{
parent::setUp();
$this->type = ExaminationType::factory()->create();
$this->data = ExaminationType::factory()->make()->only([
'name',
'description',
'position',
'slug',
]);
$this->user = User::factory()->create([
'name' => 'admin',
'email' => 'test@example.com',
'password' => 123456
]);
}
public function testIndexExaminationTypesPage(): void
{
$response = $this->actingAs($this->user)
->withSession(['banned' => false])
->get(route('examination_types.index'));
$response->assertOk();
}
public function testCreateExaminationTypePage(): void
{
$response = $this->actingAs($this->user)
->withSession(['banned' => false])
->get(route('examination_types.create'));
$response->assertOk();
}
public function testStoreExaminationType(): void
{
$response = $this->actingAs($this->user)
->withSession(['banned' => false])
->post(route('examination_types.store', $this->data));
$response->assertRedirect(route('examination_types.index'));
$this->assertDatabaseHas('examination_types', $this->data);
}
public function testShowExaminationTypePage(): void
{
$response = $this->actingAs($this->user)
->withSession(['banned' => false])
->get(route('examination_types.show', $this->type));
$response->assertOk();
}
public function testEditExaminationTypePage(): void
{
$response = $this->actingAs($this->user)
->withSession(['banned' => false])
->get(route('examination_types.edit', $this->type));
$response->assertOk();
}
public function testUpdateExaminationType(): void
{
$response = $this->actingAs($this->user)
->withSession(['banned' => false])
->patch(route('examination_types.update', $this->type), $this->data);
$response->assertRedirect(route('examination_types.index'));
$this->assertDatabaseHas('examination_types', $this->data);
}
public function testDestroyExaminationType(): void
{
$response = $this->actingAs($this->user)
->withSession(['banned' => false])
->delete(route('examination_types.destroy', $this->type));
$response->assertRedirect(route('examination_types.index'));
$this->assertDatabaseMissing('examination_types', $this->type->toArray());
}
}

6
xdebug.ini Normal file
View File

@ -0,0 +1,6 @@
zend_extension=xdebug
error_reporting=E_ALL
[xdebug]
xdebug.mode=develop
xdebug.start_with_request=yes