Commit Graph

73 Commits

Author SHA1 Message Date
DreamPiggy 8bc04d6445 Update Podfile Example 2019-12-26 17:42:14 +08:00
DreamPiggy 759e02eb30 Add test case for this special case of FLAnimatedImage loading 2019-01-14 13:07:45 +08:00
DreamPiggy e6a4e74ed5 Revert the changes for unused public API, polish comments 2019-01-03 11:49:06 +08:00
Bogdan Poplauschi 6c6d848cee Added 2 tests for #2516 Fix extention long length of file name 2018-10-28 20:49:44 +02:00
DreamPiggy 50b6a09a9b Fix the test case testFLAnimatedImageViewSetImageWithURL because of remote resource is not available 2018-08-16 14:57:47 +08:00
Bogdan Poplauschi 676a4b53b7 Merge pull request #2336 from gukemanbu/xucg
remove addProgressCallback, add createDownloaderOperationWithUrl
2018-08-02 11:25:51 +03:00
xucg 91a8227ab1 add unit test 2018-05-24 20:27:48 +08:00
DreamPiggy c6fa6e31fb Remove the extra calculation of image orientation for ImageIO coder 2018-05-04 16:30:39 +08:00
DreamPiggy 46e5b196f8 Fix the test about alpha images force decode 2018-04-11 16:10:41 +08:00
DreamPiggy 9c3928a9db Fix prefetcher test to first clear the disk cache, and manager test to only fulfill the finished one 2018-02-20 21:18:08 +08:00
DreamPiggy aac654b069 Update the test for custom operation interface 2018-01-21 11:11:46 +08:00
DreamPiggy 3f3a309fb4 Update the test and description to make it more clear 2018-01-16 11:34:56 +08:00
DreamPiggy 1ef45bace1 Add a NSProgress property represent the image loading progress, this allow user add KVO on it for complicated logic 2018-01-13 22:34:58 +08:00
DreamPiggy 8b3c4c2cde Fix Clang Static Analyzer warning for number nil check from Xcode 9.2 2017-12-29 12:52:29 +08:00
DreamPiggy a7c8ce5864 Update tests to invalidate session after usage 2017-11-27 00:37:20 +08:00
Bogdan Poplauschi 04855c945e Merge pull request #2061 from dvkch/master
Cached image filename are sometimes generated with invalid path extensions
2017-10-21 17:15:11 +03:00
Bogdan Poplauschi ed411dcba9 Finally fixed the tests from `SDImageCacheTests` so we can re-enable `test40InsertionOfImageData`
- the problems: some tests were just poorly written, using async calls but not properly setting async expectations. Those were generating undefined behaviour (not clear if/when those callbacks would be executed).
- also, we wanted to call `clearAllCaches` before every test, but since some methods there are async, this doesn't work with the way `setUp` was designed. So basically sometimes before a test we could clear the cache but sometimes not, or even the clear could come while running the test which was worst
- decided to fix this by making sure after every test that we manually clear what we have added.
2017-10-20 21:14:25 +03:00
Bogdan Poplauschi 86151183f6 Switched all the tests from using https://s3.amazonaws.com/fast-image-cache/demo-images/* images which are big and sometimes fail to arrive in 5 seconds (before the test can timeout) to smaller images, basically using http://via.placeholder.com/ like http://via.placeholder.com/50x50.jpg or http://via.placeholder.com/200x200.png
This should speed up the tests a bit and also avoid some of the random failures due to timeout
2017-10-20 20:29:18 +03:00
Bogdan Poplauschi 90c90a06bc Refactored the `SDWebImageDecoderTests` a bit. Per DRY, created `verifyCoder:withLocalImageURL:isAnimatedImage:` method that will take a imageURL and a coder and will check decoding and encoding back and forth, sizes and so. Reusing this method for the static WebP image, for the animated WebP image and for the GIF. 2017-10-20 18:40:09 +03:00
Bogdan Poplauschi f57c21d52a Improved the code coverage of our unit tests (given that we disabled test40InsertionOfImageData).
Also updated the Tests Podfile so we don't get a warning (xcodeproj was renamed to project)
2017-10-20 16:15:38 +03:00
Bogdan Poplauschi 05828742e8 Just disabled this test test40InsertionOfImageData - keeps failing for unknown reasons (strangely sometimes the data doesn't get written to disk) 2017-10-19 19:15:21 +03:00
DreamPiggy a0879fc049 Feature: refactor decoding code and provide decoding plugin
- open the decoding/encoding procedures to the users
- switch from hardcoded decoding/encoding to pluginable decoders/encoders (builtin + user created)
- `SDWebImageCodersManager` is a singleton holding an array of `SDImageCoder` (protocol). Even though a singleton is not necesarily a good pattern, in this case it eliminates dealing with passing this array around
- uses a priority queue behind scenes, which means the latest added coders have priority.
- the priority is crucial when encoding/decoding something, we go through the list and ask each coder if they can handle the current data (see `canDecodeFromData:`, `canEncodeToFormat:`, `canIncrementallyDecodeFromData:`)
- each coder must conform to this protocol `SDImageCoder` describing all the required behavior for a coder
- we provide 3 built-in coders: `SDWebImageImageIOCoder` (for JPEG, PNG, TIFF), `SDWebImageGIFCoder` (for GIF), `SDWebImageWebPCoder` (for WebP and animated WebP)
- the user of SDWebImage can create custom coders by conforming to `SDImageCoder` and adding the coders to `SDWebImageCodersManager`. See `addCoder:` or `removeCoder:` or `coders` getter to get the array
- in order to preserve backwards compatibility, the UIImage categories were preserved, calling the new coders APIs described above
2017-10-16 19:52:18 +03:00
Bogdan Poplauschi ff0690547d Xcode 9 recommended settings applied 2017-10-06 20:58:44 +03:00
DreamPiggy 74566aeb98 Add a test for SDWebImageRefreshCached 2017-09-23 20:34:08 +08:00
DreamPiggy 05dfa6c588 Fix clang strict prototype warning in test 2017-09-21 10:15:30 +08:00
skyline75489 d11597a796 Move common test logic to SDTestCase 2017-08-03 07:50:51 +08:00
Bogdan Poplauschi f6cca301d5 Merge pull request #1952 from dreampiggy/master
#1951: Fix animated WebP decoding issue, including canvas size, the support for dispose method and the duration per frame
2017-07-31 15:26:06 +03:00
Bogdan Poplauschi 637c418139 Removed unreliable check from Downloader tests - sometimes there is more than 1 download in the queue which makes the tests fail 2017-07-31 13:02:26 +03:00
DreamPiggy f3cffd0aca Add test for animated WebP image array
The image array used for +[UIImage animatedImageWithImages:] should share the same size.
2017-07-03 02:46:42 +08:00
Bogdan Poplauschi 8d1a0ae091 Added tests for the scale down decoding + test image and updated a bit the other decoder tests 2016-10-06 16:00:43 +03:00
Bogdan Poplauschi 9879ddf0dc Test xcodeproj updated to Xcode 8 2016-10-06 16:00:02 +03:00
Bogdan Poplauschi 9c0c31f524 Updated the test for FLAnimatedImage 2016-10-04 16:48:12 +03:00
Bogdan Poplauschi ed5f018c2b Fixed the tests - were failing because of the #984 changes 2016-10-01 12:40:50 +03:00
Bogdan Poplauschi 13ffb2327c Stopped the simulators from being too verbose 2016-09-30 21:07:44 +03:00
Bogdan Poplauschi 67e0719755 Update according to Xcode 8 recommended settings. Set the deployment target to iOS 8.0. No code signing. Enabled some warnings 2016-09-30 21:06:05 +03:00
Bogdan Poplauschi 1cbe54d600 Tests for the WebCache categories 2016-09-25 19:53:53 +03:00
Bogdan Poplauschi 460c2e01a1 Tests project: CocoaPods 1.1.0, dynamic frameworks, include all the code from SDWebImage (MapKit and GIF), updated imports so they work fine 2016-09-25 19:46:46 +03:00
Bogdan Poplauschi f48a133f1b Prefetcher tests 2016-09-25 15:49:33 +03:00
Bogdan Poplauschi ea0bd97d10 Tests for SDWebImageManager 2016-09-25 15:17:21 +03:00
Bogdan Poplauschi fbca6a6dc3 Removed unneded code 2016-09-25 14:57:51 +03:00
Bogdan Poplauschi cfc182f2e5 Added SDImageCacheConfig to all targets, test images, code coverage setting, tests for SDImageCache, SDWebImageDownloader, SDWebImageDownloaderOperation, SDWebImageDecoder 2016-09-24 00:14:13 +03:00
Bogdan Poplauschi fbb310b494 Expecta can use the latest version, using the WebP subspec in the Tests Podfile so we can get all the files 2016-09-23 20:37:17 +03:00
Bogdan Poplauschi 179362f55d Attempt to fix the tests as they were 2 tests trying to get the same image 2016-06-13 09:49:10 +03:00
Bogdan Poplauschi 7684fbd9a7 Merge branch '4.x' into gif
# Conflicts:
#	SDWebImage.xcodeproj/project.pbxproj
2016-06-07 08:39:17 +03:00
Bogdan Poplauschi 3364a981d5 Merge branch 'master' into 4.x
+ SDWebImageDownloader downloadImageWithURL:... properly use the weakself-strongself pattern

# Conflicts:
#	.travis.yml
#	Examples/SDWebImage Demo.xcodeproj/project.pbxproj
#	README.md
#	SDWebImage.xcodeproj/project.pbxproj
#	SDWebImage/SDWebImageDownloader.m
#	SDWebImage/SDWebImageDownloaderOperation.h
#	SDWebImage/SDWebImageDownloaderOperation.m
#	SDWebImage/SDWebImageManager.m
#	Tests/Podfile
#	Tests/SDWebImage Tests.xcodeproj/project.pbxproj
2016-06-07 08:36:45 +03:00
Bogdan Poplauschi 6545a3aba1 Bumped the deployment target to iOS 7 (due to NSURLSession) and also incremented the library version to 3.8.0 2016-06-02 19:10:31 +03:00
Bogdan Poplauschi 94c1ec3ed0 Revisited all copyright comments and decided for just one format 2016-06-01 15:53:08 +03:00
Bogdan Poplauschi 7761afca92 Trying to fix the random build failures (probably timeout due to this image url) 2016-06-01 11:58:39 +03:00
Bogdan Poplauschi b059b04fd2 Updated the tests 2016-06-01 10:32:40 +03:00
Bogdan Poplauschi b5a504f326 Trying to get around this last build error "The certificate for this server is invalid. You might be connecting to a server that is pretending to be “www.google.gr” which could put your confidential information at risk." by using a different image 2016-05-29 13:08:29 +03:00