blob: 9afee8f1d51c7bbba4b9f710e140b5f30aec3374 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
#! /bin/bash
# This script tests: pamtopdbimg
# Also requires: pgmmake pgmnoise
tmpdir=${tmpdir:-/tmp}
mono_pgm=${tmpdir}/graymono.pgm
noise_pgm=${tmpdir}/graynoise.pgm
text65533=${tmpdir}/ascii65533.txt
text65534=${tmpdir}/ascii65534.txt
text65597=${tmpdir}/ascii65597.txt
# The PDB image format has a time stamp. This causes pamtopdbimg
# to produce slightly different output files with each invocation.
# Test 1. High compression
# -maybecompressed should produce a compressed file
# Should print:
# 2
# 1
echo high compression
pgmmake 0.5 -maxval=15 160 160 > ${mono_pgm}
for flag in "-compressed" "-maybecompressed" "-uncompressed"
do
pamtopdbimg $flag ${mono_pgm} | wc -c | tr -d ' '
done | uniq -c | awk '{print $1}'
rm ${mono_pgm}
# Test 2. Poor compression
# -maybecompressed should produce a uncompressed file
# Should print:
# 1
# 2
echo poor compression
pgmnoise -maxval=15 -randomseed=0 160 160 > ${noise_pgm}
for flag in "-compressed" "-maybecompressed" "-uncompressed"
do
pamtopdbimg $flag ${noise_pgm} | wc -c
done | uniq -c | awk '{print $1}'
rm ${noise_pgm}
# Test 3. long titles
# Should succeed twice and fail once, producing:
# 268
# 0
# 268
# 0
# 1
# 0
# Some versions of wc have extra whitespace in the output (e.g. MAC OS)
# Delete with tr -d
echo long titles
for flag in "" "-title=0123456789012345678901234567890" \
"-title=01234567890123456789012345678901"
do
pamtopdbimg $flag testgrid.pbm | wc -c | tr -d ' '
echo ${PIPESTATUS[0]}
done
# Test 4. large notefile
# Should succeed twice and fail once, producing:
# 3344
# 0
# 68886
# 0
# 1
# 0
echo large notefile
awk 'BEGIN { ABC="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
abc="abcdefghijklmnopqrstuvwxyz";
digits="0123456789"; string ="";
while ( length(string) < 65597 )
string = string ABC abc digits;
print string }' > ${text65597}
head -c 65533 ${text65597} > ${text65533}
head -c 65534 ${text65597} > ${text65534}
pamtopdbimg -uncompressed testgrid.pbm | \
wc -c | tr -d ' '
echo ${PIPESTATUS[0]}
pamtopdbimg -uncompressed -notefile=${text65533} testgrid.pbm | \
wc -c | tr -d ' '
echo ${PIPESTATUS[0]}
pamtopdbimg -uncompressed -notefile=${text65534} testgrid.pbm | \
wc -c | tr -d ' '
echo ${PIPESTATUS[0]}
rm ${text65533} ${text65534} ${text65597}
|