Commit before cleanup
This commit is contained in:
parent
24b7081f79
commit
7fc43933e5
18 changed files with 797 additions and 29 deletions
75
tests/Dockerfile.test.debian
Normal file
75
tests/Dockerfile.test.debian
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
# Copyright 2022 Mycroft AI Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# -----------------------------------------------------------------------------
|
||||
# Dockerfile for Mimic 3 (https://github.com/MycroftAI/mimic3)
|
||||
#
|
||||
# Tests installation and functionality of Mimic 3 Debian package.
|
||||
#
|
||||
# Requires Docker buildx: https://docs.docker.com/buildx/working-with-buildx/
|
||||
# -----------------------------------------------------------------------------
|
||||
FROM debian:bullseye as test
|
||||
|
||||
ARG TARGETARCH
|
||||
ARG TARGETVARIANT
|
||||
|
||||
ENV LANG C.UTF-8
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN echo "Dir::Cache var/cache/apt/${TARGETARCH}${TARGETVARIANT};" > /etc/apt/apt.conf.d/01cache
|
||||
|
||||
RUN --mount=type=cache,id=apt-run,target=/var/cache/apt \
|
||||
mkdir -p /var/cache/apt/${TARGETARCH}${TARGETVARIANT}/archives/partial && \
|
||||
apt-get update && \
|
||||
apt-get install --yes --no-install-recommends \
|
||||
dpkg-dev
|
||||
|
||||
WORKDIR /test
|
||||
|
||||
COPY dist/*.deb ./
|
||||
COPY mimic3-tts/mimic3_tts/VERSION ./
|
||||
|
||||
# Install mimic3 for current architecture
|
||||
RUN --mount=type=cache,id=apt-run,target=/var/cache/apt \
|
||||
export mimic3_version="$(cat VERSION)" && \
|
||||
dpkg-architecture | \
|
||||
grep 'DEB_HOST_ARCH=' | \
|
||||
sed -e 's/.\+=//' | \
|
||||
xargs printf "./mimic3-tts_${mimic3_version}_%s.deb" | \
|
||||
xargs apt install --yes
|
||||
|
||||
# Version check
|
||||
RUN export expected_version="$(cat VERSION)" && \
|
||||
export actual_version="$(mimic3 --version)" && \
|
||||
if [ ! "${expected_version}" = "${actual_version}"]; then \
|
||||
echo "${actual_version} != ${expected_version}"; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
# Generate sample and check
|
||||
COPY tests/apope_sample.* ./
|
||||
RUN mimic3 \
|
||||
--deterministic \
|
||||
--voice 'en_UK/apope_low' \
|
||||
< apope_sample.txt \
|
||||
> actual_sample.wav
|
||||
|
||||
# RUN diff apope_sample.wav actual_sample.wav
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
FROM scratch
|
||||
|
||||
COPY --from=test /test/actual_sample.wav ./
|
||||
5
tests/Dockerfile.test.debian.dockerignore
Normal file
5
tests/Dockerfile.test.debian.dockerignore
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
*
|
||||
!dist/*.deb
|
||||
!mimic3-tts/mimic3_tts/VERSION
|
||||
!tests/apope_sample.wav
|
||||
!tests/apope_sample.txt
|
||||
59
tests/Dockerfile.test.docker
Normal file
59
tests/Dockerfile.test.docker
Normal file
|
|
@ -0,0 +1,59 @@
|
|||
# Copyright 2022 Mycroft AI Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# -----------------------------------------------------------------------------
|
||||
# Dockerfile for Mimic 3 (https://github.com/MycroftAI/mimic3)
|
||||
#
|
||||
# Tests installation and functionality of Mimic 3 Docker image.
|
||||
#
|
||||
# Requires Docker buildx: https://docs.docker.com/buildx/working-with-buildx/
|
||||
# -----------------------------------------------------------------------------
|
||||
FROM mycroftai/mimic3
|
||||
|
||||
ARG TARGETARCH
|
||||
ARG TARGETVARIANT
|
||||
|
||||
ENV LANG C.UTF-8
|
||||
|
||||
WORKDIR /test
|
||||
|
||||
COPY mimic3-tts/mimic3_tts/VERSION ./
|
||||
|
||||
# Install mimic3 for current architecture
|
||||
RUN --mount=type=cache,id=apt-run,target=/var/cache/apt \
|
||||
export mimic3_version="$(cat VERSION)" && \
|
||||
dpkg-architecture | \
|
||||
grep 'DEB_HOST_ARCH=' | \
|
||||
sed -e 's/.\+=//' | \
|
||||
xargs printf "./mimic3-tts_${mimic3_version}_%s.deb" | \
|
||||
xargs apt install --yes
|
||||
|
||||
# Version check
|
||||
RUN export expected_version="$(cat VERSION)" && \
|
||||
export actual_version="$(mimic3 --version)" && \
|
||||
if [ ! "${expected_version}" = "${actual_version}"]; then \
|
||||
echo "${actual_version} != ${expected_version}"; \
|
||||
exit 1; \
|
||||
fi
|
||||
|
||||
# Generate sample and check
|
||||
COPY tests/apope_sample.* ./
|
||||
RUN mimic3 \
|
||||
--deterministic \
|
||||
--voice 'en_UK/apope_low' \
|
||||
< apope_sample.txt \
|
||||
> actual_sample.wav
|
||||
|
||||
RUN diff apope_sample.wav actual_sample.wav
|
||||
4
tests/Dockerfile.test.docker.dockerignore
Normal file
4
tests/Dockerfile.test.docker.dockerignore
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
*
|
||||
!mimic3-tts/mimic3_tts/VERSION
|
||||
!tests/apope_sample.wav
|
||||
!tests/apope_sample.txt
|
||||
1
tests/apope_sample.txt
Normal file
1
tests/apope_sample.txt
Normal file
|
|
@ -0,0 +1 @@
|
|||
A rainbow is a meteorological phenomenon that is caused by reflection, refraction and dispersion of light in water droplets resulting in a spectrum of light appearing in the sky.
|
||||
|
|
@ -64,6 +64,11 @@ _TEST_SENTENCES = {
|
|||
"nl": """Een regenboog is een gekleurde cirkelboog die aan de hemel
|
||||
waargenomen kan worden als de, laagstaande, zon tegen een nevel van
|
||||
waterdruppeltjes aan schijnt en de zon zich achter de waarnemer bevindt.""",
|
||||
"pl": """Tęcza, zjawisko optyczne i meteorologiczne, występujące w postaci
|
||||
charakterystycznego wielobarwnego łuku powstającego w wyniku
|
||||
rozszczepienia światła widzialnego, zwykle promieniowania słonecznego,
|
||||
załamującego się i odbijającego wewnątrz licznych kropli wody mających
|
||||
kształt zbliżony do kulistego.""",
|
||||
"pt": """Um arco-íris, também popularmente denominado arco-da-velha, é um
|
||||
fenômeno óptico e meteorológico que separa a luz do sol em seu espectro
|
||||
contínuo quando o sol brilha sobre gotículas de água suspensas no ar.""",
|
||||
|
|
@ -76,6 +81,9 @@ _TEST_SENTENCES = {
|
|||
"sw": """Upinde wa mvua ni tao la rangi mbalimbali angani ambalo linaweza
|
||||
kuonekana wakati Jua huangaza kupitia matone ya mvua inayoanguka.""",
|
||||
"te": """ఇంద్ర ధనుస్సు దృష్టి విద్యా సంబంధమయిన వాతావరణ శాస్త్ర సంబంధమయిన దృగ్విషయం.""",
|
||||
"tn": """Batho botlhe ba tsetswe ba gololosegile le go lekalekana ka seriti
|
||||
le ditshwanelo. Ba abetswe go akanya le maikutlo, mme ba tshwanetse go
|
||||
direlana ka mowa wa bokaulengwe.""",
|
||||
"uk": """Весе́лка, також ра́йдуга оптичне явище в атмосфері, що являє собою
|
||||
одну, дві чи декілька різнокольорових дуг (або кіл, якщо дивитися з
|
||||
повітря), що спостерігаються на тлі хмари, якщо вона розташована проти
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue