diff --git a/HACKING.md b/HACKING.md index b2c18c2dbf5..94977af6a46 100644 --- a/HACKING.md +++ b/HACKING.md @@ -41,3 +41,27 @@ describe('My pretty test of my subject', function() { }); }); ``` + +Adding pixel tests +------------------ + +Sky does not have proper pixel tests. Instead we have only reftests. +If you want a pixel test, you need to dump the png from a reftest, +upload it to googlestorage and then put and pointing to the +uploaded file in the reference. + +1. Create your test (e.g. foo.sky). +2. Create an dummy reference file (foo-expected.sky). +3. Run the test (it will fail). +4. Copy the -actual.png file to googlestorage (see below). +5. Put an pointing to your newly uploaded png in the reference file. + +Copying the file to googlestorage: +$ sha1sum ../out/Debug/layout-test-results/framework/flights-app-pixels-actual.png +db0508cdfe69e996a93464050dc383f6480f1283 ../out/Debug/layout-test-results/framework/flights-app-pixels-actual.png +$ gsutil.py cp ../out/Debug/layout-test-results/framework/flights-app-pixels-actual.png gs://mojo/sky-pngs/db0508cdfe69e996a93464050dc383f6480f1283 + +Long-term, we should not have these tests at all and should just +dump paint commands. In the short-term, if we find we're doing this +a lot we should obviously automate this process, e.g. test_sky could +do all of this work, including spitting out the correct reference file. diff --git a/compositor/display_delegate_bitmap.cc b/compositor/display_delegate_bitmap.cc index 571eda1f536..c8ba5537846 100644 --- a/compositor/display_delegate_bitmap.cc +++ b/compositor/display_delegate_bitmap.cc @@ -22,7 +22,7 @@ DisplayDelegate* DisplayDelegateBitmap::create(LayerClient* client) { } void DisplayDelegateBitmap::GetPixelsForTesting(std::vector* pixels) { - gfx::PNGCodec::EncodeBGRASkBitmap(bitmap_, false, pixels); + gfx::PNGCodec::EncodeBGRASkBitmap(bitmap_, true, pixels); } void DisplayDelegateBitmap::Paint(mojo::GaneshSurface& surface, const gfx::Rect& size) { diff --git a/tests/framework/flights-app-pixels-expected.sky b/tests/framework/flights-app-pixels-expected.sky new file mode 100644 index 00000000000..dc092716016 --- /dev/null +++ b/tests/framework/flights-app-pixels-expected.sky @@ -0,0 +1,13 @@ + + + + + + + diff --git a/tests/framework/flights-app-pixels.sky b/tests/framework/flights-app-pixels.sky new file mode 100644 index 00000000000..ff06a09ebe7 --- /dev/null +++ b/tests/framework/flights-app-pixels.sky @@ -0,0 +1,13 @@ + + + + +