Enable Codec_GifInterlacedTruncated test for Wuffs

A recent update to the Wuffs version that Skia uses means that the test
now passes.

While the old third_party/gif implementation and the Wuffs
implementation now both replicate interlaced rows (what the old
implementation calls a "Haeberli hack"), and the
Codec_GifInterlacedTruncated test passes either way, the exact
replication algorithm is different. In general, pixel-by-pixel output
may be different for the same (truncated) input.

For example, the old implementation only processed input on block
boundaries. If the truncation happened within a block, the old
implementation produces no output for that partial block but the Wuffs
implementation does.

Also, the old implementation used the interlaced row as the *center* of
the extrapolation (the 'broad brush'); Wuffs uses it as the *top* of the
extrapolation. There are subjective arguments (e.g. 'Venetian blinds',
'fat bottom rows') for either behavior. In any case, it isn't covered by
the GIF spec.

Bug: skia:8235
Bug: skia:8766
Change-Id: Ia8d8b1007006697498e47ec6bba7be7d81be10c4
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/243596
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Leon Scroggins <scroggo@google.com>
diff --git a/tests/GifTest.cpp b/tests/GifTest.cpp
index ab4b005..c371c24 100644
--- a/tests/GifTest.cpp
+++ b/tests/GifTest.cpp
@@ -238,7 +238,6 @@
     // "libgif warning [interlace DGifGetLine]"
 }
 
-#ifndef SK_HAS_WUFFS_LIBRARY
 DEF_TEST(Codec_GifInterlacedTruncated, r) {
     // Check that gInterlacedGIF is exactly 102 bytes long, and that the final
     // 30 bytes, in the half-open range [72, 102), consists of 0x1b (indicating
@@ -254,11 +253,12 @@
 
     // We want to test the GIF codec's output on some (but not all) of the
     // LZW-compressed data. As is, there is only one block of LZW-compressed
-    // data, 27 bytes long. Some GIF implementations output intermediate rows
-    // only on block boundaries, so truncating to a prefix of gInterlacedGIF
-    // isn't enough. We also have to modify the block size down from 0x1b so
-    // that the edited version still contains a complete block. In this case,
-    // it's a block of 10 bytes.
+    // data, 27 bytes long. Wuffs can output partial results from a partial
+    // block, but some other GIF implementations output intermediate rows only
+    // on block boundaries, so truncating to a prefix of gInterlacedGIF isn't
+    // enough. We also have to modify the block size down from 0x1b so that the
+    // edited version still contains a complete block. In this case, it's a
+    // block of 10 bytes.
     unsigned char data[83];
     memcpy(data, gInterlacedGIF, sizeof(data));
     data[72] = sizeof(data) - 73;
@@ -283,7 +283,6 @@
     // transparent black (zero).
     REPORTER_ASSERT(r, bm.getColor(0, 7) != 0);
 }
-#endif
 
 // Regression test for decoding a gif image with sampleSize of 4, which was
 // previously crashing.