mirror of
https://github.com/openai/whisper.git
synced 2025-03-30 14:28:27 +00:00
97 lines
3.3 KiB
Python
97 lines
3.3 KiB
Python
import pytest
|
|
|
|
from whisper.normalizers import EnglishTextNormalizer
|
|
from whisper.normalizers.english import (
|
|
EnglishNumberNormalizer,
|
|
EnglishSpellingNormalizer,
|
|
)
|
|
|
|
|
|
@pytest.mark.parametrize("std", [EnglishNumberNormalizer(), EnglishTextNormalizer()])
|
|
def test_number_normalizer(std):
|
|
assert std("two") == "2"
|
|
assert std("thirty one") == "31"
|
|
assert std("five twenty four") == "524"
|
|
assert std("nineteen ninety nine") == "1999"
|
|
assert std("twenty nineteen") == "2019"
|
|
|
|
assert std("two point five million") == "2500000"
|
|
assert std("four point two billions") == "4200000000s"
|
|
assert std("200 thousand") == "200000"
|
|
assert std("200 thousand dollars") == "$200000"
|
|
assert std("$20 million") == "$20000000"
|
|
assert std("€52.4 million") == "€52400000"
|
|
assert std("£77 thousands") == "£77000s"
|
|
|
|
assert std("two double o eight") == "2008"
|
|
|
|
assert std("three thousand twenty nine") == "3029"
|
|
assert std("forty three thousand two hundred sixty") == "43260"
|
|
assert std("forty three thousand two hundred and sixty") == "43260"
|
|
|
|
assert std("nineteen fifties") == "1950s"
|
|
assert std("thirty first") == "31st"
|
|
assert std("thirty three thousand and three hundred and thirty third") == "33333rd"
|
|
|
|
assert std("three billion") == "3000000000"
|
|
assert std("millions") == "1000000s"
|
|
|
|
assert std("july third twenty twenty") == "july 3rd 2020"
|
|
assert std("august twenty sixth twenty twenty one") == "august 26th 2021"
|
|
assert std("3 14") == "3 14"
|
|
assert std("3.14") == "3.14"
|
|
assert std("3 point 2") == "3.2"
|
|
assert std("3 point 14") == "3.14"
|
|
assert std("fourteen point 4") == "14.4"
|
|
assert std("two point two five dollars") == "$2.25"
|
|
assert std("two hundred million dollars") == "$200000000"
|
|
assert std("$20.1 million") == "$20100000"
|
|
|
|
assert std("ninety percent") == "90%"
|
|
assert std("seventy six per cent") == "76%"
|
|
|
|
assert std("double oh seven") == "007"
|
|
assert std("double zero seven") == "007"
|
|
assert std("nine one one") == "911"
|
|
assert std("nine double one") == "911"
|
|
assert std("one triple oh one") == "10001"
|
|
|
|
assert std("two thousandth") == "2000th"
|
|
assert std("thirty two thousandth") == "32000th"
|
|
|
|
assert std("minus 500") == "-500"
|
|
assert std("positive twenty thousand") == "+20000"
|
|
|
|
assert std("two dollars and seventy cents") == "$2.70"
|
|
assert std("3 cents") == "¢3"
|
|
assert std("$0.36") == "¢36"
|
|
assert std("three euros and sixty five cents") == "€3.65"
|
|
|
|
assert std("three and a half million") == "3500000"
|
|
assert std("forty eight and a half dollars") == "$48.5"
|
|
assert std("b747") == "b 747"
|
|
assert std("10 th") == "10th"
|
|
assert std("10th") == "10th"
|
|
|
|
|
|
def test_spelling_normalizer():
|
|
std = EnglishSpellingNormalizer()
|
|
|
|
assert std("mobilisation") == "mobilization"
|
|
assert std("cancelation") == "cancellation"
|
|
|
|
|
|
def test_text_normalizer():
|
|
std = EnglishTextNormalizer()
|
|
assert std("Let's") == "let us"
|
|
assert std("he's like") == "he is like"
|
|
assert std("she's been like") == "she has been like"
|
|
assert std("10km") == "10 km"
|
|
assert std("10mm") == "10 mm"
|
|
assert std("RC232") == "rc 232"
|
|
|
|
assert (
|
|
std("Mr. Park visited Assoc. Prof. Kim Jr.")
|
|
== "mister park visited associate professor kim junior"
|
|
)
|