mirror of
https://github.com/qpdf/qpdf.git
synced 2024-12-22 02:49:00 +00:00
Add code to CI to verify signed/unsigned char
Make sure that our attempt to test both signed and unsigned char is actually right.
This commit is contained in:
parent
a085479ad9
commit
77111086eb
@ -8,6 +8,8 @@ cmake -S . -B build -DCI_MODE=1 -DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DREQUIRE_CRYPTO_OPENSSL=1 -DREQUIRE_CRYPTO_GNUTLS=1
|
||||
cmake --build build -j$(nproc) -- -k
|
||||
cd build
|
||||
# Make sure char is signed by default -- see also test-unsigned-char
|
||||
./qpdf/test_char_sign | grep 'char is signed'
|
||||
# libtests automatically runs with all crypto providers.
|
||||
env QPDF_TEST_COMPARE_IMAGES=1 ctest --verbose
|
||||
# Run just qpdf tests with remaining crypto providers.
|
||||
|
@ -15,4 +15,8 @@ env CFLAGS="-funsigned-char" \
|
||||
-DENABLE_QTC=1
|
||||
cmake --build build -j$(nproc) -- -k
|
||||
cd build
|
||||
# Make sure char is unsigned by default. ./build-linux verifies that
|
||||
# that build has char signed by default. That way we can be sure we
|
||||
# are testing both ways.
|
||||
./qpdf/test_char_sign | grep 'char is unsigned'
|
||||
ctest --verbose
|
||||
|
@ -3,6 +3,7 @@ set(MAIN_CXX_PROGRAMS
|
||||
fix-qdf
|
||||
pdf_from_scratch
|
||||
sizes
|
||||
test_char_sign
|
||||
test_driver
|
||||
test_large_file
|
||||
test_many_nulls
|
||||
|
11
qpdf/test_char_sign.cc
Normal file
11
qpdf/test_char_sign.cc
Normal file
@ -0,0 +1,11 @@
|
||||
#include <cstdio>
|
||||
int main()
|
||||
{
|
||||
char ch = '\xf7';
|
||||
if (ch < 0) {
|
||||
printf("char is signed\n");
|
||||
} else {
|
||||
printf("char is unsigned\n");
|
||||
}
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user