diff --git a/src/modules/Image/testsuite.in.in b/src/modules/Image/testsuite.in.in index 25a665b6e7f3c2f9d9b83b05e22f35b81c6a5131..e50495de6aa3a559d7ef5509c9cf3b63e0484779 100644 --- a/src/modules/Image/testsuite.in.in +++ b/src/modules/Image/testsuite.in.in @@ -323,18 +323,18 @@ #test colortable - standard object img=Image.image(200,200)->test(); img->tuned_box(50,50,150,150,({({0,0,0}),({255,0,0}),({0,255,0}),({0,0,255})})); - object c=Image.colortable(img,256); + object c=Image.colortable(img,1000)->cubicles(16,16,16,4); if (sizeof(c)<200) fail("too few colors"); object img1=(c*img); - if (!(img-img1<100)) fail("differ too much ("+(img-img1)->max()[0]+","+(img-img1)->max()[1]+","+(img-img1)->max()[2]+","+")"); + if (!(img-img1<50)) fail("differ too much ("+(img-img1)->max()[0]+","+(img-img1)->max()[1]+","+(img-img1)->max()[2]+","+")"); ok(); #test colortable - floyd-steinberg object img=Image.image(200,200)->test(); img->tuned_box(50,50,150,150,({({0,0,0}),({255,0,0}),({0,255,0}),({0,0,255})})); - object c=Image.colortable(img,256)->floyd_steinberg(); + object c=Image.colortable(32,32,32)->floyd_steinberg(); object img1=(c*img); - if (!(img-img1<100)) fail("differ too much ("+(img-img1)->max()[0]+","+(img-img1)->max()[1]+","+(img-img1)->max()[2]+","+")"); + if (!(img-img1<50)) fail("differ too much ("+(img-img1)->max()[0]+","+(img-img1)->max()[1]+","+(img-img1)->max()[2]+","+")"); ok(); #test colortable - ordered @@ -357,13 +357,24 @@ #test Image.GIF.encode/decode object img=Image.image(100,100)->test(); + object c=Image.colortable(img,250)->cubicles(10,10,10,1)->floyd_steinberg(); + img=c*img; object img1=Image.GIF.decode(Image.GIF.encode(img)); - if (!(img-img1<50)) fail("differ too much ("+(img-img1)->max()[0]+","+(img-img1)->max()[1]+","+(img-img1)->max()[2]+","+")"); + if (img!=img1) fail("differ ("+(img-img1)->max()[0]+","+(img-img1)->max()[1]+","+(img-img1)->max()[2]+","+")"); + ok(); + +#test Image.GIF.encode/decode colortable + object img=Image.image(100,100)->test(); + object c=Image.colortable(img,256)->cubicles(16,16,16,1); + img=c*img; + object img1=Image.GIF.decode(Image.GIF.encode(img,c)); + if (img!=img1) fail("differ ("+(img-img1)->max()[0]+","+(img-img1)->max()[1]+","+(img-img1)->max()[2]+","+")"); ok(); #test Image.GIF.encode/decode colortable w/ floyd-steinberg object img=Image.image(100,100)->test(); - object c=Image.colortable(img,256)->floyd_steinberg(); + object c=Image.colortable(img,256)->floyd_steinberg()->cubicles(16,16,16); + img=c*img; object img1=Image.GIF.decode(Image.GIF.encode(img,c)); if (!(img-img1<50)) fail("differ too much ("+(img-img1)->max()[0]+","+(img-img1)->max()[1]+","+(img-img1)->max()[2]+","+")"); ok();