1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox=/* 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)