aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests
diff options
context:
space:
mode:
authorGravatar reed <reed@google.com>2016-09-12 12:01:44 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-09-12 12:01:44 -0700
commit42943c8aa9c611c18ad0f1a30a27669f3d82239c (patch)
treedeff0bbc59dd92559191c188d73f97b4f9c580aa /tests
parent09524ae42998ece3a8e7973064ab286646511b31 (diff)
change SkStreams to work with sk_sp<SkData> instead of SkData*
Diffstat (limited to 'tests')
-rw-r--r--tests/AnnotationTest.cpp4
-rw-r--r--tests/CachedDecodingPixelRefTest.cpp7
-rw-r--r--tests/CodecPriv.h4
-rw-r--r--tests/CodecTest.cpp19
-rw-r--r--tests/PDFDocumentTest.cpp7
-rw-r--r--tests/PDFGlyphsToUnicodeTest.cpp2
-rw-r--r--tests/PDFJpegEmbedTest.cpp6
-rw-r--r--tests/PDFMetadataAttributeTest.cpp2
-rw-r--r--tests/PDFPrimitivesTest.cpp2
-rw-r--r--tests/PathTest.cpp2
-rw-r--r--tests/PictureTest.cpp4
-rw-r--r--tests/StreamTest.cpp14
-rw-r--r--tests/TypefaceTest.cpp9
13 files changed, 36 insertions, 46 deletions
diff --git a/tests/AnnotationTest.cpp b/tests/AnnotationTest.cpp
index a4109c5e54..0a9dfeac18 100644
--- a/tests/AnnotationTest.cpp
+++ b/tests/AnnotationTest.cpp
@@ -51,7 +51,7 @@ DEF_TEST(Annotation_PdfLink, reporter) {
SkAnnotateRectWithURL(canvas, r, data.get());
REPORTER_ASSERT(reporter, doc->close());
- sk_sp<SkData> out(outStream.copyToData());
+ sk_sp<SkData> out = outStream.detachAsData();
const char* rawOutput = (const char*)out->data();
REPORTER_ASSERT(reporter, ContainsString(rawOutput, out->size(), "/Annots "));
@@ -69,7 +69,7 @@ DEF_TEST(Annotation_NamedDestination, reporter) {
SkAnnotateNamedDestination(canvas, p, data.get());
REPORTER_ASSERT(reporter, doc->close());
- sk_sp<SkData> out(outStream.copyToData());
+ sk_sp<SkData> out = outStream.detachAsData();
const char* rawOutput = (const char*)out->data();
REPORTER_ASSERT(reporter,
diff --git a/tests/CachedDecodingPixelRefTest.cpp b/tests/CachedDecodingPixelRefTest.cpp
index 1c89895d0b..b6253c73a2 100644
--- a/tests/CachedDecodingPixelRefTest.cpp
+++ b/tests/CachedDecodingPixelRefTest.cpp
@@ -38,11 +38,10 @@ static void make_test_image(SkBitmap* bm) {
/**
* encode this bitmap into some data via SkImageEncoder
*/
-static SkData* create_data_from_bitmap(const SkBitmap& bm,
- SkImageEncoder::Type type) {
+static sk_sp<SkData> create_data_from_bitmap(const SkBitmap& bm, SkImageEncoder::Type type) {
SkDynamicMemoryWStream stream;
if (SkImageEncoder::EncodeStream(&stream, bm, type, 100)) {
- return stream.copyToData();
+ return stream.detachAsData();
}
return nullptr;
}
@@ -107,7 +106,7 @@ static void test_three_encodings(skiatest::Reporter* reporter,
};
for (size_t i = 0; i < SK_ARRAY_COUNT(types); i++) {
SkImageEncoder::Type type = types[i];
- sk_sp<SkData> encoded(create_data_from_bitmap(original, type));
+ sk_sp<SkData> encoded = create_data_from_bitmap(original, type);
REPORTER_ASSERT(reporter, encoded.get() != nullptr);
if (nullptr == encoded.get()) {
continue;
diff --git a/tests/CodecPriv.h b/tests/CodecPriv.h
index 4e42731b01..a5afb09ba4 100644
--- a/tests/CodecPriv.h
+++ b/tests/CodecPriv.h
@@ -10,9 +10,7 @@
#include "SkData.h"
inline bool decode_memory(const void* mem, size_t size, SkBitmap* bm) {
- sk_sp<SkData> data(SkData::MakeWithoutCopy(mem, size));
-
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data.get()));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(SkData::MakeWithoutCopy(mem, size)));
if (!codec) {
return false;
}
diff --git a/tests/CodecTest.cpp b/tests/CodecTest.cpp
index b01750d410..348bc64739 100644
--- a/tests/CodecTest.cpp
+++ b/tests/CodecTest.cpp
@@ -210,7 +210,7 @@ static void check(skiatest::Reporter* r,
if (isIncomplete) {
size_t size = stream->getLength();
sk_sp<SkData> data((SkData::MakeFromStream(stream, 2 * size / 3)));
- codec.reset(SkCodec::NewFromData(data.get()));
+ codec.reset(SkCodec::NewFromData(data));
} else {
codec.reset(SkCodec::NewFromStream(stream.release()));
}
@@ -339,7 +339,7 @@ static void check(skiatest::Reporter* r,
if (isIncomplete) {
size_t size = stream->getLength();
sk_sp<SkData> data((SkData::MakeFromStream(stream, 2 * size / 3)));
- androidCodec.reset(SkAndroidCodec::NewFromData(data.get()));
+ androidCodec.reset(SkAndroidCodec::NewFromData(data));
} else {
androidCodec.reset(SkAndroidCodec::NewFromStream(stream.release()));
}
@@ -824,8 +824,7 @@ DEF_TEST(Codec_pngChunkReader, r) {
ChunkReader chunkReader(r);
// Now read the file with SkCodec.
- sk_sp<SkData> data(wStream.copyToData());
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data.get(), &chunkReader));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(wStream.detachAsData(), &chunkReader));
REPORTER_ASSERT(r, codec);
if (!codec) {
return;
@@ -865,8 +864,8 @@ DEF_TEST(Codec_pngChunkReader, r) {
// Stream that can only peek up to a limit
class LimitedPeekingMemStream : public SkStream {
public:
- LimitedPeekingMemStream(SkData* data, size_t limit)
- : fStream(data)
+ LimitedPeekingMemStream(sk_sp<SkData> data, size_t limit)
+ : fStream(std::move(data))
, fLimit(limit) {}
size_t peek(void* buf, size_t bytes) const override {
@@ -948,13 +947,13 @@ DEF_TEST(Codec_webp_peek, r) {
// The limit is less than webp needs to peek or read.
SkAutoTDelete<SkCodec> codec(SkCodec::NewFromStream(
- new LimitedPeekingMemStream(data.get(), 25)));
+ new LimitedPeekingMemStream(data, 25)));
REPORTER_ASSERT(r, codec);
test_info(r, codec.get(), codec->getInfo(), SkCodec::kSuccess, nullptr);
// Similarly, a stream which does not peek should still succeed.
- codec.reset(SkCodec::NewFromStream(new LimitedPeekingMemStream(data.get(), 0)));
+ codec.reset(SkCodec::NewFromStream(new LimitedPeekingMemStream(data, 0)));
REPORTER_ASSERT(r, codec);
test_info(r, codec.get(), codec->getInfo(), SkCodec::kSuccess, nullptr);
@@ -978,7 +977,7 @@ DEF_TEST(Codec_wbmp, r) {
writeableData[1] = static_cast<uint8_t>(~0x9F);
// SkCodec should support this.
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data.get()));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data));
REPORTER_ASSERT(r, codec);
if (!codec) {
return;
@@ -1083,7 +1082,7 @@ static void check_round_trip(skiatest::Reporter* r, const SkBitmap& bm1) {
sk_sp<SkData>(SkImageEncoder::EncodeData(bm1, SkImageEncoder::kPNG_Type, 100));
// Prepare to decode. The codec should recognize that the PNG is 565.
- SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data.get()));
+ SkAutoTDelete<SkCodec> codec(SkCodec::NewFromData(data));
REPORTER_ASSERT(r, origColorType == codec->getInfo().colorType());
REPORTER_ASSERT(r, origAlphaType == codec->getInfo().alphaType());
diff --git a/tests/PDFDocumentTest.cpp b/tests/PDFDocumentTest.cpp
index c871375117..afc05e49b8 100644
--- a/tests/PDFDocumentTest.cpp
+++ b/tests/PDFDocumentTest.cpp
@@ -193,8 +193,8 @@ DEF_TEST(SkPDF_pdfa_document, r) {
pdfMetadata, nullptr, /* pdfa = */ true);
doc->beginPage(64, 64)->drawColor(SK_ColorRED);
doc->close();
- sk_sp<SkData> data(buffer.copyToData());
- buffer.reset();
+ sk_sp<SkData> data(buffer.detachAsData());
+
static const char* expectations[] = {
"sRGB IEC61966-2.1",
"<dc:title><rdf:Alt><rdf:li xml:lang=\"x-default\">test document",
@@ -212,8 +212,7 @@ DEF_TEST(SkPDF_pdfa_document, r) {
pdfMetadata, nullptr, /* pdfa = */ true);
doc->beginPage(64, 64)->drawColor(SK_ColorRED);
doc->close();
- data.reset(buffer.copyToData());
- buffer.reset();
+ data = buffer.detachAsData();
static const char* moreExpectations[] = {
"/Producer (phoney library)",
diff --git a/tests/PDFGlyphsToUnicodeTest.cpp b/tests/PDFGlyphsToUnicodeTest.cpp
index f65ee3e3c7..b3ee2d86f2 100644
--- a/tests/PDFGlyphsToUnicodeTest.cpp
+++ b/tests/PDFGlyphsToUnicodeTest.cpp
@@ -15,7 +15,7 @@ static const int kMaximumGlyphCount = SK_MaxU16 + 1;
static bool stream_equals(const SkDynamicMemoryWStream& stream, size_t offset,
const char* buffer, size_t len) {
- sk_sp<SkData> data(stream.copyToData());
+ sk_sp<SkData> data = stream.snapshotAsData();
if (offset + len > data->size()) {
return false;
}
diff --git a/tests/PDFJpegEmbedTest.cpp b/tests/PDFJpegEmbedTest.cpp
index 93c204401d..2e75c3998a 100644
--- a/tests/PDFJpegEmbedTest.cpp
+++ b/tests/PDFJpegEmbedTest.cpp
@@ -78,9 +78,8 @@ DEF_TEST(SkPDF_JpegEmbedTest, r) {
canvas->flush();
document->endPage();
document->close();
- sk_sp<SkData> pdfData(pdf.copyToData());
+ sk_sp<SkData> pdfData(pdf.detachAsData());
SkASSERT(pdfData);
- pdf.reset();
REPORTER_ASSERT(r, is_subset_of(mandrillData.get(), pdfData.get()));
@@ -102,9 +101,8 @@ DEF_TEST(SkPDF_JpegEmbedTest, r) {
canvas->flush();
document->endPage();
document->close();
- pdfData.reset(pdf.copyToData());
+ pdfData = pdf.detachAsData();
SkASSERT(pdfData);
- pdf.reset();
REPORTER_ASSERT(r, is_subset_of(mandrillData.get(), pdfData.get()));
diff --git a/tests/PDFMetadataAttributeTest.cpp b/tests/PDFMetadataAttributeTest.cpp
index 6e7cc248d3..01351faec3 100644
--- a/tests/PDFMetadataAttributeTest.cpp
+++ b/tests/PDFMetadataAttributeTest.cpp
@@ -29,7 +29,7 @@ DEF_TEST(SkPDF_Metadata, r) {
metadata, nullptr, false);
doc->beginPage(612.0f, 792.0f);
doc->close();
- sk_sp<SkData> data(pdf.copyToData());
+ sk_sp<SkData> data = pdf.detachAsData();
static const char* expectations[] = {
"/Title (A1)",
"/Author (A2)",
diff --git a/tests/PDFPrimitivesTest.cpp b/tests/PDFPrimitivesTest.cpp
index c719f488d2..2d9468e7aa 100644
--- a/tests/PDFPrimitivesTest.cpp
+++ b/tests/PDFPrimitivesTest.cpp
@@ -106,7 +106,7 @@ static void TestPDFStream(skiatest::Reporter* reporter) {
compressedByteStream.writeToStream(&expected);
compressedByteStream.reset();
expected.writeText("\nendstream");
- sk_sp<SkData> expectedResultData2(expected.copyToData());
+ sk_sp<SkData> expectedResultData2(expected.detachAsData());
SkString result = emit_to_string(*stream);
#ifndef SK_PDF_LESS_COMPRESSION
assert_eql(reporter,
diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp
index 032b646d4e..483d14ec48 100644
--- a/tests/PathTest.cpp
+++ b/tests/PathTest.cpp
@@ -4083,7 +4083,7 @@ static void compare_dump(skiatest::Reporter* reporter, const SkPath& path, bool
bool dumpAsHex, const char* str) {
SkDynamicMemoryWStream wStream;
path.dump(&wStream, force, dumpAsHex);
- sk_sp<SkData> data(wStream.copyToData());
+ sk_sp<SkData> data = wStream.detachAsData();
REPORTER_ASSERT(reporter, data->size() == strlen(str));
if (strlen(str) > 0) {
REPORTER_ASSERT(reporter, !memcmp(data->data(), str, strlen(str)));
diff --git a/tests/PictureTest.cpp b/tests/PictureTest.cpp
index 7b187b4409..6ab57c04d7 100644
--- a/tests/PictureTest.cpp
+++ b/tests/PictureTest.cpp
@@ -632,7 +632,7 @@ static sk_sp<SkData> serialized_picture_from_bitmap(const SkBitmap& bitmap) {
SkAutoTUnref<SkPixelSerializer> serializer(
SkImageEncoder::CreatePixelSerializer());
picture->serialize(&wStream, serializer);
- return sk_sp<SkData>(wStream.copyToData());
+ return wStream.detachAsData();
}
struct ErrorContext {
@@ -670,7 +670,7 @@ DEF_TEST(Picture_EncodedData, reporter) {
if (!SkImageEncoder::EncodeStream(&wStream, original, SkImageEncoder::kPNG_Type, 100)) {
return;
}
- sk_sp<SkData> data(wStream.copyToData());
+ sk_sp<SkData> data = wStream.detachAsData();
SkBitmap bm;
bool installSuccess = SkDEPRECATED_InstallDiscardablePixelRef(data.get(), &bm);
diff --git a/tests/StreamTest.cpp b/tests/StreamTest.cpp
index 56977822b9..74e60557d1 100644
--- a/tests/StreamTest.cpp
+++ b/tests/StreamTest.cpp
@@ -117,13 +117,13 @@ static void TestWStream(skiatest::Reporter* reporter) {
REPORTER_ASSERT(reporter, ds.getOffset() == 100 * 26);
{
- sk_sp<SkData> data(ds.copyToData());
+ sk_sp<SkData> data = ds.snapshotAsData();
REPORTER_ASSERT(reporter, 100 * 26 == data->size());
REPORTER_ASSERT(reporter, memcmp(dst, data->data(), data->size()) == 0);
}
{
- // Test that this works after a copyToData.
+ // Test that this works after a snapshot.
SkAutoTDelete<SkStreamAsset> stream(ds.detachAsStream());
REPORTER_ASSERT(reporter, ds.getOffset() == 0);
test_loop_stream(reporter, stream.get(), s, 26, 100);
@@ -174,15 +174,14 @@ static void TestPackedUInt(skiatest::Reporter* reporter) {
static void TestDereferencingData(SkMemoryStream* memStream) {
memStream->read(nullptr, 0);
memStream->getMemoryBase();
- sk_sp<SkData> data(memStream->copyToData());
+ (void)memStream->asData();
}
static void TestNullData() {
- SkData* nullData = nullptr;
- SkMemoryStream memStream(nullData);
+ SkMemoryStream memStream(nullptr);
TestDereferencingData(&memStream);
- memStream.setData(nullData);
+ memStream.setData(nullptr);
TestDereferencingData(&memStream);
}
@@ -404,8 +403,7 @@ static void stream_copy_test(skiatest::Reporter* reporter,
ERRORF(reporter, "SkStreamCopy failed");
return;
}
- sk_sp<SkData> data(tgt.copyToData());
- tgt.reset();
+ sk_sp<SkData> data(tgt.detachAsData());
if (data->size() != N) {
ERRORF(reporter, "SkStreamCopy incorrect size");
return;
diff --git a/tests/TypefaceTest.cpp b/tests/TypefaceTest.cpp
index 6f803ce11f..436f129a63 100644
--- a/tests/TypefaceTest.cpp
+++ b/tests/TypefaceTest.cpp
@@ -21,12 +21,11 @@ static void TypefaceStyle_test(skiatest::Reporter* reporter,
uint16_t weight, uint16_t width, SkData* data)
{
sk_sp<SkData> dataCopy;
- SkData* dataToUse = data;
- if (!dataToUse->unique()) {
+ if (!data->unique()) {
dataCopy = SkData::MakeWithCopy(data->data(), data->size());
- dataToUse = dataCopy.get();
+ data = dataCopy.get();
}
- SkSFNTHeader* sfntHeader = static_cast<SkSFNTHeader*>(dataToUse->writable_data());
+ SkSFNTHeader* sfntHeader = static_cast<SkSFNTHeader*>(data->writable_data());
SkSFNTHeader::TableDirectoryEntry* tableEntry =
SkTAfter<SkSFNTHeader::TableDirectoryEntry>(sfntHeader);
@@ -46,7 +45,7 @@ static void TypefaceStyle_test(skiatest::Reporter* reporter,
using WidthType = SkOTTableOS2_V0::WidthClass::Value;
os2Table->usWidthClass.value = static_cast<WidthType>(SkEndian_SwapBE16(width));
- sk_sp<SkTypeface> newTypeface(SkTypeface::MakeFromStream(new SkMemoryStream(dataToUse)));
+ sk_sp<SkTypeface> newTypeface(SkTypeface::MakeFromStream(new SkMemoryStream(sk_ref_sp(data))));
SkASSERT_RELEASE(newTypeface);
SkFontStyle newStyle = newTypeface->fontStyle();