Luis Diaz
9573f1edcc
Fix MSVC warnings by casting integer values
3 years ago
Luis Díaz Más
9b40f948eb
More tests
3 years ago
Luis Díaz Más
d8fcbc4562
Add new tests for Iptc classes
3 years ago
Luis Díaz Más
071e73fa4d
Add many tests for datasets
3 years ago
Luis Díaz Más
a94d648d05
Rest of tests to have 100% coverage in BMP class
3 years ago
Luis Diaz
edf39e00dd
Add new BMP tests
3 years ago
Josh Soref
e56abfa10a
Spelling ( #2067 )
...
* spelling: accelerometer
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: address
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: anonymous
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: available
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: baby
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: buffer
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: build
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: builds
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: by inclusion
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: byte order
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: camera
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: command
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: consistency
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: constructor
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: continuous
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: continuously
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: correspond
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: decompression
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: dedicated
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: denominator
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: dependencies
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: detector
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: dlighting
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: dragging
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: duplicate
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: dynamic
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: empty
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: enable
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: endianness
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: examining
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: exceed
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: extension
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: fact
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: fails
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: fixed
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: fluorescent
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: focuspoint
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: focuspoints
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: from
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: happened
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: hierarchy
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: initiate
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: interesting
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: internal
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: javascript
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: language
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: libiconv
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: libraries
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: library
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: localization
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: macros
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: member
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: members
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: metadata
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: miscellaneous
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: mnemonic
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: modified
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: multiple
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: multithreaded
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: mysterious
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: photoshop
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: platforms
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: preliminary
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: priority
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: properties
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: qualifier
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: recognition
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: recognized
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: reentrancy
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: remaining
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: remotetest
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: requested
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: sensitivity
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: standardize
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: successful
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: such
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: tags
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: temperature
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: test
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: the
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: these
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: third
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: this
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: transparent
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: unable
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: underwater
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: uninterpreted
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: using
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: utc - coordinated universal time
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: which
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
* spelling: with
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
3 years ago
Luis Díaz Más
ddf5645c5d
Add new tests in PngChunk & PngImage for increasing coverage
4 years ago
Luis Díaz Más
061df50cea
keyTXTChunk improvement
4 years ago
Luis Diaz
c19425f6a4
Add unit tests for PngChunk::keyTXTChunk
4 years ago
Luis Díaz Más
813566526c
Revisiting cmake code for generating coverage reports ( #2047 )
...
* cmake: better usage of gcovr for coverage reports
* Add test for FileIo::setPath
* Remove useless seek() overload
* Add missing override specifiers
* ignore .vs folder
* Small refactors in BasicIo implementations
* Remove duplicated doxygen doc
* Refactor & add tests for MemIO
* Fix compilation warnings on windows
4 years ago
Robin Mills
d508e093dd
Merge pull request #2035 from Exiv2/ci_forward_main
...
Forward CI changes
4 years ago
Robin Mills
f3393f8308
Fixes following review.
4 years ago
Miloš Komarčević
82adcb1f86
Do not use exact string match for errno output
4 years ago
Robin Mills
13a2cf336d
fix_1416_iptc_DateCreated ( #1547 )
...
* fix_1416_iptc_DateCreated
* Fix unit tests
* DateValue:read 2nd iteration on pre-condition
* test with ISO_8601 date format
* Use std::regex for ISO 8601 basic & extended date formats
* Use std::regex for ISO 8601 basic & extended time formats
* Add more tests & notes for DateValue & TimeValue
* Comment tests using local calendar times
* DateValue::write also adds padding to year field
Co-authored-by: Luis Díaz Más <piponazo@gmail.com>
4 years ago
Kevin Backhouse
9ff72e5ca5
Make offset=0 the default parameter.
4 years ago
Kevin Backhouse
aec6733df9
Add unit test for methods like DataBuf::read_uint32 and DataBuf::write_uint32.
4 years ago
Kevin Backhouse
c9d0cf3643
Make fields of DataBuf private.
4 years ago
Antonio Rojas
c069e36605
Fix build with gtest 1.11
...
INSTANTIATE_TYPED_TEST_CASE_P requires a non-empty prefix now
4 years ago
Rosen Penev
2c57f214c5
clang-tidy: use nullptr
...
Found with modernize-use-nullptr
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev
c44c289d76
clang-tidy: fix ending namespace comnments
...
Found with llvm-namespace-comment
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev
ff39473c18
clang-tidy: convert to static
...
Found with readability-convert-member-functions-to-static
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev
f9d394adf0
clang-tidy: run through performance checks
...
Found with performance*
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev
b8712188bb
clang-tidy: use auto
...
Found with modernize-use-auto
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Luis Díaz Más
4c5c8538f5
Ignore missing PDBs
4 years ago
Luis Díaz Más
6c2141959a
conan - change generator to be able to use latest expat version
4 years ago
Rosen Penev
c73dfa0106
clang-tidy: use uppercase numeric literals
...
Found with readability-uppercase-literal-suffix
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Luis Diaz Mas
e87424b5e0
Add CTest support
4 years ago
Rosen Penev
af7b2430c5
clang-tidy: use override
...
Found with modernize-use-override
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Luis Díaz Más
5a8511545f
unitTests - use internal library object instead of recompiling sources
4 years ago
Luis Díaz Más
db4ece70cc
gtest - remove wrapper which is not needed anymore
4 years ago
Luis Díaz Más
7d8cd00778
fix tests expectations for alpine linux
4 years ago
Luis Díaz Más
de4d43d4d1
Fix warnings EXIV2_TEAM_EXTRA_WARNINGS
...
Most of the warnings fixed were:
- Hiding of local variables
- Hiding of globals
- Useless casts
- Conversions between float/double
4 years ago
Luis Díaz Más
6c0059b5a0
cmake: Treat xmpsdk headers as system ones
...
This is done so that when we use EXIV2_TEAM_EXTRA_WARNINGS we do not get
warnings about XMPSDK (we do not want to deal with those)
4 years ago
Luis Díaz Más
e9fe24639a
cmake - Modern use of consuming gtest
4 years ago
Luis Díaz Más
0bbaa6eff3
cpp: Replace auto_ptr by unique_ptr
4 years ago
Robin Mills
d632988bbd
Massive code prolog cleanup.
4 years ago
Robin Mills
9e2ac47cf9
Merge pull request #1475 from 1div0/BMFF
...
Base Media File Format
4 years ago
postscript-dev
207a0d65c9
Change LangAltValue::read() tests to unitTests
...
Removed previous Python tests.
4 years ago
clanmills
f1303cbcda
Another effort to fix base64decode and associated unit test.
4 years ago
Robin Mills
6109e5c49d
I've removed the test and put a comment in the code!
5 years ago
Robin Mills
7fefeb739c
Adding debugging code.
5 years ago
Robin Mills
7bf40a2408
fix_1211_c++11_0.27. I'll explain this in the PR.
5 years ago
clanmills
63a13e8620
Adding option -DEXIV2_BUILD_USE_C++11
5 years ago
Robin Mills
df04671976
Enforce cxx_std_98 in samples, unit_tests, and exiv2 application (to eliminate 2305 GCC unique_ptr warnings)
5 years ago
Luis Diaz Mas
235087af4e
Do not call tell() in File::eof() - Fix tests & performance
5 years ago
Luis Diaz Mas
2732c10a86
Add unit tests for FileIO: canSeekBeyondEOF fails
5 years ago
Robin Mills
2034c41957
Fix #1164 (unit test failures on various platforms)
5 years ago
Luis Diaz Mas
48d68c8271
Fix sign-compare warnings & use gtestwrapper.h
6 years ago
Kevin Backhouse
edb4bf78ca
Add bounds check to MemIo::seek(). ( #944 )
...
- Regression test for missing bounds check in MemIo::seek()
- Add bounds check to MemIo::seek(), this fixes CVE-2019-13504
(cherry picked from commit bd0afe0390439b2c424d881c8c6eb0c5624e31d9)
Additional fixes for 0.27:
- Add fix for the linux variant of MemIo::seek
- Change type of variable from unsigned to signed
6 years ago
Luis Díaz Más
0058dd1099
Use compile definitions only if they are available
6 years ago
Robin Mills
0c282f8373
Looking better all the time, Gentlemen. I believe the only changes between the patches are in unitTests/CMakeLists.txt.
...
This build passes the test suite and jens.cpp on MacOS-X. I'll submit and see what the CI has to say. With the changes only relating to unitTests (which I didn't run on FreeBSD), we should not have disturbed Linux/FreeBSD/jens.cpp.
6 years ago
Luis Díaz Más
4ed5bdc78b
CMake: Supress MSVC PDB warnings
7 years ago
Luis Díaz Más
4d47b08a16
CMake: Move gtest finding to unitTests folder
7 years ago
Luis Díaz Más
7485bb54d7
Create function getProcessPath and add unit test for it
...
Debugging: Relative and Absolute path alternatives
7 years ago
Luis Díaz Más
244f00bf3a
CMake: Do not add conan global compiler flags
...
+ Add conan-gtest compile definitions for the unit_tests target
7 years ago
Dan Čermák
fec6535ae8
[binaryToString] Reimplement using Slices
...
- reimplement binaryToString:
- it now accepts a Slice and nothing else
- it does not return a std::string but instead a proxy object that implements
operator<< (this should be more efficient, as we do not need to touch the
heap in most cases)
- addapt unit tests
- replace all occurences with the new API
7 years ago
Dan Čermák
30787e6f1e
[binaryToString] Add unit tests
7 years ago
Dan Čermák
98bca06592
Add Slices: views of STL containers & C-arrays and add unit tests
...
This commit adds a very simple implementation of std::span but with
mandatory range checks and only the most essential functionality.
7 years ago
Luis Díaz Más
c5d46ac440
Expect std::exception instead of Exiv2::Error
7 years ago
Luis Díaz Más
b9f913d5af
Move implementation to .cpp files. Fix more issues related to visibility settings
7 years ago
Luis Díaz Más
e3f975137c
Use STATIC_DEFINE to solve issues with OBJECT library
7 years ago
Luis Díaz Más
6ba4081f95
Use CMake-GenerateExportHeader to generate a macro to export symbols
...
- Delete the hardcoded macros in config.h taking care of that.
7 years ago
Luis Díaz Más
94375034e6
Fix -Wsign-compare issues
7 years ago
Luis Díaz Más
24be5a514e
[Appveyor] Build exiv2 with Visual Studio 2012 and 2013
...
- Integration tests had to be disabled with 2012 and 2013. There were
few (4) tests failing for these cases.
- Only bring libiconv with conan when a windows subsystem is detected.
- libiconv can be enabled now with a conan option.
- Use infinity instead of INFINITY
- Use conan_basic_setup(). Fixes a problem with gtest is VS2012
- call vcvarsall.bat for each compiler version so that nmake can be
found.
7 years ago
Luis Díaz Más
4161099b91
Fix warnings reported by MSVC
7 years ago
Luis Diaz Mas
0cf7d4fad8
Add unit tests for the TimeValue class
7 years ago
Dan Čermák
e705f1ef5b
Add unit test for floatToRationalCast
7 years ago
Dan Čermák
2dacb19933
[safe_op] Add Safe::abs(), calculates absoulte value without UB
...
Add a drop-in replacement for std::abs which never produces
negative values and thereby never invokes undefined behavior.
7 years ago
Luis Diaz Mas
eb306fdbae
Substitute malloc/free with new/delete
7 years ago
Luis Diaz Mas
669ab49c43
New tests for Uri class
7 years ago
Luis Diaz Mas
ca290d870f
New tests for base64 encode & decode
7 years ago
Luis Diaz Mas
5d76036af5
Add more tests for decoding and encoding URL functions
7 years ago
Luis Diaz Mas
0bc6fbcea7
Add stdexcept header in unit test files
7 years ago
Luis Diaz Mas
ad004498a2
Cleanup 'comparison between signed & unsigned integer' warning
7 years ago
Dan Čermák
088986e5fa
[unit_tests] Remove a memory leak from test_XmpKey.cpp
...
XmpProperties::registerNs allocates strings on the heap that must be freed
manually via XmpProperties::unregisterNs().
=> do this in TearDownTestCase()
7 years ago
Dan Čermák
dd52b1a832
Add helper_functions.cpp/hpp & unit tests
...
- add function which constructs a new std::string from a potentially not null
terminated char *
- add unit tests
7 years ago
Luis Diaz Mas
4713336c93
Add more unit tests for TiffHeader
7 years ago
Luis Diaz Mas
59493d1edc
Fix bug in Cr2Header::read
7 years ago
Luis Diaz Mas
b1c34ee11f
Add unit tests for Cr2Header
7 years ago
Luis Díaz Más
794fea2639
Replaced way to check buffer after calling DateValue::copy
7 years ago
Luis Diaz Mas
bf0b7affaa
Add few basic unit tests for DateValue
...
I feel more confortable doing changes in a code that I do not know by
having some unit tests around it. These characterisation tests will
also be useful as documentation.
7 years ago
Luis Díaz Más
b545605d25
Add characterisation tests for XmpKey
7 years ago
Dan Čermák
8b7941b733
[cmake] Add EXTRA_COMPILE_FLAGS to samples & unitTests
...
Add the additional compiler flags added by -DEXIV2_TEAM_EXTRA_WARNINGS=ON to
the targets in samples/ & unitTests/
This fixes #204
7 years ago
Dan Čermák
842dd4cecc
Add a unit tests for enforce()
7 years ago
Dan Čermák
06ec1e6984
[safe_op] Refactored addition overflow checks using functions only
...
- templated structs were not required, SFINAE works for functions too
=> use instead, removes some unneeded code
- fix non-usage of builtins with clang
- adjust unit tests
7 years ago
Dan Čermák
1de633ad37
Reset errno to 0 before unit test probing strerror(errno)
...
errno can be set to a non-zero value from a previously failed system
call, it is not reset by successful ones
=> have to do that manually or the unit test fails because it detects
an "outdated" error message
8 years ago
Dan Čermák
3b3283e37d
Added unit tests for new overflow checking addition functions
8 years ago
Luis Díaz Más
39377b8c02
Fix strError tests on Mac
8 years ago
Luis Díaz Más
9b463708a4
Test runner return the gtest return value
8 years ago
Luis Díaz Más
f36bea3801
exiv2::getEnv throws std::out_of_range on unexpected EnVar
...
This change define explicitly the behavior that exiv2::getEnv should have
on response to unexpected inputs.
There are some other minor changes:
- Use _putenv_s for the unit tests on Windows
- Add todo comment
- Remove deprecated note about freeing memory
8 years ago
Luis Díaz Más
8b049922d7
Change exiv2::urlencode signature to return std::string
...
The goal of this change is to remove the responsibility from the client code to
free the memory of the returned string.
8 years ago
Luis Díaz Más
fd5f131f4e
Add characterisation test for exiv2::urlencode
8 years ago
Luis Díaz Más
171c7970f9
Add characterization tests for exiv2::getEnv
8 years ago
Luis Diaz Mas
ec09c98adb
add few characterisation tests for exiv2::strError
8 years ago
Luis Díaz Más
cc7ff4122d
Export all symbols when running unit tests. Add dummy test for private code.
...
I tried to use directly the private OBJECT library (exiv2lib_int) in the unit_tests targets, but the private objects have dependencies on the public symbols (circular dependency)
and therefore it is impossible to test the private code with that approach with the current design of the library.
Starting from CMake 3.3 we can use the variable CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS to export all the symbols of a shared library:
https://blog.kitware.com/create-dlls-on-windows-without-declspec-using-new-cmake-export-all-feature/
Even having the opportunity to use this variable (that will be only used when EXIV2_BUILD_UNIT_TESTS is enabled) the previous commits are still valid.
It is interesting to clearly differentiate between the public and private code of the library. Enforcing this, make us think twice before putting code in the public
part of the library.
8 years ago
Luis Díaz Más
cfe614d8c3
Provide a gtestWrapper header to skip useless warnings
8 years ago
Luis Diaz Mas
2e8376dccc
Do not use Gtest imported target (Not available in minimum CMake version required)
8 years ago
Luis Díaz Más
752e7a6bea
Add simple unit tests for DataBuf
8 years ago
Luis Díaz Más
72cf9166fe
Add simple tests for exifTime
8 years ago