From 14e9c0f2e8072c9ed06e5027e4c6a5ef05bd92d9 Mon Sep 17 00:00:00 2001 From: Oleksandr Zhyian Date: Wed, 17 Jul 2024 11:49:27 +0300 Subject: [PATCH] fix: include admission requirement slug in degree program data on editor form --- composer.json | 4 +++- resources/ts/defs/degree-program-data.ts | 1 + resources/ts/util/transforms.ts | 2 ++ src/Infrastructure/Repository/TermsRepository.php | 1 + tests/js/__mocks__/admission-requirements.ts | 2 ++ 5 files changed, 9 insertions(+), 1 deletion(-) diff --git a/composer.json b/composer.json index f26193970..84261f7ea 100644 --- a/composer.json +++ b/composer.json @@ -68,6 +68,8 @@ "scripts": { "check-coding-standards": "@php ./vendor/squizlabs/php_codesniffer/bin/phpcs", "check-psalm": "@php ./vendor/vimeo/psalm/psalm --output-format=compact --no-cache", - "fix-coding-standards": "@php ./vendor/squizlabs/php_codesniffer/bin/phpcbf" + "fix-coding-standards": "@php ./vendor/squizlabs/php_codesniffer/bin/phpcbf", + "tests": "@php ./vendor/phpunit/phpunit/phpunit --coverage-text", + "tests:no-cov": "@php ./vendor/phpunit/phpunit/phpunit --no-coverage" } } diff --git a/resources/ts/defs/degree-program-data.ts b/resources/ts/defs/degree-program-data.ts index 9c8e64bf7..2fe475e42 100644 --- a/resources/ts/defs/degree-program-data.ts +++ b/resources/ts/defs/degree-program-data.ts @@ -122,4 +122,5 @@ export interface DegreeProgramPost extends Post { export interface AdmissionRequirement extends MultilingualLink { parent: AdmissionRequirement | null; + slug: string; } diff --git a/resources/ts/util/transforms.ts b/resources/ts/util/transforms.ts index d970ed201..4b765540c 100644 --- a/resources/ts/util/transforms.ts +++ b/resources/ts/util/transforms.ts @@ -97,6 +97,8 @@ export function transformTermToAdmissionRequirement( term ) as AdmissionRequirement; + admissionRequirement.slug = term?.slug ?? ''; + if ( ! term ) { return admissionRequirement; } diff --git a/src/Infrastructure/Repository/TermsRepository.php b/src/Infrastructure/Repository/TermsRepository.php index ac2acd01b..088791e9d 100644 --- a/src/Infrastructure/Repository/TermsRepository.php +++ b/src/Infrastructure/Repository/TermsRepository.php @@ -40,6 +40,7 @@ public function admissionRequirement(?WP_Term $term): AdmissionRequirement return AdmissionRequirement::new( $this->bilingualLinkFromTerm($term), $parent instanceof WP_Term ? $this->admissionRequirement($parent) : null, + $term->slug ); } } diff --git a/tests/js/__mocks__/admission-requirements.ts b/tests/js/__mocks__/admission-requirements.ts index db2831e76..8d70bd074 100644 --- a/tests/js/__mocks__/admission-requirements.ts +++ b/tests/js/__mocks__/admission-requirements.ts @@ -19,6 +19,7 @@ export const mockFreiAdmissionRequirement: DegreeProgramData['admission_requirem en: 'frei', }, parent: null, + slug: 'frei' }; export const mockAbcAdmissionRequirement: DegreeProgramData['admission_requirements']['bachelor_or_teaching_degree'] = @@ -40,4 +41,5 @@ export const mockAbcAdmissionRequirement: DegreeProgramData['admission_requireme en: 'abc', }, parent: null, + slug: 'abc' };