aboutsummaryrefslogtreecommitdiff
path: root/tests/DataRefTest.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Add smartptr SkRWBuffer snapshot methodsFlorin Malita2017-06-011-14/+13
| | | | | | | Change-Id: Id816a38213a86bf090230ebaaef00d98a9487965 Reviewed-on: https://skia-review.googlesource.com/18266 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Florin Malita <fmalita@chromium.org>
* Remove SkDataTableBuilder. It is not used.Herb Derby2017-02-281-27/+0
| | | | | | | Change-Id: Ieae9adba73b8ada959e08d69a06d0f3d010209c6 Reviewed-on: https://skia-review.googlesource.com/9076 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Herb Derby <herb@google.com>
* Move SkOSPath out of include/core.Ben Wagner2016-11-081-0/+1
| | | | | | | | | | | | | It is moved to src/utils. It is almost a tool, but has two uses in src/ports. The existing SkOSFile.cpp is left empty for the time being since it is mentioned in Chromium's BUILD.gn for Skia. Change-Id: I3bb7f7c4214359eb6ab906bfe76737d20bf1d6c7 Reviewed-on: https://skia-review.googlesource.com/4536 Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com>
* tests: s/SkAutoTUnref/sk_sp/Hal Canary2016-11-041-2/+2
| | | | | | | | | | | BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4394 Change-Id: I088b3c6e2adff07abed1e8a50091cc0ec4a4109c Reviewed-on: https://skia-review.googlesource.com/4394 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
* Remove SkAutoTDelete.Ben Wagner2016-11-031-1/+1
| | | | | | | | | Replace with std::unique_ptr. Change-Id: I5806cfbb30515fcb20e5e66ce13fb5f3b8728176 Reviewed-on: https://skia-review.googlesource.com/4381 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
* Move to SkDataTable::MakeXXX and sk_sp.bungeman2016-08-051-24/+19
| | | | | | | | Change SkDataTable::NewXXX to SkDataTable::MakeXXX and return sk_sp. This updates users of SkDataTable to sk_sp as well. There do not appear to be any external users of these methods. Review-Url: https://codereview.chromium.org/2211143002
* Move off SK_SUPPORT_LEGACY_DATA_FACTORIES.bungeman2016-08-021-17/+14
| | | | | | | This moves Skia code off of SK_SUPPORT_LEGACY_DATA_FACTORIES. GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2206633004 Review-Url: https://codereview.chromium.org/2206633004
* Fixes for SkRWBufferscroggo2016-04-221-3/+53
| | | | | | | | | | | | | | | | | | | | | | | | | Do not call SkBufferHead::validate in SkROBuffer's destructor, which may be called in a separate thread from SkRWBuffer::append. validate() reads SkBufferBlock::fUsed, and append() writes to it, resulting in a data race. Update some comments to be more clear about how it is safe to use these classes across threads. Test the readers in separate threads. In addition, make sure it is safe to create a reader even when no data has been appended. Add tests for this case. Mark a parameter to SkBufferHead::validate() as const, reflecting its use. BUG=chromium:601578 BUG=chromium:605479 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1871953002 Review URL: https://codereview.chromium.org/1871953002
* Revert of Fixes for SkRWBuffer (patchset #5 id:80001 of ↵bungeman2016-04-141-37/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1871953002/ ) Reason for revert: Making MSAN and TSAN rather unhappy. https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-MSAN/builds/1586 https://build.chromium.org/p/client.skia/builders/Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN/builds/5922 Original issue's description: > Fixes for SkRWBuffer > > Do not call SkBufferHead::validate in SkROBuffer's destructor, which > may be called in a separate thread from SkRWBuffer::append. validate() > reads SkBufferBlock::fUsed, and append() writes to it, resulting in > a data race. > > Update some comments to be more clear about how it is safe to use > these classes across threads. > > Test the readers in separate threads. > > In addition, make sure it is safe to create a reader even when no > data has been appended. Add tests for this case. > > Mark a parameter to SkBufferHead::validate() as const, reflecting > its use. > > BUG=chromium:601578 > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1871953002 > > Committed: https://skia.googlesource.com/skia/+/d06920a29fe11c68bde2b93948ec99f277bb8459 TBR=mtklein@google.com,reed@google.com,scroggo@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:601578 Review URL: https://codereview.chromium.org/1882853004
* Fixes for SkRWBufferscroggo2016-04-141-3/+37
| | | | | | | | | | | | | | | | | | | | | | | Do not call SkBufferHead::validate in SkROBuffer's destructor, which may be called in a separate thread from SkRWBuffer::append. validate() reads SkBufferBlock::fUsed, and append() writes to it, resulting in a data race. Update some comments to be more clear about how it is safe to use these classes across threads. Test the readers in separate threads. In addition, make sure it is safe to create a reader even when no data has been appended. Add tests for this case. Mark a parameter to SkBufferHead::validate() as const, reflecting its use. BUG=chromium:601578 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1871953002 Review URL: https://codereview.chromium.org/1871953002
* Fix race condition in SkROBuffer.reed2016-04-081-5/+1
| | | | | | | | | | SkBufferBlock::fUsed may be updated by the writer while a reader is attempting to read it. BUG=chromium:601578 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1872853002 Review URL: https://codereview.chromium.org/1872853002
* Style bikeshed - remove extraneous whitespacehalcanary2016-03-291-1/+1
| | | | | | GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1842753002 Review URL: https://codereview.chromium.org/1842753002
* Make SkRWBuffer destruct safelyscroggo2016-02-161-0/+7
| | | | | | | | | | | Check for NULL before calling unref. Add a test. BUG=483369 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1691383002 Review URL: https://codereview.chromium.org/1691383002
* Make SkROBuffer::Iter::size() work when exhaustedscroggo2016-01-111-0/+15
| | | | | | | | | | | According to the documentation, this method will return 0 when the Iter is exhausted. Prior to this CL, it crashes instead. Prevent a crash with a null fHead, and add a test to verify the behavior. GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1574603002 Review URL: https://codereview.chromium.org/1574603002
* Eliminate SkFILE: it always is the same as FILE.halcanary2015-11-201-1/+1
| | | | Review URL: https://codereview.chromium.org/1467533003
* Style Change: NULL->nullptrhalcanary2015-08-271-8/+8
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316233002 Review URL: https://codereview.chromium.org/1316233002
* Style Change: SkNEW->new; SkDELETE->deletehalcanary2015-08-261-1/+1
| | | | | | DOCS_PREVIEW= https://skia.org/?cl=1316123003 Review URL: https://codereview.chromium.org/1316123003
* remove dead guarded code for legacy SkData procreed2015-06-181-12/+0
| | | | | | BUG=skia: Review URL: https://codereview.chromium.org/1173173007
* simplify release-proc for SkData, removing unneeded size paramreed2015-06-171-1/+13
| | | | | | | | request https://codereview.chromium.org/1184953005 to land first BUG=skia: Review URL: https://codereview.chromium.org/1193553002
* SkRWBuffer for thread-safe 'stream' sharingreed2015-04-281-0/+81
| | | | | | | | | | | | | WIP - Can accumulate (write) data in one thread, and share snapshots of it in other threads ... e.g. network accumulates image data, and periodically we want to decode/draw it - If this sort of thing sticks, should we promote SkData to have the same generality as SkRBuffer? BUG=skia: TBR= Review URL: https://codereview.chromium.org/1106113002
* Simplify skiatest framework.halcanary2015-01-201-1/+1
| | | | | | | | | | | | | skiatest::Test class is now a simple struct. Some functionalty, such as counting errors or timing is now handled elsewhere. skiatest:Reporter is now a simpler abstract class. The two implementations handle test errors. DM and pathops_unittest updated. Review URL: https://codereview.chromium.org/830513004
* Cleanup: Rename SkOSPath functions.tfarina2014-07-281-1/+1
| | | | | | | | | | | | | | | | Mostly for brevity and matches better with Python: Python | Old C++ | New C++ os.path.join | SkOSPath::SkPathJoin | SkOSPath::Join os.path.basename | SkOSPath::SkBasename | SkOSPath::Basename BUG=None TEST=make all R=mtklein@google.com, bsalomon@google.com Author: tfarina@chromium.org Review URL: https://codereview.chromium.org/428443002
* Refactor read and write buffers.commit-bot@chromium.org2014-01-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Eliminates SkFlattenable{Read,Write}Buffer, promoting SkOrdered{Read,Write}Buffer a step each in the hierarchy. What used to be this: SkFlattenableWriteBuffer -> SkOrderedWriteBuffer SkFlattenableReadBuffer -> SkOrderedReadBuffer SkFlattenableReadBuffer -> SkValidatingReadBuffer is now SkWriteBuffer SkReadBuffer -> SkValidatingReadBuffer Benefits: - code is simpler, names are less wordy - the generic SkFlattenableFooBuffer code in SkPaint was incorrect; removed - write buffers are completely devirtualized, important for record speed This refactoring was mostly mechanical. You aren't going to find anything interesting in files with less than 10 lines changed. BUG=skia: R=reed@google.com, scroggo@google.com, djsollen@google.com, mtklein@google.com Author: mtklein@chromium.org Review URL: https://codereview.chromium.org/134163010 git-svn-id: http://skia.googlecode.com/svn/trunk@13245 2bbb7eff-a529-9590-31e7-b0007b416f81
* Cleanup: Sanitize the order of includes under tests/tfarina@chromium.org2014-01-241-2/+2
| | | | | | | | | | | | | | | | Initially this was to make sure Test.h appeared after the Sk*.h includes. Patch generated by the following command line: $ ~/chromium/src/tools/sort-headers.py tests/*.cpp BUG=None TEST=tests R=robertphillips@google.com Review URL: https://codereview.chromium.org/145313004 git-svn-id: http://skia.googlecode.com/svn/trunk@13177 2bbb7eff-a529-9590-31e7-b0007b416f81
* Move macros from TestClassDef.h to Test.hcommit-bot@chromium.org2014-01-141-1/+0
| | | | | | | | | | | | | | Motivation: those macros don't make any sense without the definitions in Test.h. BUG= R=mtklein@google.com Author: halcanary@google.com Review URL: https://codereview.chromium.org/138563004 git-svn-id: http://skia.googlecode.com/svn/trunk@13074 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add REPORTF test macro.halcanary@google.com2014-01-101-3/+1
| | | | | | | | | | | | | | | | | | This macro replaces: SkString str; str.printf("Foo test Expected %d got %d", x, y); reporter->reportFailed(str); with the shorter code: REPORTF(reporter, ("Foo test Expected %d got %d", x, y)); The new form also appends __FILE__:__LINE__ to the message before calling reportFailed(). BUG= R=mtklein@google.com Review URL: https://codereview.chromium.org/132843002 git-svn-id: http://skia.googlecode.com/svn/trunk@13016 2bbb7eff-a529-9590-31e7-b0007b416f81
* Use DEFINE_TESTCLASS_SHORT macro in tests.tfarina@chromium.org2013-12-121-7/+4
| | | | | | | | | | | | | The three version of DEFINE_TESTCLASS macro is deprecated and thus just use the simple, short one. BUG=None TEST=out/Debug/tests R=mtklein@google.com, bsalomon@google.com, robertphillips@google.com Review URL: https://codereview.chromium.org/100113004 git-svn-id: http://skia.googlecode.com/svn/trunk@12653 2bbb7eff-a529-9590-31e7-b0007b416f81
* Remove SkDataTable from SkFlattenable hierarchy.commit-bot@chromium.org2013-10-151-20/+0
| | | | | | | | | | | | | | As far as I can tell, we never really needed this. No code outside the unit test calls this code. BUG= R=reed@google.com Author: mtklein@google.com Review URL: https://codereview.chromium.org/26223009 git-svn-id: http://skia.googlecode.com/svn/trunk@11792 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove SkDataSet, and just store a key/value in SkAnnotationreed@google.com2013-10-141-67/+0
| | | | | | | | | BUG= R=mtklein@google.com Review URL: https://codereview.chromium.org/27208002 git-svn-id: http://skia.googlecode.com/svn/trunk@11759 2bbb7eff-a529-9590-31e7-b0007b416f81
* Refactor: clean up some unused or mostly-unused API I saw here.commit-bot@chromium.org2013-06-181-1/+1
| | | | | | | | | | | BUG= R=bungeman@google.com, reed@google.com Author: mtklein@google.com Review URL: https://chromiumcodereview.appspot.com/17414003 git-svn-id: http://skia.googlecode.com/svn/trunk@9668 2bbb7eff-a529-9590-31e7-b0007b416f81
* Fix for caller of GetTmpDir.scroggo@google.com2013-06-071-4/+3
| | | | | | | | | | Since I changed GetTmpDir to create an SkString each time, it needs to be assigned to a variable in order for it to stick around. Update a test which I missed because my client was out of date. Review URL: https://codereview.chromium.org/15719006 git-svn-id: http://skia.googlecode.com/svn/trunk@9475 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Housekeeper-Nightlyskia.committer@gmail.com2013-06-041-3/+3
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@9423 2bbb7eff-a529-9590-31e7-b0007b416f81
* Add SkData::NewFromFD.bungeman@google.com2013-06-031-14/+38
| | | | | | | | | | | Chromium needs a SkStream backed by a file descriptor. Skia already has the code and can do the work, this change exposes the functionality in Skia in a clean way. https://codereview.chromium.org/15941025/ git-svn-id: http://skia.googlecode.com/svn/trunk@9408 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_Keeping (SkipBuildbotRuns)rmistry@google.com2013-04-221-1/+1
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8795 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove printfmike@reedtribe.org2013-04-211-1/+0
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8792 2bbb7eff-a529-9590-31e7-b0007b416f81
* pass 0 instead of NULL for size_t parametermike@reedtribe.org2013-04-211-2/+2
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8791 2bbb7eff-a529-9590-31e7-b0007b416f81
* specialize SkDataTable for arrays where all elements are the same size.mike@reedtribe.org2013-04-211-6/+84
| | | | | | | | | | optimize impl to not require another level of indirection (SkData) for storage. add unittests for flattening. optimize builder to not make a deepcopy of its chunkalloc heap. git-svn-id: http://skia.googlecode.com/svn/trunk@8790 2bbb7eff-a529-9590-31e7-b0007b416f81
* Sanitizing source files in Skia_Periodic_House_Keepingskia.committer@gmail.com2013-04-201-6/+6
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@8785 2bbb7eff-a529-9590-31e7-b0007b416f81
* add SkDataTable, to efficiently store an immutable array. Includes a builderreed@google.com2013-04-191-0/+75
| | | | | | | helper class. Review URL: https://codereview.chromium.org/14188049 git-svn-id: http://skia.googlecode.com/svn/trunk@8779 2bbb7eff-a529-9590-31e7-b0007b416f81
* eliminate all warnings in non-thirdparty code on machumper@google.com2013-01-071-2/+2
| | | | | | | | | | | | | | | | Most of these issues were due to functions whose definitions appear in header files; I changed those functions to be 'static inline' instead of just 'static' or 'inline', which kills the warning for such functions. Other functions that were static or anonymous-namespaced but were unused in cpp files were probably called at some point but are no longer; someone who knows more than I do should probably scrub all the functions I either deleted or #if 0'ed out and make sure that the right thing is happening here. Lots of unused variables removed, and one nasty const issue handled. There remains a single warning in thirdparty/externals/cityhash/src/city.cc on line 146 related to a signed/unsigned mismatch. I don't know if we have control over this library so I didn't fix this one, but perhaps someone could do something about that one. BUG= Review URL: https://codereview.appspot.com/7067044 git-svn-id: http://skia.googlecode.com/svn/trunk@7051 2bbb7eff-a529-9590-31e7-b0007b416f81
* Result of running tools/sanitize_source_files.py (which was added in ↵rmistry@google.com2012-08-231-7/+7
| | | | | | | | | https://codereview.appspot.com/6465078/) This CL is part II of IV (I broke down the 1280 files into 4 CLs). Review URL: https://codereview.appspot.com/6474054 git-svn-id: http://skia.googlecode.com/svn/trunk@5263 2bbb7eff-a529-9590-31e7-b0007b416f81
* remove debugging printfsreed@google.com2012-07-111-1/+1
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4551 2bbb7eff-a529-9590-31e7-b0007b416f81
* add SkDataSet class, so SkAnnotation can be more immutable-likereed@google.com2012-07-111-2/+82
| | | | | | Review URL: https://codereview.appspot.com/6354091 git-svn-id: http://skia.googlecode.com/svn/trunk@4542 2bbb7eff-a529-9590-31e7-b0007b416f81
* update test for new NewFromCString behaviorreed@google.com2012-07-021-2/+3
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4431 2bbb7eff-a529-9590-31e7-b0007b416f81
* add SkData::NewFromCString()reed@google.com2012-06-281-10/+20
| | | | git-svn-id: http://skia.googlecode.com/svn/trunk@4383 2bbb7eff-a529-9590-31e7-b0007b416f81
* fix warnings on Mac in testscaryclark@google.com2012-06-061-1/+1
| | | | | | | | | | | | | | | | | | Fix these class of warnings: - unused functions - unused locals - sign mismatch - missing function prototypes - missing newline at end of file - 64 to 32 bit truncation The changes prefer to link in dead code in the debug build with 'if (false)' than to comment it out, but trivial cases are commented out or sometimes deleted if it appears to be a copy/paste error. Review URL: https://codereview.appspot.com/6301045 git-svn-id: http://skia.googlecode.com/svn/trunk@4175 2bbb7eff-a529-9590-31e7-b0007b416f81
* Automatic update of all copyright notices to reflect new license terms.epoger@google.com2011-07-281-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I have manually examined all of these diffs and restored a few files that seem to require manual adjustment. The following files still need to be modified manually, in a separate CL: android_sample/SampleApp/AndroidManifest.xml android_sample/SampleApp/res/layout/layout.xml android_sample/SampleApp/res/menu/sample.xml android_sample/SampleApp/res/values/strings.xml android_sample/SampleApp/src/com/skia/sampleapp/SampleApp.java android_sample/SampleApp/src/com/skia/sampleapp/SampleView.java experimental/CiCarbonSampleMain.c experimental/CocoaDebugger/main.m experimental/FileReaderApp/main.m experimental/SimpleCocoaApp/main.m experimental/iOSSampleApp/Shared/SkAlertPrompt.h experimental/iOSSampleApp/Shared/SkAlertPrompt.m experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig gpu/src/android/GrGLDefaultInterface_android.cpp gyp/common.gypi gyp_skia include/ports/SkHarfBuzzFont.h include/views/SkOSWindow_wxwidgets.h make.bat make.py src/opts/memset.arm.S src/opts/memset16_neon.S src/opts/memset32_neon.S src/opts/opts_check_arm.cpp src/ports/SkDebug_brew.cpp src/ports/SkMemory_brew.cpp src/ports/SkOSFile_brew.cpp src/ports/SkXMLParser_empty.cpp src/utils/ios/SkImageDecoder_iOS.mm src/utils/ios/SkOSFile_iOS.mm src/utils/ios/SkStream_NSData.mm tests/FillPathTest.cpp Review URL: http://codereview.appspot.com/4816058 git-svn-id: http://skia.googlecode.com/svn/trunk@1982 2bbb7eff-a529-9590-31e7-b0007b416f81
* rename public SkDataRef to SkDatareed@google.com2011-06-241-9/+9
| | | | | | | | rename animator's internal SkData to SkDataInput git-svn-id: http://skia.googlecode.com/svn/trunk@1697 2bbb7eff-a529-9590-31e7-b0007b416f81
* addreed@google.com2011-06-141-0/+54
git-svn-id: http://skia.googlecode.com/svn/trunk@1589 2bbb7eff-a529-9590-31e7-b0007b416f81