52 lines
1.1 KiB
C++
52 lines
1.1 KiB
C++
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
/*
|
|
* Copyright (C) 2020, Kaaira Gupta
|
|
* libcamera pixel format handling test
|
|
*/
|
|
|
|
#include <iostream>
|
|
#include <vector>
|
|
|
|
#include <libcamera/formats.h>
|
|
#include <libcamera/pixel_format.h>
|
|
|
|
#include <libcamera/base/utils.h>
|
|
|
|
#include "test.h"
|
|
|
|
using namespace std;
|
|
using namespace libcamera;
|
|
|
|
class PixelFormatTest : public Test
|
|
{
|
|
protected:
|
|
int run()
|
|
{
|
|
std::vector<std::pair<PixelFormat, const char *>> formatsMap{
|
|
{ formats::R8, "R8" },
|
|
{ formats::SRGGB10_CSI2P, "SRGGB10_CSI2P" },
|
|
{ PixelFormat(0, 0), "<INVALID>" },
|
|
{ PixelFormat(0x20203843), "<C8 >" }
|
|
};
|
|
|
|
for (const auto &format : formatsMap) {
|
|
if ((format.first).toString() != format.second) {
|
|
cerr << "Failed to convert PixelFormat "
|
|
<< utils::hex(format.first.fourcc()) << " to string"
|
|
<< endl;
|
|
return TestFail;
|
|
}
|
|
}
|
|
|
|
if (PixelFormat().toString() != "<INVALID>") {
|
|
cerr << "Failed to convert default PixelFormat to string"
|
|
<< endl;
|
|
return TestFail;
|
|
}
|
|
|
|
return TestPass;
|
|
}
|
|
};
|
|
|
|
TEST_REGISTER(PixelFormatTest)
|