From 5084bcae874ba7572e7cd49a0220a105271eddeb Mon Sep 17 00:00:00 2001 From: Ell Date: Sat, 19 Mar 2016 11:38:04 +0000 Subject: [PATCH] app: Add a test case for the "gimp:flood" operation --- app/operations/gimpoperationflood.c | 14 ++++++++++++++ app/operations/tests/data/flood-input.png | Bin 0 -> 14282 bytes app/operations/tests/data/flood-output.png | Bin 0 -> 11632 bytes 3 files changed, 14 insertions(+) create mode 100644 app/operations/tests/data/flood-input.png create mode 100644 app/operations/tests/data/flood-output.png diff --git a/app/operations/gimpoperationflood.c b/app/operations/gimpoperationflood.c index 699ce38bf4..19310cafa1 100644 --- a/app/operations/gimpoperationflood.c +++ b/app/operations/gimpoperationflood.c @@ -565,6 +565,18 @@ G_DEFINE_TYPE (GimpOperationFlood, gimp_operation_flood, #define parent_class gimp_operation_flood_parent_class +/* GEGL graph for the test case. */ +static const gchar* reference_xml = "" +"" +" " +"" +" " +" flood-input.png" +" " +"" +""; + + static void gimp_operation_flood_class_init (GimpOperationFloodClass *klass) { @@ -589,6 +601,8 @@ gimp_operation_flood_class_init (GimpOperationFloodClass *klass) "name", "gimp:flood", "categories", "gimp", "description", "GIMP Flood operation", + "reference-image", "flood-output.png", + "reference-composition", reference_xml, NULL); operation_class->prepare = gimp_operation_flood_prepare; diff --git a/app/operations/tests/data/flood-input.png b/app/operations/tests/data/flood-input.png new file mode 100644 index 0000000000000000000000000000000000000000..77dd3ae2ce1e2ee1cf5fc22a50b429063b592611 GIT binary patch literal 14282 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 a3eD)e+hW}H;cxhk9-6X(x_pJKNx=V$aS;Uo literal 0 HcmV?d00001 diff --git a/app/operations/tests/data/flood-output.png b/app/operations/tests/data/flood-output.png new file mode 100644 index 0000000000000000000000000000000000000000..e6e6c28358768916e4a74256540fbd9770164992 GIT binary patch literal 11632 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