regression: support passing stuff through gutenprint
This commit is contained in:
parent
641f08a901
commit
ec34dacfad
8
Makefile
8
Makefile
|
@ -92,6 +92,14 @@ test_%: dyesub_backend
|
||||||
cat regression.csv | grep $(subst test_,,$@) | ./regression.pl 2>&1 |grep FAIL ; \
|
cat regression.csv | grep $(subst test_,,$@) | ./regression.pl 2>&1 |grep FAIL ; \
|
||||||
if [ $$? -eq 0 ] ; then exit 1 ; fi
|
if [ $$? -eq 0 ] ; then exit 1 ; fi
|
||||||
|
|
||||||
|
testgp: dyesub_backend
|
||||||
|
./regression-gp.pl < regression-gp.csv 2>&1 |grep FAIL ; \
|
||||||
|
if [ $$? -eq 0 ] ; then exit 1 ; fi
|
||||||
|
|
||||||
|
testgp_%: dyesub_backend
|
||||||
|
./regression-gp.pl < regression-gp.csv $(subst testgp_,,$@) 2>&1 |grep FAIL ; \
|
||||||
|
if [ $$? -eq 0 ] ; then exit 1 ; fi
|
||||||
|
|
||||||
cppcheck:
|
cppcheck:
|
||||||
$(CPPCHECK) -q -v --std=c99 --enable=all --suppress=variableScope --suppress=selfAssignment --suppress=unusedStructMember -I. -I/usr/include -DCORRTABLE_PATH=\"$(BACKEND_DATA_DIR)\" --include=lib70x/libMitsuD70ImageReProcess.h $(CPPFLAGS) $(SOURCES)
|
$(CPPCHECK) -q -v --std=c99 --enable=all --suppress=variableScope --suppress=selfAssignment --suppress=unusedStructMember -I. -I/usr/include -DCORRTABLE_PATH=\"$(BACKEND_DATA_DIR)\" --include=lib70x/libMitsuD70ImageReProcess.h $(CPPFLAGS) $(SOURCES)
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,148 @@
|
||||||
|
#gp_printername,backend,vid,pid,type,gp_options
|
||||||
|
#
|
||||||
|
# The goal here is to cover unique models within gutenprint itself.
|
||||||
|
# All print sizes need to be covered.
|
||||||
|
#
|
||||||
|
canon-cp10,selphycp10,0x04a9,0x304a,,PageSize=w155h244
|
||||||
|
#
|
||||||
|
canon-cp100,selphycp100,0x04a9,0x3063,0x11,PageSize=Postcard
|
||||||
|
canon-cp100,selphycp100,0x04a9,0x3063,0x22,PageSize=w253h337
|
||||||
|
canon-cp100,selphycp100,0x04a9,0x3063,0x33,PageSize=w155h244
|
||||||
|
#
|
||||||
|
canon-cp220,selphycp220,0x04a9,0x30bd,0x11,PageSize=Postcard
|
||||||
|
canon-cp220,selphycp220,0x04a9,0x30bd,0x22,PageSize=w253h337
|
||||||
|
canon-cp220,selphycp220,0x04a9,0x30bd,0x33,PageSize=w155h244
|
||||||
|
canon-cp220,selphycp220,0x04a9,0x30bd,0x44,PageSize=w283h566
|
||||||
|
#
|
||||||
|
canon-cp790,selphycp790,0x04a9,0x31e7,0x00,PageSize=Postcard
|
||||||
|
canon-cp790,selphycp790,0x04a9,0x31e7,0x11,PageSize=w253h337
|
||||||
|
canon-cp790,selphycp790,0x04a9,0x31e7,0x22,PageSize=w155h244
|
||||||
|
#
|
||||||
|
canon-cp900,selphycp900,0x04a9,0x3255,0x11,PageSize=Postcard
|
||||||
|
canon-cp900,selphycp900,0x04a9,0x3255,0x22,PageSize=w253h337
|
||||||
|
canon-cp900,selphycp900,0x04a9,0x3255,0x33,PageSize=w155h244
|
||||||
|
#
|
||||||
|
canon-cp820,selphycp820,0x04a9,0x327b,0x1,PageSize=Postcard
|
||||||
|
canon-cp820,selphycp820,0x04a9,0x327b,0x2,PageSize=w253h337
|
||||||
|
canon-cp820,selphycp820,0x04a9,0x327b,0x3,PageSize=w155h244
|
||||||
|
#
|
||||||
|
canon-es1,selphyes1,0x04a9,0x3141,0x1,PageSize=Postcard
|
||||||
|
canon-es1,selphyes1,0x04a9,0x3141,0x2,PageSize=w253h337
|
||||||
|
canon-es1,selphyes1,0x04a9,0x3141,0x3,PageSize=w155h244
|
||||||
|
#
|
||||||
|
canon-es2,selphyes1,0x04a9,0x3185,0x1,PageSize=Postcard
|
||||||
|
canon-es2,selphyes1,0x04a9,0x3185,0x2,PageSize=w253h337
|
||||||
|
canon-es2,selphyes1,0x04a9,0x3185,0x3,PageSize=w155h244
|
||||||
|
#
|
||||||
|
canon-es3,selphyes3,0x04a9,0x31af,0x0,PageSize=Postcard
|
||||||
|
canon-es3,selphyes3,0x04a9,0x31af,0x0,PageSize=w253h337
|
||||||
|
canon-es3,selphyes3,0x04a9,0x31af,0x0,PageSize=w155h244
|
||||||
|
#
|
||||||
|
canon-es40,selphyes40,0x04a9,0x31ee,0x11,PageSize=Postcard
|
||||||
|
canon-es40,selphyes40,0x04a9,0x31ee,0x22,PageSize=w253h337
|
||||||
|
canon-es40,selphyes40,0x04a9,0x31ee,0x33,PageSize=w155h244
|
||||||
|
#
|
||||||
|
kodak-1400,kodak1400,0x040a,0a4022,,PageSize=w612h864;MediaType=Glossy
|
||||||
|
kodak-1400,kodak1400,0x040a,0a4022,,PageSize=Legal;MediaType=Glossy
|
||||||
|
kodak-1400,kodak1400,0x040a,0a4022,,PageSize=A4;MediaType=Glossy
|
||||||
|
kodak-1400,kodak1400,0x040a,0a4022,,PageSize=w612h864;MediaType=Matte
|
||||||
|
kodak-1400,kodak1400,0x040a,0a4022,,PageSize=Legal;MediaType=Matte
|
||||||
|
kodak-1400,kodak1400,0x040a,0a4022,,PageSize=A4;MediaType=Matte
|
||||||
|
#
|
||||||
|
kodak-805,kodak805,0x040a,0a4034,,PageSize=w612h864
|
||||||
|
kodak-805,kodak805,0x040a,0a4034,,PageSize=Legal
|
||||||
|
#
|
||||||
|
kodak-6800,kodak6800,0x040a,0x4021,0xb,PageSize=w288h432
|
||||||
|
kodak-6800,kodak6800,0x040a,0x4021,0xb,PageSize=w432h576
|
||||||
|
kodak-6850,kodak6850,0x040a,0x402b,0xb,PageSize=w288h432
|
||||||
|
kodak-6850,kodak6850,0x040a,0x402b,0xb,PageSize=w432h576
|
||||||
|
kodak-6850,kodak6850,0x040a,0x402b,0x3,PageSize=w360h504
|
||||||
|
#
|
||||||
|
kodak-605,kodak605,0x040a,0x402e,0xb,PageSize=w288h432
|
||||||
|
kodak-605,kodak605,0x040a,0x402e,0xb,PageSize=w432h576
|
||||||
|
kodak-605,kodak605,0x040a,0x402e,0x3,PageSize=w360h504
|
||||||
|
#
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=w288h576
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=w360h576
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=w432h576
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=w576h576
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=w576h576-div2
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=c8x10
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=c8x10-div2
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=c8x10-w576h432_w576h288
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,1,PageSize=w576h864
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,1,PageSize=w576h864-div2
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,1,PageSize=w576h864-div3
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=c8x10;StpLamination=Glossy
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=c8x10;StpLamination=GlossyFine
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=c8x10;StpLamination=Matte
|
||||||
|
shinko-chcs1245,shinkos1245,0x10ce,0x0007,0,PageSize=c8x10;StpLamination=MatteFine
|
||||||
|
#
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,0,PageSize=w144h432
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,0,PageSize=w288h432
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,1,PageSize=w288h432-div2
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,6,PageSize=w432h576
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,6,PageSize=w432h576-div2
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,5,PageSize=w432h648
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,1,PageSize=B7
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,3,PageSize=w360h504
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,3,PageSize=w360h504;StpLaminate=ExtraGlossy
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,3,PageSize=w360h504;StpLaminate=ExtraGlossyFine
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,3,PageSize=w360h504;StpLaminate=Glossy
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,3,PageSize=w360h504;StpLaminate=GlossyFine
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,3,PageSize=w360h504;StpLaminate=Matte
|
||||||
|
shinko-chcs2145,shinkos2145,0x10ce,0x000e,3,PageSize=w360h504;StpLaminate=MatteFine
|
||||||
|
#
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,1,PageSize=w144h432
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,1,PageSize=w288h432
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,4,PageSize=w288h432
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,1,PageSize=w288h432-div2
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,4,PageSize=w432h432
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,4,PageSize=w432h576
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,4,PageSize=w432h576-w432h432_w432h144
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,4,PageSize=w432h576-div2
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,5,PageSize=w432h648
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,3,PageSize=w360h360
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,3,PageSize=w360h504
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,3,PageSize=w360h504;StpLamination=None
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,3,PageSize=w360h504;StpLamination=Glossy
|
||||||
|
shinko-chcs6145,shinkos6145,0x10ce,0x0019,3,PageSize=w360h504;StpLamination=Matte
|
||||||
|
#
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=w288h576
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=w360h576
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=w432h576
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=w576h576
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=w576h576-div2
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=c8x10
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=c8x10-div2
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x12,PageSize=w576h864
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x12,PageSize=w576h864-div2
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x12,PageSize=w576h864-div3
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=c8x10;StpLamination=Glossy
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=c8x10;StpLamination=Matte
|
||||||
|
shinko-chcs6245,shinkos6245,0x10ce,0x001d,0x11,PageSize=c8x10;StpLamination=None
|
||||||
|
#
|
||||||
|
sony-updr150,sonyupdr150,0x054c,0x01e8,,PageSize=w288h432
|
||||||
|
sony-updr150,sonyupdr150,0x054c,0x01e8,,PageSize=w432h576
|
||||||
|
sony-updr150,sonyupdr150,0x054c,0x01e8,,PageSize=B7
|
||||||
|
sony-updr150,sonyupdr150,0x054c,0x01e8,,PageSize=w360h504
|
||||||
|
sony-upcr10l,sonyupcr10,0x054c,0x0226,,PageSize=w288h432
|
||||||
|
sony-upcr10l,sonyupcr10,0x054c,0x0226,,PageSize=B7
|
||||||
|
sony-upcr10l,sonyupcr10,0x054c,0x0226,,PageSize=w260h504
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=w288h432
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=w288h432-div2
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=w432h576
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=w432h576-div2
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=B7
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=w360h504
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=w360h504-div2
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=B7,StpLaminate=Glossy
|
||||||
|
sony-updr200,sonyupdr200,0x054c,0x035f,,PageSize=B7,StpLaminate=Matte
|
||||||
|
#
|
||||||
|
# mitsup95, miusu70x, dnpds40, miusu9xxx, magicard
|
||||||
|
#
|
||||||
|
mitsubishi-p93d,miusup93d,0x06d3,0x0398,,PageSize=w213h284
|
||||||
|
mitsubishi-p93d,miusup93d,0x06d3,0x0398,,PageSize=w227h284
|
||||||
|
mitsubishi-p93d,miusup93d,0x06d3,0x0398,,PageSize=w284h284
|
||||||
|
mitsubishi-p93d,miusup93d,0x06d3,0x0398,,PageSize=w284h426
|
||||||
|
mitsubishi-p93d,miusup93d,0x06d3,0x0398,,PageSize=w284h1277
|
|
|
@ -0,0 +1,76 @@
|
||||||
|
#!/usr/bin/perl
|
||||||
|
use strict;
|
||||||
|
use IPC::Run qw( run );
|
||||||
|
|
||||||
|
my $retval = 0;
|
||||||
|
|
||||||
|
my $id = 123;
|
||||||
|
my $user = "tester";
|
||||||
|
my $title = "image_test";
|
||||||
|
my $copies = 1;
|
||||||
|
my $input_image = "testjobs/s3s-59.png";
|
||||||
|
|
||||||
|
$ENV{"STP_SUPPRESS_VERBOSE_MESSAGES"} = 1;
|
||||||
|
$ENV{"OMP_NUM_THREADS"} = 1;
|
||||||
|
$ENV{"TEST_MODE"} = "2";
|
||||||
|
|
||||||
|
while (<STDIN>) {
|
||||||
|
chomp;
|
||||||
|
next if /^#/;
|
||||||
|
s/(.+)#.*/$1/;
|
||||||
|
|
||||||
|
if (defined($ARGV[0])) {
|
||||||
|
next if (index($_,$ARGV[0]) == -1);
|
||||||
|
};
|
||||||
|
|
||||||
|
my @row = split(/,/);
|
||||||
|
|
||||||
|
my $gp_name = $row[0];
|
||||||
|
$ENV{"BACKEND"} = $row[1];
|
||||||
|
$ENV{"EXTRA_VID"} = $row[2];
|
||||||
|
$ENV{"EXTRA_PID"} = $row[3];
|
||||||
|
|
||||||
|
if (length($row[4])) {
|
||||||
|
$ENV{"MEDIA_CODE"} = $row[4];
|
||||||
|
} else {
|
||||||
|
undef($ENV{"MEDIA_CODE"});
|
||||||
|
}
|
||||||
|
|
||||||
|
my $options = "";
|
||||||
|
|
||||||
|
my @gp_options = split(/;/,$row[5]);
|
||||||
|
# generate options list
|
||||||
|
foreach my $x (@gp_options) {
|
||||||
|
$options .= "$x ";
|
||||||
|
}
|
||||||
|
|
||||||
|
print "***** $row[0] $row[1] $row[2] $row[3] $row[4] '$row[5]'\n";
|
||||||
|
|
||||||
|
my @args;
|
||||||
|
|
||||||
|
# Generate PPD
|
||||||
|
my $ppd_fname = "/tmp/stp-$gp_name.5.3.ppd";
|
||||||
|
|
||||||
|
$ENV{"PPD"} = $ppd_fname;
|
||||||
|
$ENV{"DEVICE_URI"} = "gutenprint53+usb://$row[1]/12345678";
|
||||||
|
|
||||||
|
run ["/usr/sbin/cups-genppd.5.3", "-p", "/tmp", "-Z", $gp_name] or die("FAIL genppd $?: $row[0] $row[1] $row[2] $row[3] $row[4] $row[5]\n");
|
||||||
|
|
||||||
|
# Generate raster from $image
|
||||||
|
@args = ("/usr/lib/cups/filter/imagetoraster", $id, $user, $title, $copies, $options, $input_image);
|
||||||
|
print join(":", @args) . "\n";
|
||||||
|
run \@args, ">", "/tmp/${gp_name}.raster" or die ("FAIL: imagetoraster $?: $row[0] $row[1] $row[2] $row[3] $row[4] $row[5]\n");
|
||||||
|
|
||||||
|
# Call raster2gutenprint
|
||||||
|
@args = ("valgrind", "/usr/lib/cups/filter/rastertogutenprint.5.3", $id, $user, $title, $copies, $options);
|
||||||
|
print join(":", @args) . "\n";
|
||||||
|
run \@args, "<", "/tmp/${gp_name}.raster", ">", "/tmp/${gp_name}.raw" or die("FAIL: rastertogutenorint $?: $row[0] $row[1] $row[2] $row[3] $row[4] $row[5]\n");
|
||||||
|
|
||||||
|
# Call backend using CUPS methodologies, using STDIN.
|
||||||
|
@args = ("./dyesub_backend", $id, $user, $title, $copies, $options);
|
||||||
|
print join(":", @args) . "\n";
|
||||||
|
run \@args, "<", "/tmp/${gp_name}.raw" or die("FAIL: backend $?: $row[0] $row[1] $row[2] $row[3] $row[4] $row[5]\n");
|
||||||
|
|
||||||
|
print "***** PASS\n";
|
||||||
|
}
|
||||||
|
exit($retval);
|
|
@ -62,7 +62,7 @@ kodak805,0x040a,0x4034,kodak_805_letter_glossy.raw,
|
||||||
#
|
#
|
||||||
# 'kodak68x0'
|
# 'kodak68x0'
|
||||||
#
|
#
|
||||||
kodak6800,0x040a,0x402b,kodak_68x0_4x6.raw,0xb
|
kodak6800,0x040a,0x4021,kodak_68x0_4x6.raw,0xb
|
||||||
kodak6850,0x040a,0x402b,kodak_68x0_4x6.raw,0xb
|
kodak6850,0x040a,0x402b,kodak_68x0_4x6.raw,0xb
|
||||||
#
|
#
|
||||||
# 'kodak605'
|
# 'kodak605'
|
||||||
|
@ -76,8 +76,8 @@ shinkos1245,0x10ce,0x0007,shinko_s1245_8x10.raw,0x0
|
||||||
#
|
#
|
||||||
# 'shinkos2145'
|
# 'shinkos2145'
|
||||||
#
|
#
|
||||||
shinkos2145,0x10ce,0x000e,shinko_s2145_4x6.raw,0x1
|
shinkos2145,0x10ce,0x000e,shinko_s2145_4x6.raw,0x0
|
||||||
shinkos2145,0x10ce,0x000e,shinko_s2145_4x6.raw,0x5
|
shinkos2145,0x10ce,0x000e,shinko_s2145_4x6.raw,0x6
|
||||||
#
|
#
|
||||||
# 'shinkos6145'
|
# 'shinkos6145'
|
||||||
#
|
#
|
||||||
|
@ -96,8 +96,8 @@ hitip910,0x0d16,0x000e,shinko_s6245_8x10.raw,0x11
|
||||||
#sonyupcr10,0x054c,PID,file_fixme, ### NO USB PID
|
#sonyupcr10,0x054c,PID,file_fixme, ### NO USB PID
|
||||||
sonyupdr150,0x054c,0x01e8,sony_updr150_4x6.raw,
|
sonyupdr150,0x054c,0x01e8,sony_updr150_4x6.raw,
|
||||||
sonyupdr150,0x054c,0x01e8,sony_updr150_8x6.raw,
|
sonyupdr150,0x054c,0x01e8,sony_updr150_8x6.raw,
|
||||||
sonyupdr200,0x054c,0x01e8,sony_updr200_2x6.raw,
|
sonyupdr200,0x054c,0x035f,sony_updr200_2x6.raw,
|
||||||
sonyupdr200,0x054c,0x01e8,sony_updr200_4x6.raw,
|
sonyupdr200,0x054c,0x035f,sony_updr200_4x6.raw,
|
||||||
#sonyupd895,0x054c,PID,file_fixme, ### NO USB PID
|
#sonyupd895,0x054c,PID,file_fixme, ### NO USB PID
|
||||||
#sonyupd897,0x054c,PID,file_fixme, ### NO USB PID
|
#sonyupd897,0x054c,PID,file_fixme, ### NO USB PID
|
||||||
#
|
#
|
||||||
|
|
|
Loading…
Reference in New Issue