|
KiCad PCB EDA Suite
|
#include <boost/test/unit_test.hpp>#include <clipboard.h>#include <wx/clipbrd.h>#include <wx/display.h>#include <wx/image.h>#include <wx/string.h>#include <wx/filename.h>#include <wx/mstream.h>#include <vector>#include <cstdlib>Go to the source code of this file.
Macros | |
| #define | SKIP_IF_HEADLESS() |
| Macro to skip clipboard tests in headless environments. | |
Functions | |
| static bool | IsDisplayAvailable () |
| Check if a display is available for clipboard operations. | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_BasicText) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_EmptyString) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_UTF8Characters) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_LargeText) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_SpecialCharacters) | |
| BOOST_AUTO_TEST_CASE (GetClipboardUTF8_EmptyClipboard) | |
| BOOST_AUTO_TEST_CASE (GetClipboardUTF8_NonTextData) | |
| BOOST_AUTO_TEST_CASE (SaveTabularData_SimpleGrid) | |
| BOOST_AUTO_TEST_CASE (SaveTabularData_EmptyGrid) | |
| BOOST_AUTO_TEST_CASE (SaveTabularData_SingleCell) | |
| BOOST_AUTO_TEST_CASE (SaveTabularData_WithCommas) | |
| BOOST_AUTO_TEST_CASE (SaveTabularData_WithQuotes) | |
| BOOST_AUTO_TEST_CASE (SaveTabularData_WithNewlines) | |
| BOOST_AUTO_TEST_CASE (SaveTabularData_IrregularGrid) | |
| BOOST_AUTO_TEST_CASE (GetTabularDataFromClipboard_InvalidData) | |
| BOOST_AUTO_TEST_CASE (GetImageFromClipboard_NoImage) | |
| BOOST_AUTO_TEST_CASE (GetImageFromClipboard_TextInClipboard) | |
| BOOST_AUTO_TEST_CASE (Clipboard_MultipleSaveOperations) | |
| BOOST_AUTO_TEST_CASE (Clipboard_ConcurrentAccess) | |
| BOOST_AUTO_TEST_CASE (Clipboard_FlushBehavior) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_WithMimeData_EmptyMimeDataFallsBack) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_WithMimeData_KicadFormat) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_WithMimeData_MultipleMimeTypes) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_WithMimeData_NoKicadFormat) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_WithMimeData_UTF8InKicadFormat) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_WithMimeData_SExpressionRoundTrip) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_WithMimeData_EmptyDataSkipped) | |
| BOOST_AUTO_TEST_CASE (SaveClipboard_WithMimeData_PngHandledAsBitmap) | |
| BOOST_AUTO_TEST_CASE (DualBufferAlpha_FullyOpaque) | |
| Tests for the dual-buffer alpha computation algorithm. | |
| BOOST_AUTO_TEST_CASE (DualBufferAlpha_FullyTransparent) | |
| BOOST_AUTO_TEST_CASE (DualBufferAlpha_SemiTransparent) | |
| BOOST_AUTO_TEST_CASE (DualBufferAlpha_AntiAliasedEdge) | |
| BOOST_AUTO_TEST_CASE (BitmapSizeCalculation_MatchesViewScale) | |
| BOOST_AUTO_TEST_CASE (BitmapSizeCalculation_ClampToMaxSize) | |
| BOOST_AUTO_TEST_CASE (ZoomFactorCalculation_MatchesViewScale) | |
| BOOST_AUTO_TEST_CASE (PageSizeCalculation_MatchesBitmapForCentering) | |
| #define SKIP_IF_HEADLESS | ( | ) |
Macro to skip clipboard tests in headless environments.
This prevents GTK assertions when no display is available.
Definition at line 51 of file test_clipboard.cpp.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and BOOST_AUTO_TEST_CASE().
| BOOST_AUTO_TEST_CASE | ( | BitmapSizeCalculation_ClampToMaxSize | ) |
Definition at line 815 of file test_clipboard.cpp.
| BOOST_AUTO_TEST_CASE | ( | BitmapSizeCalculation_MatchesViewScale | ) |
Definition at line 784 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL().
| BOOST_AUTO_TEST_CASE | ( | Clipboard_ConcurrentAccess | ) |
Definition at line 412 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | Clipboard_FlushBehavior | ) |
Definition at line 430 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | Clipboard_MultipleSaveOperations | ) |
Definition at line 389 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | DualBufferAlpha_AntiAliasedEdge | ) |
Definition at line 762 of file test_clipboard.cpp.
| BOOST_AUTO_TEST_CASE | ( | DualBufferAlpha_FullyOpaque | ) |
Tests for the dual-buffer alpha computation algorithm.
This algorithm computes alpha by comparing renders on white vs black backgrounds:
Definition at line 687 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL().
| BOOST_AUTO_TEST_CASE | ( | DualBufferAlpha_FullyTransparent | ) |
Definition at line 716 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL().
| BOOST_AUTO_TEST_CASE | ( | DualBufferAlpha_SemiTransparent | ) |
Definition at line 733 of file test_clipboard.cpp.
| BOOST_AUTO_TEST_CASE | ( | GetClipboardUTF8_EmptyClipboard | ) |
Definition at line 135 of file test_clipboard.cpp.
References GetClipboardUTF8(), result, and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | GetClipboardUTF8_NonTextData | ) |
Definition at line 150 of file test_clipboard.cpp.
References GetClipboardUTF8(), result, and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | GetImageFromClipboard_NoImage | ) |
Definition at line 363 of file test_clipboard.cpp.
References GetImageFromClipboard(), image, and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | GetImageFromClipboard_TextInClipboard | ) |
Definition at line 378 of file test_clipboard.cpp.
References GetImageFromClipboard(), image, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | GetTabularDataFromClipboard_InvalidData | ) |
Definition at line 347 of file test_clipboard.cpp.
References GetTabularDataFromClipboard(), result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | PageSizeCalculation_MatchesBitmapForCentering | ) |
Definition at line 868 of file test_clipboard.cpp.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_BasicText | ) |
Definition at line 63 of file test_clipboard.cpp.
References BOOST_AUTO_TEST_CASE(), BOOST_CHECK_EQUAL(), GetClipboardUTF8(), result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_EmptyString | ) |
Definition at line 78 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_LargeText | ) |
Definition at line 106 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_SpecialCharacters | ) |
Definition at line 121 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_UTF8Characters | ) |
Definition at line 92 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_WithMimeData_EmptyDataSkipped | ) |
Definition at line 602 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), CLIPBOARD_MIME_DATA::m_data, CLIPBOARD_MIME_DATA::m_mimeType, result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_WithMimeData_EmptyMimeDataFallsBack | ) |
Definition at line 446 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_WithMimeData_KicadFormat | ) |
Definition at line 463 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), CLIPBOARD_MIME_DATA::m_data, CLIPBOARD_MIME_DATA::m_mimeType, result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_WithMimeData_MultipleMimeTypes | ) |
Definition at line 487 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), CLIPBOARD_MIME_DATA::m_data, CLIPBOARD_MIME_DATA::m_mimeType, result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_WithMimeData_NoKicadFormat | ) |
Definition at line 524 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), CLIPBOARD_MIME_DATA::m_data, CLIPBOARD_MIME_DATA::m_mimeType, result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_WithMimeData_PngHandledAsBitmap | ) |
Definition at line 632 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), CLIPBOARD_MIME_DATA::m_data, CLIPBOARD_MIME_DATA::m_mimeType, result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_WithMimeData_SExpressionRoundTrip | ) |
Definition at line 571 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), CLIPBOARD_MIME_DATA::m_data, CLIPBOARD_MIME_DATA::m_mimeType, result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveClipboard_WithMimeData_UTF8InKicadFormat | ) |
Definition at line 548 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetClipboardUTF8(), CLIPBOARD_MIME_DATA::m_data, CLIPBOARD_MIME_DATA::m_mimeType, result, SaveClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveTabularData_EmptyGrid | ) |
Definition at line 193 of file test_clipboard.cpp.
References GetTabularDataFromClipboard(), result, SaveTabularDataToClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveTabularData_IrregularGrid | ) |
Definition at line 315 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetTabularDataFromClipboard(), result, SaveTabularDataToClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveTabularData_SimpleGrid | ) |
Definition at line 161 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetTabularDataFromClipboard(), result, SaveTabularDataToClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveTabularData_SingleCell | ) |
Definition at line 212 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetTabularDataFromClipboard(), result, SaveTabularDataToClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveTabularData_WithCommas | ) |
Definition at line 236 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetTabularDataFromClipboard(), result, SaveTabularDataToClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveTabularData_WithNewlines | ) |
Definition at line 291 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetTabularDataFromClipboard(), result, SaveTabularDataToClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | SaveTabularData_WithQuotes | ) |
Definition at line 267 of file test_clipboard.cpp.
References BOOST_CHECK_EQUAL(), GetTabularDataFromClipboard(), result, SaveTabularDataToClipboard(), and SKIP_IF_HEADLESS.
| BOOST_AUTO_TEST_CASE | ( | ZoomFactorCalculation_MatchesViewScale | ) |
Definition at line 843 of file test_clipboard.cpp.
References IU_PER_MILS.
|
static |
Check if a display is available for clipboard operations.
On Linux/GTK, clipboard operations require a display connection. In headless CI environments, this is not available.
Definition at line 36 of file test_clipboard.cpp.