Sha256: de8058abe0e86e6c9259c14dfb68cbebf07dbe1224fdf4671aca8821cd9f45a1

Contents?: true

Size: 1.45 KB

Versions: 5

Compression:

Stored size: 1.45 KB

Contents

#!/bin/sh
# Complete check of a stateless encoding.
# Usage: check-stateless SRCDIR CHARSET
srcdir="$1"
charset="$2"
set -e

# charset, modified for use in filenames.
charsetf=`echo "$charset" | sed -e 's,:,-,g'`

# iconv in one direction.
./table-from "$charset" > tmp-"$charsetf".TXT

# iconv in the other direction.
./table-to "$charset" | sort > tmp-"$charsetf".INVERSE.TXT

# Check 1: charmap and iconv forward should be identical.
cmp "${srcdir}"/"$charsetf".TXT tmp-"$charsetf".TXT 2> /dev/null

# Check 2: the difference between the charmap and iconv backward.
sed -e '/	.* 0x/d' < "${srcdir}"/"$charsetf".TXT > tmp-noprecomposed-"$charsetf".TXT
if test -f "${srcdir}"/"$charsetf".IRREVERSIBLE.TXT; then
  cat tmp-noprecomposed-"$charsetf".TXT "${srcdir}"/"$charsetf".IRREVERSIBLE.TXT | sort | uniq -u > tmp-orig-"$charsetf".INVERSE.TXT
else
  cp tmp-noprecomposed-"$charsetf".TXT tmp-orig-"$charsetf".INVERSE.TXT
fi
cmp tmp-orig-"$charsetf".INVERSE.TXT tmp-"$charsetf".INVERSE.TXT 2> /dev/null

rm -f tmp-"$charsetf".TXT tmp-"$charsetf".INVERSE.TXT tmp-noprecomposed-"$charsetf".TXT tmp-orig-"$charsetf".INVERSE.TXT
exit 0
# For a new encoding:
# You can create the "$charsetf".TXT like this:
#   ./table-from "$charset" > "$charsetf".TXT
# You can create the "$charsetf".IRREVERSIBLE.TXT like this:
#   ./table-to "$charset" | sort > "$charsetf".INVERSE.TXT
#   diff "$charsetf".TXT "$charsetf".INVERSE.TXT | grep '^[<>]' | sed -e 's,^. ,,' > "$charsetf".IRREVERSIBLE.TXT

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
controller_scaffolding-1.0.3 test/dummy/libiconv-1.13.1/tests/check-stateless
controller_scaffolding-1.0.2 test/dummy/libiconv-1.13.1/tests/check-stateless
controller_scaffolding-1.0.1 test/dummy/libiconv-1.13.1/tests/check-stateless
controller_scaffolding-1.0.0 test/dummy/libiconv-1.13.1/tests/check-stateless
controller_scaffolding-0.1.5 test/dummy/libiconv-1.13.1/tests/check-stateless