Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(520)

Side by Side Diff: Source/core/platform/image-decoders/webp/WEBPImageDecoderTest.cpp

Issue 22645008: Add WebKitUnitTestSupport::readFromFile and deprecate all PlatformFileHandle related methods (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 15 matching lines...) Expand all
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 */ 29 */
30 30
31 #include "config.h" 31 #include "config.h"
32 32
33 #include "core/platform/image-decoders/webp/WEBPImageDecoder.h" 33 #include "core/platform/image-decoders/webp/WEBPImageDecoder.h"
34 34
35 #include "RuntimeEnabledFeatures.h" 35 #include "RuntimeEnabledFeatures.h"
36 #include "core/platform/FileSystem.h"
37 #include "core/platform/SharedBuffer.h" 36 #include "core/platform/SharedBuffer.h"
38 #include "public/platform/Platform.h" 37 #include "public/platform/Platform.h"
39 #include "public/platform/WebData.h" 38 #include "public/platform/WebData.h"
40 #include "public/platform/WebSize.h" 39 #include "public/platform/WebSize.h"
41 #include "public/platform/WebUnitTestSupport.h" 40 #include "public/platform/WebUnitTestSupport.h"
42 #include "wtf/OwnPtr.h" 41 #include "wtf/OwnPtr.h"
43 #include "wtf/PassOwnPtr.h" 42 #include "wtf/PassOwnPtr.h"
44 #include "wtf/StringHasher.h" 43 #include "wtf/StringHasher.h"
45 #include "wtf/Vector.h" 44 #include "wtf/Vector.h"
46 #include "wtf/dtoa/utils.h" 45 #include "wtf/dtoa/utils.h"
47 #include <gtest/gtest.h> 46 #include <gtest/gtest.h>
48 47
49 using namespace WebCore; 48 using namespace WebCore;
50 using namespace WebKit; 49 using namespace WebKit;
51 50
52 #if !OS(ANDROID) 51 #if !OS(ANDROID)
53 52
54 namespace { 53 namespace {
55 54
56 PassRefPtr<SharedBuffer> readFile(const char* fileName) 55 PassRefPtr<SharedBuffer> readFile(const char* fileName)
57 { 56 {
58 String filePath = Platform::current()->unitTestSupport()->webKitRootDir(); 57 String filePath = Platform::current()->unitTestSupport()->webKitRootDir();
59 filePath.append(fileName); 58 filePath.append(fileName);
60 59
61 long long fileSize; 60 return Platform::current()->unitTestSupport()->readFromFile(filePath);
62 if (!getFileSize(filePath, fileSize))
63 return 0;
64
65 PlatformFileHandle handle = openFile(filePath, OpenForRead);
66 int fileLength = static_cast<int>(fileSize);
67 Vector<char> buffer(fileLength);
68 readFromFile(handle, buffer.data(), fileLength);
69 closeFile(handle);
70 return SharedBuffer::adoptVector(buffer);
71 } 61 }
72 62
73 PassOwnPtr<WEBPImageDecoder> createDecoder() 63 PassOwnPtr<WEBPImageDecoder> createDecoder()
74 { 64 {
75 return adoptPtr(new WEBPImageDecoder(ImageSource::AlphaNotPremultiplied, Ima geSource::GammaAndColorProfileApplied)); 65 return adoptPtr(new WEBPImageDecoder(ImageSource::AlphaNotPremultiplied, Ima geSource::GammaAndColorProfileApplied));
76 } 66 }
77 67
78 unsigned hashSkBitmap(const SkBitmap& bitmap) 68 unsigned hashSkBitmap(const SkBitmap& bitmap)
79 { 69 {
80 return StringHasher::hashMemory(bitmap.getPixels(), bitmap.getSize()); 70 return StringHasher::hashMemory(bitmap.getPixels(), bitmap.getSize());
(...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after
436 EXPECT_EQ(baselineHashes[frameCount - 1], hashSkBitmap(lastFrame->getSkBitma p())); 426 EXPECT_EQ(baselineHashes[frameCount - 1], hashSkBitmap(lastFrame->getSkBitma p()));
437 decoder->clearCacheExceptFrame(notFound); 427 decoder->clearCacheExceptFrame(notFound);
438 428
439 // Resume decoding of the first frame. 429 // Resume decoding of the first frame.
440 ImageFrame* firstFrame = decoder->frameBufferAtIndex(0); 430 ImageFrame* firstFrame = decoder->frameBufferAtIndex(0);
441 EXPECT_EQ(ImageFrame::FrameComplete, firstFrame->status()); 431 EXPECT_EQ(ImageFrame::FrameComplete, firstFrame->status());
442 EXPECT_EQ(baselineHashes[0], hashSkBitmap(firstFrame->getSkBitmap())); 432 EXPECT_EQ(baselineHashes[0], hashSkBitmap(firstFrame->getSkBitmap()));
443 } 433 }
444 434
445 #endif 435 #endif
446
OLDNEW
« no previous file with comments | « Source/core/platform/image-decoders/gif/GIFImageDecoderTest.cpp ('k') | Source/web/tests/WebImageTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698