From 2187c618910eb97932e9260ef444272917e0df8d Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Sat, 9 Jan 2021 20:01:12 -0800 Subject: [PATCH] pivot-table: Test round-tripping to an .spv file. Displaying a pivot table directly should produce the same results as writing it to an .spv file and then re-reading the .spv file. This wasn't consistently the case before the last few patches. This set of test updates guards against regression. --- tests/output/pivot-table.at | 49 ++++++++++++++++++++++++++++--------- 1 file changed, 37 insertions(+), 12 deletions(-) diff --git a/tests/output/pivot-table.at b/tests/output/pivot-table.at index 543dac1eb0..e7daa5563f 100644 --- a/tests/output/pivot-table.at +++ b/tests/output/pivot-table.at @@ -7,7 +7,7 @@ AT_DATA([pivot.txt], [[ /title "Columns" /display /title "Rows" /transpose. ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl Columns ╭────────╮ │ a │ @@ -26,6 +26,8 @@ Rows │a3│2│ ╰──┴─╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([2-d pivot table]) @@ -38,7 +40,7 @@ AT_DATA([pivot.txt], [[ /title "Column x Row" /move "a" column /display /title "Row x Column" /transpose ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl Columns ╭────────┬────────┬────────╮ │ b1 │ b2 │ b3 │ @@ -81,6 +83,8 @@ Row x Column │a3│ 2│ 5│ 8│ ╰──┴──┴──┴──╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([2-d pivot table - dimension labels]) @@ -96,7 +100,7 @@ AT_DATA([pivot.txt], [[ /title "Row x Column - Corner" /transpose /look rowlabels=corner /display /title "Row x Column - Nested" /look rowlabels=nested ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl Columns ╭──────────────────────────╮ │ b │ @@ -186,6 +190,8 @@ Row x Column - Nested │ a3│ 2│ 5│ 8│ ╰────┴──┴──┴──╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([2-d pivot table - groups]) @@ -202,7 +208,7 @@ AT_DATA([pivot.txt], [[ /title "Row x Column - delete b1" /cells[all,0]=delete /look empty=hide /display /title "Row x Column - delete b1 - show empty" /look empty=show. ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl Columns ╭─────────────────┬────────╮ │ bg1 │ │ @@ -304,6 +310,8 @@ Row x Column - delete b1 - show empty │ a3│ │ │ 8│ ╰──────┴──┴──┴──╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([2-d pivot table - layers]) @@ -318,7 +326,7 @@ AT_DATA([pivot.txt], [[ /title "Column (All Layers)" /look layers=all /display /title "Row (All Layers)" /transpose /look layers=all ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl Column x b1 b1 ╭──┬──┬──╮ @@ -399,6 +407,8 @@ b3 │ 6│ 7│ 8│ ╰──┴──┴──╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([3-d pivot table - layers]) @@ -440,6 +450,7 @@ a2 ╰──┴──┴──┴──┴──╯ ]) AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([pivot table title and caption]) @@ -452,7 +463,7 @@ AT_DATA([pivot.txt], [[ /title "(Not Shown)" /caption "Caption Only" /show title=no caption=yes /display /title "(Not Shown)" /caption "(Not Shown)" /show title=no caption=no ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl Title + Caption ╭──┬──┬──╮ │ │a1│a2│ @@ -485,6 +496,8 @@ Caption Only │b2│ 2│ 3│ ╰──┴──┴──╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([pivot table footnotes]) @@ -516,7 +529,7 @@ AT_DATA([pivot.txt], [[ /title "Hidden Footnote"[footnote 0] /footnote[0] "First footnote" marker="*" hide ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], +AT_DATA([expout], [[Pivot Table with Alphabetic Subscript Footnotes[*] ╭────────────┬──────────────────╮ │ │ A[*] │ @@ -581,17 +594,21 @@ Hidden Footnote[*] Caption[*] 2. Second footnote ]]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([pivot table with no dimensions]) AT_DATA([pivot.txt], [[ /title "No Dimensions" ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl No Dimensions ╭╮ ╰╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([pivot table with empty dimensions]) @@ -602,13 +619,15 @@ AT_DATA([pivot.txt], [[ /title "Two Empty Dimensions" /row "b"*() /display /title "Three Dimensions, Two Empty" /row "c"("c1", "c2") ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl One Empty Dimension Two Empty Dimensions Three Dimensions, Two Empty ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([pivot table with empty groups]) @@ -619,7 +638,7 @@ AT_DATA([pivot.txt], [[ /look empty=show /display ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl Default Title ╭──┬──┬──╮ │ │a1│a3│ @@ -628,6 +647,8 @@ Default Title │b3│ 2│ 3│ ╰──┴──┴──╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([pivot table - category and dimension borders]) @@ -648,7 +669,7 @@ AT_DATA([pivot.txt], [[ "cat-col-vert" (dashed "red") /title "Category and Dimension Borders" ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl Category and Dimension Borders bg1 │ ╶╌╌╌╌╌╌╌╌┬╌╌╌╌╌╌╌╌┤ @@ -675,6 +696,8 @@ d3 │c1 54│55┊56│57│58┊59│60│61┊62 │ ├╌╌╌╌╌┼╌╌+╌╌┼╌╌┼╌╌+╌╌┼╌╌┼╌╌+╌╌ │ ┊c3 72│73┊74│75│76┊77│78│79┊80 ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP AT_SETUP([pivot table - small numbers]) @@ -724,7 +747,7 @@ AT_DATA([pivot.txt], [[ /cell[8, 1, 1] = -.00000001 /cell[9, 1, 1] = -.000000001 ]]) -AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [dnl +AT_DATA([expout], [dnl small numbers ╭────────┬─────────────────────────────────────╮ │ │ result class │ @@ -747,4 +770,6 @@ small numbers │-9 │1.00E-009│1.00E-009│ .00│ .00│ ╰────────┴─────────┴─────────┴────────┴────────╯ ]) +AT_CHECK([pivot-table-test --table-look $srcdir/output/look.stt pivot.txt --box unicode], [0], [expout]) +AT_CHECK([pspp-output -O box=unicode convert render.spv -], [0], [expout]) AT_CLEANUP \ No newline at end of file -- 2.30.2