Files
oak-editor/tests/gtest/codec_exportformat_test.cpp
T
2026-01-05 03:52:02 +08:00

45 lines
1.6 KiB
C++

#include <gtest/gtest.h>
#include "codec/exportformat.h"
TEST(CodecExportFormat, NamesAndExtensions)
{
using olive::ExportFormat;
EXPECT_EQ(ExportFormat::GetName(ExportFormat::kFormatDNxHD),
QStringLiteral("DNxHD"));
EXPECT_EQ(ExportFormat::GetExtension(ExportFormat::kFormatDNxHD),
QStringLiteral("mxf"));
EXPECT_EQ(ExportFormat::GetName(ExportFormat::kFormatCount),
QStringLiteral("Unknown"));
EXPECT_TRUE(ExportFormat::GetExtension(ExportFormat::kFormatCount).isEmpty());
}
TEST(CodecExportFormat, CodecLists)
{
using olive::ExportCodec;
using olive::ExportFormat;
const QList<ExportCodec::Codec> matroska_video =
ExportFormat::GetVideoCodecs(ExportFormat::kFormatMatroska);
EXPECT_TRUE(matroska_video.contains(ExportCodec::kCodecH264));
EXPECT_TRUE(matroska_video.contains(ExportCodec::kCodecVP9));
const QList<ExportCodec::Codec> ogg_audio =
ExportFormat::GetAudioCodecs(ExportFormat::kFormatOgg);
EXPECT_TRUE(ogg_audio.contains(ExportCodec::kCodecOpus));
EXPECT_TRUE(ogg_audio.contains(ExportCodec::kCodecVorbis));
const QList<ExportCodec::Codec> png_video =
ExportFormat::GetVideoCodecs(ExportFormat::kFormatPNG);
EXPECT_EQ(png_video, QList<ExportCodec::Codec>{ ExportCodec::kCodecPNG });
const QList<ExportCodec::Codec> srt_subs =
ExportFormat::GetSubtitleCodecs(ExportFormat::kFormatMatroska);
EXPECT_EQ(srt_subs, QList<ExportCodec::Codec>{ ExportCodec::kCodecSRT });
const QList<ExportCodec::Codec> wav_audio =
ExportFormat::GetAudioCodecs(ExportFormat::kFormatWAV);
EXPECT_EQ(wav_audio, QList<ExportCodec::Codec>{ ExportCodec::kCodecPCM });
}