mirror of
https://github.com/Qortal/Brooklyn.git
synced 2025-02-22 07:05:54 +00:00
87 lines
2.4 KiB
C++
87 lines
2.4 KiB
C++
//
|
|
// Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
//
|
|
|
|
#include <catch.hpp>
|
|
#include <map>
|
|
#include "Decoder.hpp"
|
|
|
|
std::map<int, std::string> labels = {
|
|
{0, "a" },
|
|
{1, "b" },
|
|
{2, "c" },
|
|
{3, "d" },
|
|
{4, "e" },
|
|
{5, "f" },
|
|
{6, "g" },
|
|
{7, "h" },
|
|
{8, "i" },
|
|
{9, "j" },
|
|
{10,"k" },
|
|
{11,"l" },
|
|
{12,"m" },
|
|
{13,"n" },
|
|
{14,"o" },
|
|
{15,"p" },
|
|
{16,"q" },
|
|
{17,"r" },
|
|
{18,"s" },
|
|
{19,"t" },
|
|
{20,"u" },
|
|
{21,"v" },
|
|
{22,"w" },
|
|
{23,"x" },
|
|
{24,"y" },
|
|
{25,"z" },
|
|
{26, "\'" },
|
|
{27, " "},
|
|
{28,"$" }
|
|
};
|
|
|
|
TEST_CASE("Test Wav2Letter output decoder")
|
|
{
|
|
|
|
std::vector<uint16_t> outputValues =
|
|
{
|
|
1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
|
|
|
|
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2
|
|
};
|
|
|
|
std::vector<int8_t> convertedValues;
|
|
|
|
for(uint16_t outputVal : outputValues)
|
|
{
|
|
convertedValues.emplace_back(static_cast<int8_t>(outputVal));
|
|
}
|
|
|
|
asr::Decoder decoder(labels);
|
|
std::string text = decoder.DecodeOutput<int8_t>(convertedValues);
|
|
CHECK(text == "hello");
|
|
}
|
|
|
|
|