From 8604cb210e69fa604843a53c69cc26698c18208f Mon Sep 17 00:00:00 2001 From: Sina Moradi Date: Mon, 13 Jan 2025 23:43:00 +0330 Subject: [PATCH] Fix number conversion issue in PersianConverterBuilder. --- src/PersianConverterBuilder.php | 5 +++++ tests/PersianConverterTest.php | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/PersianConverterBuilder.php b/src/PersianConverterBuilder.php index 96cecb9..978901c 100644 --- a/src/PersianConverterBuilder.php +++ b/src/PersianConverterBuilder.php @@ -92,6 +92,11 @@ public function build(): PersianConverter NumberType::ENGLISH, NumberType::PERSIAN ); + } else { + $this->strategies[] = new NumberConversionStrategy( + NumberType::PERSIAN, + NumberType::ENGLISH + ); } $this->strategies[] = new NumberConversionStrategy( NumberType::ARABIC, diff --git a/tests/PersianConverterTest.php b/tests/PersianConverterTest.php index 7f13892..370da23 100644 --- a/tests/PersianConverterTest.php +++ b/tests/PersianConverterTest.php @@ -137,8 +137,8 @@ public function testBuilderWithAllOptions(): void ->withNumberConversion(keepEnglishNumbers: true) ->build(); - $input = 'Hello123 سلام٤٥٦ يك'; - $expected = 'Hello123 سلام456 یک'; + $input = 'Hello123 سلام ۷۸۹ ٤٥٦ يك'; + $expected = 'Hello123 سلام 789 456 یک'; $this->assertEquals($expected, $converter->convert($input)); }