aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorAmbrose Li <ambrose.li@gmail.com>2020-08-24 02:20:43 +0000
committerAmbrose Li <ambrose.li@gmail.com>2020-08-24 02:20:43 +0000
commit9f18e67a9bb5ff0387f76e5a2870b49558f868ad (patch)
treefeb45c9c4e518c0ab784b82b25b6ea85158e0455 /tests
parentUpdate ChangeLog (diff)
downloadw3m-9f18e67a9bb5ff0387f76e5a2870b49558f868ad.tar.gz
w3m-9f18e67a9bb5ff0387f76e5a2870b49558f868ad.zip
Cleaned version of 20200823_q branch. Changes the behaviour of the q tag (when m17n and Unicode are configured) to use "smart" quotes if the display charset can handle them. Falls back to old behaviour (ASCII quotes with left/right quote semantics for 6/0 and 2/6) if display charset is us-ascii.
Also changes the behaviour of conv_entity() to convert left/right quotes and some dashes because named entities are needed for the new code for the q tag.
Diffstat (limited to '')
-rw-r--r--tests/name_entity_1.expected2
-rw-r--r--tests/name_entity_1.html2
-rw-r--r--tests/name_entity_1.opts2
-rw-r--r--tests/name_entity_2.expected1
-rw-r--r--tests/name_entity_2.html1
-rw-r--r--tests/q1.expected1
-rw-r--r--tests/q1.html2
-rw-r--r--tests/q1.opts2
-rw-r--r--tests/q2.expected1
-rw-r--r--tests/q2.html3
-rw-r--r--tests/q3.expected1
-rw-r--r--tests/q3.html3
-rw-r--r--tests/q3.opts4
-rw-r--r--tests/q4.expected1
-rw-r--r--tests/q4.html3
-rw-r--r--tests/q4.opts2
-rw-r--r--tests/q5.expected1
-rw-r--r--tests/q5.html3
-rw-r--r--tests/q6.expected1
-rw-r--r--tests/q6.html3
-rw-r--r--tests/q6.opts1
-rw-r--r--tests/run_tests31
22 files changed, 71 insertions, 0 deletions
diff --git a/tests/name_entity_1.expected b/tests/name_entity_1.expected
new file mode 100644
index 0000000..2a6fd2c
--- /dev/null
+++ b/tests/name_entity_1.expected
@@ -0,0 +1,2 @@
+This is an example sentence that contains some "quoted words" --
+punctuation that would be displayed as question marks but should not.
diff --git a/tests/name_entity_1.html b/tests/name_entity_1.html
new file mode 100644
index 0000000..f2e3633
--- /dev/null
+++ b/tests/name_entity_1.html
@@ -0,0 +1,2 @@
+This is an example sentence that contains some &ldquo;quoted words&rdquo; &mdash;
+<br>punctuation that would be displayed as question marks but should not.
diff --git a/tests/name_entity_1.opts b/tests/name_entity_1.opts
new file mode 100644
index 0000000..f9ac4b0
--- /dev/null
+++ b/tests/name_entity_1.opts
@@ -0,0 +1,2 @@
+-O
+us-ascii
diff --git a/tests/name_entity_2.expected b/tests/name_entity_2.expected
new file mode 100644
index 0000000..b287794
--- /dev/null
+++ b/tests/name_entity_2.expected
@@ -0,0 +1 @@
+2πr
diff --git a/tests/name_entity_2.html b/tests/name_entity_2.html
new file mode 100644
index 0000000..9be30f0
--- /dev/null
+++ b/tests/name_entity_2.html
@@ -0,0 +1 @@
+2&pi;r
diff --git a/tests/q1.expected b/tests/q1.expected
new file mode 100644
index 0000000..84b67a1
--- /dev/null
+++ b/tests/q1.expected
@@ -0,0 +1 @@
+`test'
diff --git a/tests/q1.html b/tests/q1.html
new file mode 100644
index 0000000..292b019
--- /dev/null
+++ b/tests/q1.html
@@ -0,0 +1,2 @@
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+<q>test</q>
diff --git a/tests/q1.opts b/tests/q1.opts
new file mode 100644
index 0000000..f9ac4b0
--- /dev/null
+++ b/tests/q1.opts
@@ -0,0 +1,2 @@
+-O
+us-ascii
diff --git a/tests/q2.expected b/tests/q2.expected
new file mode 100644
index 0000000..bd72179
--- /dev/null
+++ b/tests/q2.expected
@@ -0,0 +1 @@
+“test”
diff --git a/tests/q2.html b/tests/q2.html
new file mode 100644
index 0000000..8f1e80b
--- /dev/null
+++ b/tests/q2.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=utf-8>
+<q>test</q>
diff --git a/tests/q3.expected b/tests/q3.expected
new file mode 100644
index 0000000..c5e67df
--- /dev/null
+++ b/tests/q3.expected
@@ -0,0 +1 @@
+test
diff --git a/tests/q3.html b/tests/q3.html
new file mode 100644
index 0000000..672a868
--- /dev/null
+++ b/tests/q3.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=Big5>
+<q>test</q>
diff --git a/tests/q3.opts b/tests/q3.opts
new file mode 100644
index 0000000..32d2b1a
--- /dev/null
+++ b/tests/q3.opts
@@ -0,0 +1,4 @@
+-I
+windows-1252
+-O
+windows-1252
diff --git a/tests/q4.expected b/tests/q4.expected
new file mode 100644
index 0000000..c5e67df
--- /dev/null
+++ b/tests/q4.expected
@@ -0,0 +1 @@
+test
diff --git a/tests/q4.html b/tests/q4.html
new file mode 100644
index 0000000..672a868
--- /dev/null
+++ b/tests/q4.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=Big5>
+<q>test</q>
diff --git a/tests/q4.opts b/tests/q4.opts
new file mode 100644
index 0000000..074570d
--- /dev/null
+++ b/tests/q4.opts
@@ -0,0 +1,2 @@
+-O
+windows-1252
diff --git a/tests/q5.expected b/tests/q5.expected
new file mode 100644
index 0000000..4f4614d
--- /dev/null
+++ b/tests/q5.expected
@@ -0,0 +1 @@
+“example of a ‘nested’ quote”
diff --git a/tests/q5.html b/tests/q5.html
new file mode 100644
index 0000000..f4fe761
--- /dev/null
+++ b/tests/q5.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=utf-8>
+<q>example of a <q>nested</q> quote</q>
diff --git a/tests/q6.expected b/tests/q6.expected
new file mode 100644
index 0000000..fc98f57
--- /dev/null
+++ b/tests/q6.expected
@@ -0,0 +1 @@
+"example of a 'nested' quote"
diff --git a/tests/q6.html b/tests/q6.html
new file mode 100644
index 0000000..e5f1de5
--- /dev/null
+++ b/tests/q6.html
@@ -0,0 +1,3 @@
+<!doctype html>
+<meta charset=big5>
+<q>example of a <q>nested</q> quote</q>
diff --git a/tests/q6.opts b/tests/q6.opts
new file mode 100644
index 0000000..1b59fbf
--- /dev/null
+++ b/tests/q6.opts
@@ -0,0 +1 @@
+-O Big5
diff --git a/tests/run_tests b/tests/run_tests
new file mode 100644
index 0000000..0ec3080
--- /dev/null
+++ b/tests/run_tests
@@ -0,0 +1,31 @@
+total=0
+pass=0
+fail=0
+w3m="../w3m
+-config
+/dev/null
+-o
+ignore_null_img_alt=false"
+for i in *.html; do
+ cmd="$w3m
+-I
+utf-8
+-O
+utf-8
+-T
+text/html"
+ opts="`basename "$i" .html`.opts"
+ test -f "$opts" && cmd="$cmd
+`grep -v '^#' $opts`"
+ if (set -x;IFS='
+';$cmd) < "$i" | diff -u - "`basename "$i" .html`.expected"; then
+ pass="`expr 1 + "$pass"`"
+ else
+ fail="`expr 1 + "$fail"`"
+ fi
+ total="`expr 1 + "$total"`"
+done
+echo "TOTAL: $total test(s)"
+echo "PASS : $pass"
+echo "FAIL : $fail"
+test 0 -eq "$fail"