mirror of
https://github.com/qpdf/qpdf.git
synced 2024-06-08 21:22:25 +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
|
-DREQUIRE_CRYPTO_OPENSSL=1 -DREQUIRE_CRYPTO_GNUTLS=1
|
||||||
cmake --build build -j$(nproc) -- -k
|
cmake --build build -j$(nproc) -- -k
|
||||||
cd build
|
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.
|
# libtests automatically runs with all crypto providers.
|
||||||
env QPDF_TEST_COMPARE_IMAGES=1 ctest --verbose
|
env QPDF_TEST_COMPARE_IMAGES=1 ctest --verbose
|
||||||
# Run just qpdf tests with remaining crypto providers.
|
# Run just qpdf tests with remaining crypto providers.
|
||||||
|
|
|
@ -15,4 +15,8 @@ env CFLAGS="-funsigned-char" \
|
||||||
-DENABLE_QTC=1
|
-DENABLE_QTC=1
|
||||||
cmake --build build -j$(nproc) -- -k
|
cmake --build build -j$(nproc) -- -k
|
||||||
cd build
|
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
|
ctest --verbose
|
||||||
|
|
|
@ -3,6 +3,7 @@ set(MAIN_CXX_PROGRAMS
|
||||||
fix-qdf
|
fix-qdf
|
||||||
pdf_from_scratch
|
pdf_from_scratch
|
||||||
sizes
|
sizes
|
||||||
|
test_char_sign
|
||||||
test_driver
|
test_driver
|
||||||
test_large_file
|
test_large_file
|
||||||
test_many_nulls
|
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