Skip to content

Commit 49a4fa8

Browse files
committed
Add test for corner case
1 parent 315e968 commit 49a4fa8

File tree

1 file changed

+25
-1
lines changed

1 file changed

+25
-1
lines changed

ext/intl/tests/grapheme_levenshtein.phpt

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,28 @@ var_dump(grapheme_levenshtein($nabe, $nabe_E0100));
6060

6161
// combining character
6262
var_dump(grapheme_levenshtein("\u{0065}\u{0301}", "\u{00e9}"));
63+
64+
// Corner case
65+
echo '--- Corner case ---' . PHP_EOL;
66+
try {
67+
grapheme_levenshtein($nabe, $nabe_E0100, 0, 1, 1);
68+
} catch (ValueError $e) {
69+
var_dump($e->getMessage());
70+
}
71+
72+
try {
73+
grapheme_levenshtein($nabe, $nabe_E0100, 1, 0, 1);
74+
} catch (ValueError $e) {
75+
var_dump($e->getMessage());
76+
}
77+
78+
try {
79+
grapheme_levenshtein($nabe, $nabe_E0100, 1, 1, 0);
80+
} catch (ValueError $e) {
81+
var_dump($e->getMessage());
82+
}
6383
?>
64-
--EXPECT--
84+
--EXPECTF--
6585
--- Equal ---
6686
int(0)
6787
--- First string empty ---
@@ -102,3 +122,7 @@ int(2)
102122
int(1)
103123
int(0)
104124
int(0)
125+
--- Corner case ---
126+
string(%d) "grapheme_levenshtein(): Argument #3 ($insertion_cost) must be greater than 0 and less than or equal to %d"
127+
string(%d) "grapheme_levenshtein(): Argument #4 ($replacement_cost) must be greater than 0 and less than or equal to %d"
128+
string(%d) "grapheme_levenshtein(): Argument #5 ($deletion_cost) must be greater than 0 and less than or equal to %d"

0 commit comments

Comments
 (0)