| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "platform/image-decoders/ImageDecoderTestHelpers.h" | 5 #include "platform/image-decoders/ImageDecoderTestHelpers.h" |
| 6 | 6 |
| 7 #include "platform/SharedBuffer.h" | 7 #include "platform/SharedBuffer.h" |
| 8 #include "platform/image-decoders/ImageDecoder.h" | 8 #include "platform/image-decoders/ImageDecoder.h" |
| 9 #include "platform/image-decoders/ImageFrame.h" | 9 #include "platform/image-decoders/ImageFrame.h" |
| 10 #include "platform/testing/UnitTestHelpers.h" | 10 #include "platform/testing/UnitTestHelpers.h" |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 68 OwnPtr<ImageDecoder> decoder = createDecoder(); | 68 OwnPtr<ImageDecoder> decoder = createDecoder(); |
| 69 | 69 |
| 70 size_t frameCount = 0; | 70 size_t frameCount = 0; |
| 71 size_t framesDecoded = 0; | 71 size_t framesDecoded = 0; |
| 72 | 72 |
| 73 // Pass data to decoder byte by byte. | 73 // Pass data to decoder byte by byte. |
| 74 RefPtr<SharedBuffer> sourceData[2] = { SharedBuffer::create(), SharedBuffer:
:create() }; | 74 RefPtr<SharedBuffer> sourceData[2] = { SharedBuffer::create(), SharedBuffer:
:create() }; |
| 75 const char* source = data->data(); | 75 const char* source = data->data(); |
| 76 | 76 |
| 77 for (size_t length = 1; length <= data->size() && !decoder->failed(); ++leng
th) { | 77 for (size_t length = 1; length <= data->size() && !decoder->failed(); ++leng
th) { |
| 78 sourceData[0]->append(source, 1); | 78 sourceData[0]->append(source, 1u); |
| 79 sourceData[1]->append(source++, 1); | 79 sourceData[1]->append(source++, 1u); |
| 80 // Alternate the buffers to cover the JPEGImageDecoder::onSetData restar
t code. | 80 // Alternate the buffers to cover the JPEGImageDecoder::onSetData restar
t code. |
| 81 decoder->setData(sourceData[length & 1].get(), length == data->size()); | 81 decoder->setData(sourceData[length & 1].get(), length == data->size()); |
| 82 | 82 |
| 83 EXPECT_LE(frameCount, decoder->frameCount()); | 83 EXPECT_LE(frameCount, decoder->frameCount()); |
| 84 frameCount = decoder->frameCount(); | 84 frameCount = decoder->frameCount(); |
| 85 | 85 |
| 86 if (!decoder->isSizeAvailable()) | 86 if (!decoder->isSizeAvailable()) |
| 87 continue; | 87 continue; |
| 88 | 88 |
| 89 ImageFrame* frame = decoder->frameBufferAtIndex(frameCount - 1); | 89 ImageFrame* frame = decoder->frameBufferAtIndex(frameCount - 1); |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 132 // data in a segment, its pointer would no longer be valid. | 132 // data in a segment, its pointer would no longer be valid. |
| 133 segmentedData->data(); | 133 segmentedData->data(); |
| 134 | 134 |
| 135 ImageFrame* frame = decoder->frameBufferAtIndex(0); | 135 ImageFrame* frame = decoder->frameBufferAtIndex(0); |
| 136 ASSERT_FALSE(decoder->failed()); | 136 ASSERT_FALSE(decoder->failed()); |
| 137 EXPECT_EQ(frame->status(), ImageFrame::FrameComplete); | 137 EXPECT_EQ(frame->status(), ImageFrame::FrameComplete); |
| 138 EXPECT_EQ(hashBitmap(frame->bitmap()), hash); | 138 EXPECT_EQ(hashBitmap(frame->bitmap()), hash); |
| 139 } | 139 } |
| 140 | 140 |
| 141 } // namespace blink | 141 } // namespace blink |
| OLD | NEW |