From: Tatsuo Ishii Date: Mon, 29 Mar 1999 09:00:19 +0000 (+0000) Subject: Addition to test/locale submitted by Oleg Broytmann. Comments from him: X-Git-Tag: REL9_0_0~25659 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=4373c4d4fadfdb99ca8f3ad564c405a8e54268a9;p=pg-rex%2Fsyncrep.git Addition to test/locale submitted by Oleg Broytmann. Comments from him: There are two subdirectories (ISO8859-7 and koi8-to-win1251) containing tests for Greek locale and server<=>client recoding feature (recently submitted by Tatsuo Ishii ; we've debugged his patches together in the field of Cyrillic support). --- diff --git a/src/test/locale/Makefile b/src/test/locale/Makefile index c59aba7ab6..649ad0fef1 100644 --- a/src/test/locale/Makefile +++ b/src/test/locale/Makefile @@ -14,7 +14,7 @@ CFLAGS+= $(KRBFLAGS) endif PROGS = test-pgsql-locale test-ctype -DIRS = koi8-r +DIRS = koi8-r ISO8859-7 koi8-to-win1251 all: $(PROGS) diff --git a/src/test/locale/README b/src/test/locale/README index 9cdf64ac23..b32bb03fd7 100644 --- a/src/test/locale/README +++ b/src/test/locale/README @@ -24,4 +24,4 @@ think) method is just copy koi8-r directory and edit/replace files. Oleg. ---- - Oleg Broytmann http://members.tripod.com/~phd2/ phd2@earthling.net + Oleg Broytmann http://members.xoom.com/phd2/ phd2@earthling.net diff --git a/src/test/locale/gr_GR.ISO8859-7/Makefile b/src/test/locale/gr_GR.ISO8859-7/Makefile new file mode 100644 index 0000000000..281014521e --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/Makefile @@ -0,0 +1,12 @@ +# +# Makefile for example programs +# + +all: + -@echo "make: Nothing to be done for \`all'." + +test: + @./runall + +clean: + rm -f *.out diff --git a/src/test/locale/gr_GR.ISO8859-7/README b/src/test/locale/gr_GR.ISO8859-7/README new file mode 100644 index 0000000000..62023d0c8e --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/README @@ -0,0 +1,2 @@ +gr_GR.ISO8859-7 (Greek) locale test. +Created by Angelos Karageorgiou diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/gr-ctype.out b/src/test/locale/gr_GR.ISO8859-7/expected/gr-ctype.out new file mode 100644 index 0000000000..833d70681f --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/expected/gr-ctype.out @@ -0,0 +1,257 @@ +char# char alnum alpha cntrl digit lower graph print punct space upper xdigit lo up +chr#0 + +chr#1 + +chr#2 + +chr#3 + +chr#4 + +chr#5 + +chr#6 + +chr#7 + +chr#8 + +chr#9 + + +chr#10 + + +chr#11 + + +chr#12 + + +chr#13 + + +chr#14 + +chr#15 + +chr#16 + +chr#17 + +chr#18 + +chr#19 + +chr#20 + +chr#21 + +chr#22 + +chr#23 + +chr#24 + +chr#25 + +chr#26 + +chr#27 + +chr#28 + +chr#29 + +chr#30 + +chr#31 + +chr#32 + + +chr#33 ! + + + ! ! +chr#34 " + + + " " +chr#35 # + + + # # +chr#36 $ + + + $ $ +chr#37 % + + + % % +chr#38 & + + + & & +chr#39 ' + + + ' ' +chr#40 ( + + + ( ( +chr#41 ) + + + ) ) +chr#42 * + + + * * +chr#43 + + + + + + +chr#44 , + + + , , +chr#45 - + + + - - +chr#46 . + + + . . +chr#47 / + + + / / +chr#48 0 + + + + + 0 0 +chr#49 1 + + + + + 1 1 +chr#50 2 + + + + + 2 2 +chr#51 3 + + + + + 3 3 +chr#52 4 + + + + + 4 4 +chr#53 5 + + + + + 5 5 +chr#54 6 + + + + + 6 6 +chr#55 7 + + + + + 7 7 +chr#56 8 + + + + + 8 8 +chr#57 9 + + + + + 9 9 +chr#58 : + + + : : +chr#59 ; + + + ; ; +chr#60 < + + + < < +chr#61 = + + + = = +chr#62 > + + + > > +chr#63 ? + + + ? ? +chr#64 @ + + + @ @ +chr#65 A + + + + + + a A +chr#66 B + + + + + + b B +chr#67 C + + + + + + c C +chr#68 D + + + + + + d D +chr#69 E + + + + + + e E +chr#70 F + + + + + + f F +chr#71 G + + + + + g G +chr#72 H + + + + + h H +chr#73 I + + + + + i I +chr#74 J + + + + + j J +chr#75 K + + + + + k K +chr#76 L + + + + + l L +chr#77 M + + + + + m M +chr#78 N + + + + + n N +chr#79 O + + + + + o O +chr#80 P + + + + + p P +chr#81 Q + + + + + q Q +chr#82 R + + + + + r R +chr#83 S + + + + + s S +chr#84 T + + + + + t T +chr#85 U + + + + + u U +chr#86 V + + + + + v V +chr#87 W + + + + + w W +chr#88 X + + + + + x X +chr#89 Y + + + + + y Y +chr#90 Z + + + + + z Z +chr#91 [ + + + [ [ +chr#92 \ + + + \ \ +chr#93 ] + + + ] ] +chr#94 ^ + + + ^ ^ +chr#95 _ + + + _ _ +chr#96 ` + + + ` ` +chr#97 a + + + + + + a A +chr#98 b + + + + + + b B +chr#99 c + + + + + + c C +chr#100 d + + + + + + d D +chr#101 e + + + + + + e E +chr#102 f + + + + + + f F +chr#103 g + + + + + g G +chr#104 h + + + + + h H +chr#105 i + + + + + i I +chr#106 j + + + + + j J +chr#107 k + + + + + k K +chr#108 l + + + + + l L +chr#109 m + + + + + m M +chr#110 n + + + + + n N +chr#111 o + + + + + o O +chr#112 p + + + + + p P +chr#113 q + + + + + q Q +chr#114 r + + + + + r R +chr#115 s + + + + + s S +chr#116 t + + + + + t T +chr#117 u + + + + + u U +chr#118 v + + + + + v V +chr#119 w + + + + + w W +chr#120 x + + + + + x X +chr#121 y + + + + + y Y +chr#122 z + + + + + z Z +chr#123 { + + + { { +chr#124 | + + + | | +chr#125 } + + + } } +chr#126 ~ + + + ~ ~ +chr#127  + + + + +   +chr#128 € + + + + + € € +chr#129  + + + + +   +chr#130 ‚ + + + + + ‚ ‚ +chr#131 ƒ + + + + + ƒ ƒ +chr#132 „ + + + + + „ „ +chr#133 … + + + + + … … +chr#134 † + + + + + † † +chr#135 ‡ + + + + + ‡ ‡ +chr#136 ˆ + + + + + ˆ ˆ +chr#137 ‰ + + + + + ‰ ‰ +chr#138 Š + + + + + Š Š +chr#139 ‹ + + + + + ‹ ‹ +chr#140 Œ + + + + + Œ Œ +chr#141  + + + + +   +chr#142 Ž + + + + + Ž Ž +chr#143  + + + + +   +chr#144  + + + + +   +chr#145 ‘ + + + + + ‘ ‘ +chr#146 ’ + + + + + ’ ’ +chr#147 “ + + + + + “ “ +chr#148 ” + + + + + ” ” +chr#149 • + + + + + • • +chr#150 – + + + + + – – +chr#151 — + + + + + — — +chr#152 ˜ + + + + + ˜ ˜ +chr#153 ™ + + + + + ™ ™ +chr#154 š + + + + + š š +chr#155 › + + + + + › › +chr#156 œ + + + + + œ œ +chr#157  + + + + +   +chr#158 ž + + + + + ž ž +chr#159 Ÿ + + + + + Ÿ Ÿ +chr#160   + + + +     +chr#161 ¡ + + + + ¡ ¡ +chr#162 ¢ + + + + + á Á +chr#163 £ + + + + £ £ +chr#164 ¤ + + + + ¤ ¤ +chr#165 ¥ + + + + ¥ ¥ +chr#166 ¦ + + + + ¦ ¦ +chr#167 § + + + + § § +chr#168 ¨ + + + + ¨ ¨ +chr#169 © + + + + © © +chr#170 ª + + + + ª ª +chr#171 « + + + + « « +chr#172 ¬ + + + + ¬ ¬ +chr#173 ­ + + + + ­ ­ +chr#174 ® + + + + ® ® +chr#175 ¯ + + + + ¯ ¯ +chr#176 ° + + + + ° ° +chr#177 ± + + + + ± ± +chr#178 ² + + + + ² ² +chr#179 ³ + + + + ³ ³ +chr#180 ´ + + + + ´ ´ +chr#181 µ + + + + µ µ +chr#182 ¶ + + + + ¶ ¶ +chr#183 · + + + + · · +chr#184 ¸ + + + + + å Å +chr#185 ¹ + + + + + ç Ç +chr#186 º + + + + + é É +chr#187 » + + + + » » +chr#188 ¼ + + + + + ï Ï +chr#189 ½ + + + + ½ ½ +chr#190 ¾ + + + + + õ Õ +chr#191 ¿ + + + + + ù Ù +chr#192 À + + + + + é É +chr#193 Á + + + + + á Á +chr#194  + + + + + â  +chr#195 à + + + + + ã à +chr#196 Ä + + + + + ä Ä +chr#197 Å + + + + + å Å +chr#198 Æ + + + + + æ Æ +chr#199 Ç + + + + + ç Ç +chr#200 È + + + + + è È +chr#201 É + + + + + é É +chr#202 Ê + + + + + ê Ê +chr#203 Ë + + + + + ë Ë +chr#204 Ì + + + + + ì Ì +chr#205 Í + + + + + í Í +chr#206 Î + + + + + î Î +chr#207 Ï + + + + + ï Ï +chr#208 Ð + + + + + ð Ð +chr#209 Ñ + + + + + ñ Ñ +chr#210 Ò + + + + + ò Ò +chr#211 Ó + + + + + ó Ó +chr#212 Ô + + + + + ô Ô +chr#213 Õ + + + + + õ Õ +chr#214 Ö + + + + + ö Ö +chr#215 × + + + + + ÷ × +chr#216 Ø + + + + + ø Ø +chr#217 Ù + + + + + ù Ù +chr#218 Ú + + + + + é É +chr#219 Û + + + + + õ Õ +chr#220 Ü + + + + + á Á +chr#221 Ý + + + + + å Å +chr#222 Þ + + + + + ç Ç +chr#223 ß + + + + + é É +chr#224 à + + + + + õ Õ +chr#225 á + + + + + á Á +chr#226 â + + + + + â  +chr#227 ã + + + + + ã à +chr#228 ä + + + + + ä Ä +chr#229 å + + + + + å Å +chr#230 æ + + + + + æ Æ +chr#231 ç + + + + + ç Ç +chr#232 è + + + + + è È +chr#233 é + + + + + é É +chr#234 ê + + + + + ê Ê +chr#235 ë + + + + + ë Ë +chr#236 ì + + + + + ì Ì +chr#237 í + + + + + í Í +chr#238 î + + + + + î Î +chr#239 ï + + + + + ï Ï +chr#240 ð + + + + + ð Ð +chr#241 ñ + + + + + ñ Ñ +chr#242 ò + + + + + ò Ó +chr#243 ó + + + + + ó Ó +chr#244 ô + + + + + ô Ô +chr#245 õ + + + + + õ Õ +chr#246 ö + + + + + ö Ö +chr#247 ÷ + + + + + ÷ × +chr#248 ø + + + + + ø Ø +chr#249 ù + + + + + ù Ù +chr#250 ú + + + + + é É +chr#251 û + + + + + õ Õ +chr#252 ü + + + + + ï Ï +chr#253 ý + + + + + õ Õ +chr#254 þ + + + + + ù Ù +chr#255 + diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-char.sql.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-char.sql.out new file mode 100644 index 0000000000..302a2ecc75 --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-char.sql.out @@ -0,0 +1,55 @@ +abbrev|name_en |name_gr +------+--------------------+------------------------------------------------------------ +AK |Alaska |ÁëÜóêá +AL |Alabama |ÁëáìðÜìá +AZ |Arizona |Áñéæüíá +AR |Arkansas |Áñêáíóáò +ID |Idaho |Áúíôá÷ï +IA |Iowa |Áúüâá +VT |Vermont |Âåñìüíô +VA |Virginia |Âéñôæßíéá +NC |North Carolina |Âüñåéá Êáñïëßíá +ND |North Dakota |Âüñåéá Íôáêüôá +UT |Utah |Ãéïýôá +WY |Wyoming |Ãïõáúüìéíãê +WV |West Virginia |Ãïõåóô Âéñôæßíéá +WI |Wisconsin |Ãïõéóêüíóéí +WA |Washington |Ãïõüóéíãêôïí +DC |Washington DC |Ãïõüóéíãôïí Íôß Óé +IL |Illinois |Éëëéíüéò +IN |Indiana |ÉíôéÜíá +KA |Kansas |ÊÜíóáò +CA |California |Êáëéöüñíéá +KY |Kentucky |ÊåíôÜêé +CO |Colorado |ÊïëïñÜíôï +CT |Connecticut |ÊïííÝêôéêáô +LA |Louisiana |ËïõúæéÜíá +ME |Maine |ÌÝéí +MI |Michigan |Ìßôóéãêáí +MD |Maryland |Ìáßñõëáíô +MA |Massachusetts |Ìáóóá÷ïõóÝôç +MN |Minnesota |Ìéíåóóüôá +MS |Mississippi |Ìéóéóóßðé +MO |Missouri |Ìéóóïýñé +MT |Montana |ÌïíôÜíá +NJ |New Jersey |ÍÝá ÕåñóÝç +NY |New York |ÍÝá Õüñêç +NM |New Mexico |ÍÝï Ìåîéêü +NH |New Hampshire |ÍÝï ×Üìðóáúñ +NV |Nevada |ÍåâÜäá +NE |Nebraska |ÍåìðñÜóêá +DE |Delaware |ÍôÝëáãïõåñ +SC |South Carolina |Íüôéá Êáñïëßíá +SD |South Dakota |Íüôéá Íôáêüôá +OK |Oklahoma |Ïêëá÷üìá +OR |Oregon |Ïñåãêïí +OH |Ohio |Ï÷Üéï +PA |Pennsylvania |ÐåííóõëâÜíéá +RI |Rhode Island |Ñüïõíô Áúëáíô +TX |Texas |ÔÝîáò +TN |Tennessee |Ôåííåóß +GA |Georgia |Ôæüñôæéá +FL |Florida |Öëüñéíôá +(50 rows) + +EOF diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-select.sql.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-select.sql.out new file mode 100644 index 0000000000..d77585fdd7 --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-select.sql.out @@ -0,0 +1,11 @@ +abbrev|name_en |name_gr +------+--------------------+------------------ +UT |Utah |Ãéïýôá +WY |Wyoming |Ãïõáúüìéíãê +WV |West Virginia |Ãïõåóô Âéñôæßíéá +WI |Wisconsin |Ãïõéóêüíóéí +WA |Washington |Ãïõüóéíãêôïí +DC |Washington DC |Ãïõüóéíãôïí Íôß Óé +(6 rows) + +EOF diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-sort.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-sort.out new file mode 100644 index 0000000000..ef9b699ba5 --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-sort.out @@ -0,0 +1,7 @@ +Bording +Sorting +hoarding +Áããåëïò +ÄïêéìÞ +Åëëçíéêïý +Óüñô diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-text.sql.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-text.sql.out new file mode 100644 index 0000000000..ce18789da0 --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-text.sql.out @@ -0,0 +1,55 @@ +abbrev|name_en |name_gr +------+--------------------+------------------ +AK |Alaska |ÁëÜóêá +AL |Alabama |ÁëáìðÜìá +AZ |Arizona |Áñéæüíá +AR |Arkansas |Áñêáíóáò +ID |Idaho |Áúíôá÷ï +IA |Iowa |Áúüâá +VT |Vermont |Âåñìüíô +VA |Virginia |Âéñôæßíéá +NC |North Carolina |Âüñåéá Êáñïëßíá +ND |North Dakota |Âüñåéá Íôáêüôá +UT |Utah |Ãéïýôá +WY |Wyoming |Ãïõáúüìéíãê +WV |West Virginia |Ãïõåóô Âéñôæßíéá +WI |Wisconsin |Ãïõéóêüíóéí +WA |Washington |Ãïõüóéíãêôïí +DC |Washington DC |Ãïõüóéíãôïí Íôß Óé +IL |Illinois |Éëëéíüéò +IN |Indiana |ÉíôéÜíá +KA |Kansas |ÊÜíóáò +CA |California |Êáëéöüñíéá +KY |Kentucky |ÊåíôÜêé +CO |Colorado |ÊïëïñÜíôï +CT |Connecticut |ÊïííÝêôéêáô +LA |Louisiana |ËïõúæéÜíá +ME |Maine |ÌÝéí +MI |Michigan |Ìßôóéãêáí +MD |Maryland |Ìáßñõëáíô +MA |Massachusetts |Ìáóóá÷ïõóÝôç +MN |Minnesota |Ìéíåóóüôá +MS |Mississippi |Ìéóéóóßðé +MO |Missouri |Ìéóóïýñé +MT |Montana |ÌïíôÜíá +NJ |New Jersey |ÍÝá ÕåñóÝç +NY |New York |ÍÝá Õüñêç +NM |New Mexico |ÍÝï Ìåîéêü +NH |New Hampshire |ÍÝï ×Üìðóáúñ +NV |Nevada |ÍåâÜäá +NE |Nebraska |ÍåìðñÜóêá +DE |Delaware |ÍôÝëáãïõåñ +SC |South Carolina |Íüôéá Êáñïëßíá +SD |South Dakota |Íüôéá Íôáêüôá +OK |Oklahoma |Ïêëá÷üìá +OR |Oregon |Ïñåãêïí +OH |Ohio |Ï÷Üéï +PA |Pennsylvania |ÐåííóõëâÜíéá +RI |Rhode Island |Ñüïõíô Áúëáíô +TX |Texas |ÔÝîáò +TN |Tennessee |Ôåííåóß +GA |Georgia |Ôæüñôæéá +FL |Florida |Öëüñéíôá +(50 rows) + +EOF diff --git a/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-varchar.sql.out b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-varchar.sql.out new file mode 100644 index 0000000000..ce18789da0 --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/expected/test-gr-varchar.sql.out @@ -0,0 +1,55 @@ +abbrev|name_en |name_gr +------+--------------------+------------------ +AK |Alaska |ÁëÜóêá +AL |Alabama |ÁëáìðÜìá +AZ |Arizona |Áñéæüíá +AR |Arkansas |Áñêáíóáò +ID |Idaho |Áúíôá÷ï +IA |Iowa |Áúüâá +VT |Vermont |Âåñìüíô +VA |Virginia |Âéñôæßíéá +NC |North Carolina |Âüñåéá Êáñïëßíá +ND |North Dakota |Âüñåéá Íôáêüôá +UT |Utah |Ãéïýôá +WY |Wyoming |Ãïõáúüìéíãê +WV |West Virginia |Ãïõåóô Âéñôæßíéá +WI |Wisconsin |Ãïõéóêüíóéí +WA |Washington |Ãïõüóéíãêôïí +DC |Washington DC |Ãïõüóéíãôïí Íôß Óé +IL |Illinois |Éëëéíüéò +IN |Indiana |ÉíôéÜíá +KA |Kansas |ÊÜíóáò +CA |California |Êáëéöüñíéá +KY |Kentucky |ÊåíôÜêé +CO |Colorado |ÊïëïñÜíôï +CT |Connecticut |ÊïííÝêôéêáô +LA |Louisiana |ËïõúæéÜíá +ME |Maine |ÌÝéí +MI |Michigan |Ìßôóéãêáí +MD |Maryland |Ìáßñõëáíô +MA |Massachusetts |Ìáóóá÷ïõóÝôç +MN |Minnesota |Ìéíåóóüôá +MS |Mississippi |Ìéóéóóßðé +MO |Missouri |Ìéóóïýñé +MT |Montana |ÌïíôÜíá +NJ |New Jersey |ÍÝá ÕåñóÝç +NY |New York |ÍÝá Õüñêç +NM |New Mexico |ÍÝï Ìåîéêü +NH |New Hampshire |ÍÝï ×Üìðóáúñ +NV |Nevada |ÍåâÜäá +NE |Nebraska |ÍåìðñÜóêá +DE |Delaware |ÍôÝëáãïõåñ +SC |South Carolina |Íüôéá Êáñïëßíá +SD |South Dakota |Íüôéá Íôáêüôá +OK |Oklahoma |Ïêëá÷üìá +OR |Oregon |Ïñåãêïí +OH |Ohio |Ï÷Üéï +PA |Pennsylvania |ÐåííóõëâÜíéá +RI |Rhode Island |Ñüïõíô Áúëáíô +TX |Texas |ÔÝîáò +TN |Tennessee |Ôåííåóß +GA |Georgia |Ôæüñôæéá +FL |Florida |Öëüñéíôá +(50 rows) + +EOF diff --git a/src/test/locale/gr_GR.ISO8859-7/runall b/src/test/locale/gr_GR.ISO8859-7/runall new file mode 100755 index 0000000000..94bbd0c8c8 --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/runall @@ -0,0 +1,52 @@ +#! /bin/sh + +PATH=..:$PATH + +echo "Testing PostgreSQL compilation..." +if ! test-pgsql-locale; then + exit 1 +fi + +LC_CTYPE=gr_GR.ISO8859-7 +LC_COLLATE=$LC_CTYPE +export LC_CTYPE LC_COLLATE + +echo "Testing LC_CTYPE..." +if ! test-ctype > gr-ctype.out; then + exit 1 +fi +diff expected/gr-ctype.out gr-ctype.out + +echo "Testing LC_COLLATE..." +perl ../sort-test.pl test-gr-sort.in > test-gr-sort.out +diff expected/test-gr-sort.out test-gr-sort.out + +### If you have Python - uncomment the following two lines +#python ../sort-test.py test-gr-sort.in > test-gr-sort.out +#diff expected/test-gr-sort.out test-gr-sort.out + + +abort() { + [ "$1" ] && echo "$*" + exit 1 +} + +for f in char varchar text; do + if echo $f | grep -q char; then + ftype="$f(60)" + else + ftype="$f" + fi + echo "Testing PgSQL: sort on $ftype type..." + + destroydb testlocale >/dev/null 2>&1 + createdb testlocale || abort "createdb failed" + psql -d testlocale -c "CREATE TABLE usastates (abbrev char(2), name_en char(20), name_gr $ftype);" >/dev/null 2>&1 || abort "createtable failed" + psql testlocale < test-gr.sql.in > test-gr-$f.sql.out 2>/dev/null || abort "test query failed" + diff expected/test-gr-$f.sql.out test-gr-$f.sql.out +done +echo "Testing PgSQL: select on regexp..." +psql testlocale < test-gr-select.sql.in > test-gr-select.sql.out 2>/dev/null || abort "select query failed" +diff expected/test-gr-select.sql.out test-gr-select.sql.out +destroydb testlocale || abort "destroydb failed" +echo "Finished." diff --git a/src/test/locale/gr_GR.ISO8859-7/test-gr-select.sql.in b/src/test/locale/gr_GR.ISO8859-7/test-gr-select.sql.in new file mode 100644 index 0000000000..e22349c34c --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/test-gr-select.sql.in @@ -0,0 +1 @@ +SELECT * FROM usastates WHERE name_gr ~* '^Ã.*' ORDER BY name_gr; diff --git a/src/test/locale/gr_GR.ISO8859-7/test-gr-sort.in b/src/test/locale/gr_GR.ISO8859-7/test-gr-sort.in new file mode 100644 index 0000000000..248f0fa54e --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/test-gr-sort.in @@ -0,0 +1,7 @@ +Sorting +ÄïêéìÞ +Åëëçíéêïý +Óüñô +Áããåëïò +Bording +hoarding diff --git a/src/test/locale/gr_GR.ISO8859-7/test-gr.sql.in b/src/test/locale/gr_GR.ISO8859-7/test-gr.sql.in new file mode 100644 index 0000000000..8cb638882e --- /dev/null +++ b/src/test/locale/gr_GR.ISO8859-7/test-gr.sql.in @@ -0,0 +1,53 @@ +COPY usastates FROM stdin USING DELIMITERS '|'; +AK|Alaska |ÁëÜóêá +WA|Washington |Ãïõüóéíãêôïí +OR|Oregon |Ïñåãêïí +CA|California |Êáëéöüñíéá +NV|Nevada |ÍåâÜäá +ID|Idaho |Áúíôá÷ï +UT|Utah |Ãéïýôá +AZ|Arizona |Áñéæüíá +MT|Montana |ÌïíôÜíá +WY|Wyoming |Ãïõáúüìéíãê +CO|Colorado |ÊïëïñÜíôï +NM|New Mexico |ÍÝï Ìåîéêü +ND|North Dakota |Âüñåéá Íôáêüôá +SD|South Dakota |Íüôéá Íôáêüôá +NE|Nebraska |ÍåìðñÜóêá +KA|Kansas |ÊÜíóáò +OK|Oklahoma |Ïêëá÷üìá +TX|Texas |ÔÝîáò +MN|Minnesota |Ìéíåóóüôá +IA|Iowa |Áúüâá +MO|Missouri |Ìéóóïýñé +AR|Arkansas |Áñêáíóáò +LA|Louisiana |ËïõúæéÜíá +WI|Wisconsin |Ãïõéóêüíóéí +IL|Illinois |Éëëéíüéò +IN|Indiana |ÉíôéÜíá +MS|Mississippi |Ìéóéóóßðé +AL|Alabama |ÁëáìðÜìá +MI|Michigan |Ìßôóéãêáí +OH|Ohio |Ï÷Üéï +KY|Kentucky |ÊåíôÜêé +TN|Tennessee |Ôåííåóß +GA|Georgia |Ôæüñôæéá +FL|Florida |Öëüñéíôá +PA|Pennsylvania |ÐåííóõëâÜíéá +WV|West Virginia |Ãïõåóô Âéñôæßíéá +VA|Virginia |Âéñôæßíéá +NC|North Carolina|Âüñåéá Êáñïëßíá +SC|South Carolina|Íüôéá Êáñïëßíá +NY|New York |ÍÝá Õüñêç +NJ|New Jersey |ÍÝá ÕåñóÝç +DE|Delaware |ÍôÝëáãïõåñ +MD|Maryland |Ìáßñõëáíô +DC|Washington DC |Ãïõüóéíãôïí Íôß Óé +VT|Vermont |Âåñìüíô +MA|Massachusetts |Ìáóóá÷ïõóÝôç +CT|Connecticut |ÊïííÝêôéêáô +ME|Maine |ÌÝéí +NH|New Hampshire |ÍÝï ×Üìðóáúñ +RI|Rhode Island |Ñüïõíô Áúëáíô +\. +SELECT * FROM usastates ORDER BY name_gr; diff --git a/src/test/locale/koi8-to-win1251/Makefile b/src/test/locale/koi8-to-win1251/Makefile new file mode 100644 index 0000000000..281014521e --- /dev/null +++ b/src/test/locale/koi8-to-win1251/Makefile @@ -0,0 +1,12 @@ +# +# Makefile for example programs +# + +all: + -@echo "make: Nothing to be done for \`all'." + +test: + @./runall + +clean: + rm -f *.out diff --git a/src/test/locale/koi8-to-win1251/README b/src/test/locale/koi8-to-win1251/README new file mode 100644 index 0000000000..1ad3bde81d --- /dev/null +++ b/src/test/locale/koi8-to-win1251/README @@ -0,0 +1,4 @@ +koi8-to-win1251 test. The database should be created in koi8 (createdb -E koi8), +test uses koi8-to-win1251 converting feature. +Created by Oleg Broytmann . Code for encodings +converting created by Tatsuo Ishii . diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-char.sql.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-char.sql.out new file mode 100644 index 0000000000..391af87c1d --- /dev/null +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-char.sql.out @@ -0,0 +1,55 @@ +abbrev|name_en |name_ru +------+--------------------+------------------------------------------------------------ +ID |Idaho |Àéäàõî +IA |Iowa |Àéîâà +AL |Alabama |Àëàáàìà +AK |Alaska |Àëÿñêà +AZ |Arizona |Àðèçîíà +AR |Arkansas |Àðêàíçàñ +WY |Wyoming |Âàéîìèíã +WA |Washington |Âàøèíãòîí +VT |Vermont |Âåðìîíò +VA |Virginia |Âèðäæèíèÿ +WI |Wisconsin |Âèñêîíñèí +DE |Delaware |Äåëàâýð +GA |Georgia |Äæîðäæèÿ +WV |West Virginia |Çàïàäíàÿ Âèðäæèíèÿ +IL |Illinois |Èëëèíîéñ +IN |Indiana |Èíäèàíà +CA |California |Êàëèôîðíèÿ +KA |Kansas |Êàíçàñ +KY |Kentucky |Êåíòóêêè +CO |Colorado |Êîëîðàäî +CT |Connecticut |Êîííåêòèêóò +LA |Louisiana |Ëóèçèàíà +MA |Massachusetts |Ìàññà÷óñåòñ +MN |Minnesota |Ìèííåñîòà +MS |Mississippi |Ìèññèñèïè +MO |Missouri |Ìèññóðè +MI |Michigan |Ìè÷èãàí +MT |Montana |Ìîíòàíà +ME |Maine |Ìýí +MD |Maryland |Ìýðèëåíä +NE |Nebraska |Íåáðàñêà +NV |Nevada |Íåâàäà +NH |New Hampshire |Íüþ-Ãýìïøèð +NJ |New Jersey |Íüþ-Äæåðñè +NY |New York |Íüþ-Éîðê +NM |New Mexico |Íüþ-Ìåêñèêî +OH |Ohio |Îãàéî +OK |Oklahoma |Îêëàõîìà +DC |Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) +OR |Oregon |Îðåãîí +PA |Pennsylvania |Ïåíñèëüâàíèÿ +RI |Rhode Island |Ðîä-Àéëåíä +ND |North Dakota |Ñåâåðíàÿ Äàêîòà +NC |North Carolina |Ñåâåðíàÿ Êàðîëèíà +TN |Tennessee |Òåííåññè +TX |Texas |Òåõàñ +FL |Florida |Ôëîðèäà +SD |South Dakota |Þæíàÿ Äàêîòà +SC |South Carolina |Þæíàÿ Êàðîëèíà +UT |Utah |Þòà +(50 rows) + +EOF diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-select.sql.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-select.sql.out new file mode 100644 index 0000000000..7d73f0e47f --- /dev/null +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-select.sql.out @@ -0,0 +1,9 @@ +abbrev|name_en |name_ru +------+--------------------+---------------------------------------------- +OH |Ohio |Îãàéî +OK |Oklahoma |Îêëàõîìà +DC |Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) +OR |Oregon |Îðåãîí +(4 rows) + +EOF diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-sort.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-sort.out new file mode 100644 index 0000000000..9b35ecdeaa --- /dev/null +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-sort.out @@ -0,0 +1,9 @@ +Bording +hoarding +Vesta +vesta +àëüÿíñ +Àôðèêà +Ñåâåð +Öàïëÿ +Þã diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-text.sql.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-text.sql.out new file mode 100644 index 0000000000..7a1dad22ff --- /dev/null +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-text.sql.out @@ -0,0 +1,55 @@ +abbrev|name_en |name_ru +------+--------------------+---------------------------------------------- +ID |Idaho |Àéäàõî +IA |Iowa |Àéîâà +AL |Alabama |Àëàáàìà +AK |Alaska |Àëÿñêà +AZ |Arizona |Àðèçîíà +AR |Arkansas |Àðêàíçàñ +WY |Wyoming |Âàéîìèíã +WA |Washington |Âàøèíãòîí +VT |Vermont |Âåðìîíò +VA |Virginia |Âèðäæèíèÿ +WI |Wisconsin |Âèñêîíñèí +DE |Delaware |Äåëàâýð +GA |Georgia |Äæîðäæèÿ +WV |West Virginia |Çàïàäíàÿ Âèðäæèíèÿ +IL |Illinois |Èëëèíîéñ +IN |Indiana |Èíäèàíà +CA |California |Êàëèôîðíèÿ +KA |Kansas |Êàíçàñ +KY |Kentucky |Êåíòóêêè +CO |Colorado |Êîëîðàäî +CT |Connecticut |Êîííåêòèêóò +LA |Louisiana |Ëóèçèàíà +MA |Massachusetts |Ìàññà÷óñåòñ +MN |Minnesota |Ìèííåñîòà +MS |Mississippi |Ìèññèñèïè +MO |Missouri |Ìèññóðè +MI |Michigan |Ìè÷èãàí +MT |Montana |Ìîíòàíà +ME |Maine |Ìýí +MD |Maryland |Ìýðèëåíä +NE |Nebraska |Íåáðàñêà +NV |Nevada |Íåâàäà +NH |New Hampshire |Íüþ-Ãýìïøèð +NJ |New Jersey |Íüþ-Äæåðñè +NY |New York |Íüþ-Éîðê +NM |New Mexico |Íüþ-Ìåêñèêî +OH |Ohio |Îãàéî +OK |Oklahoma |Îêëàõîìà +DC |Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) +OR |Oregon |Îðåãîí +PA |Pennsylvania |Ïåíñèëüâàíèÿ +RI |Rhode Island |Ðîä-Àéëåíä +ND |North Dakota |Ñåâåðíàÿ Äàêîòà +NC |North Carolina |Ñåâåðíàÿ Êàðîëèíà +TN |Tennessee |Òåííåññè +TX |Texas |Òåõàñ +FL |Florida |Ôëîðèäà +SD |South Dakota |Þæíàÿ Äàêîòà +SC |South Carolina |Þæíàÿ Êàðîëèíà +UT |Utah |Þòà +(50 rows) + +EOF diff --git a/src/test/locale/koi8-to-win1251/expected/test-koi8-varchar.sql.out b/src/test/locale/koi8-to-win1251/expected/test-koi8-varchar.sql.out new file mode 100644 index 0000000000..7a1dad22ff --- /dev/null +++ b/src/test/locale/koi8-to-win1251/expected/test-koi8-varchar.sql.out @@ -0,0 +1,55 @@ +abbrev|name_en |name_ru +------+--------------------+---------------------------------------------- +ID |Idaho |Àéäàõî +IA |Iowa |Àéîâà +AL |Alabama |Àëàáàìà +AK |Alaska |Àëÿñêà +AZ |Arizona |Àðèçîíà +AR |Arkansas |Àðêàíçàñ +WY |Wyoming |Âàéîìèíã +WA |Washington |Âàøèíãòîí +VT |Vermont |Âåðìîíò +VA |Virginia |Âèðäæèíèÿ +WI |Wisconsin |Âèñêîíñèí +DE |Delaware |Äåëàâýð +GA |Georgia |Äæîðäæèÿ +WV |West Virginia |Çàïàäíàÿ Âèðäæèíèÿ +IL |Illinois |Èëëèíîéñ +IN |Indiana |Èíäèàíà +CA |California |Êàëèôîðíèÿ +KA |Kansas |Êàíçàñ +KY |Kentucky |Êåíòóêêè +CO |Colorado |Êîëîðàäî +CT |Connecticut |Êîííåêòèêóò +LA |Louisiana |Ëóèçèàíà +MA |Massachusetts |Ìàññà÷óñåòñ +MN |Minnesota |Ìèííåñîòà +MS |Mississippi |Ìèññèñèïè +MO |Missouri |Ìèññóðè +MI |Michigan |Ìè÷èãàí +MT |Montana |Ìîíòàíà +ME |Maine |Ìýí +MD |Maryland |Ìýðèëåíä +NE |Nebraska |Íåáðàñêà +NV |Nevada |Íåâàäà +NH |New Hampshire |Íüþ-Ãýìïøèð +NJ |New Jersey |Íüþ-Äæåðñè +NY |New York |Íüþ-Éîðê +NM |New Mexico |Íüþ-Ìåêñèêî +OH |Ohio |Îãàéî +OK |Oklahoma |Îêëàõîìà +DC |Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) +OR |Oregon |Îðåãîí +PA |Pennsylvania |Ïåíñèëüâàíèÿ +RI |Rhode Island |Ðîä-Àéëåíä +ND |North Dakota |Ñåâåðíàÿ Äàêîòà +NC |North Carolina |Ñåâåðíàÿ Êàðîëèíà +TN |Tennessee |Òåííåññè +TX |Texas |Òåõàñ +FL |Florida |Ôëîðèäà +SD |South Dakota |Þæíàÿ Äàêîòà +SC |South Carolina |Þæíàÿ Êàðîëèíà +UT |Utah |Þòà +(50 rows) + +EOF diff --git a/src/test/locale/koi8-to-win1251/runall b/src/test/locale/koi8-to-win1251/runall new file mode 100755 index 0000000000..e0fef2f0b9 --- /dev/null +++ b/src/test/locale/koi8-to-win1251/runall @@ -0,0 +1,49 @@ +#! /bin/sh + +PATH=..:$PATH + +echo "Testing PostgreSQL compilation..." +if ! test-pgsql-locale; then + exit 1 +fi + +LC_CTYPE=ru_RU.KOI8-R +LC_COLLATE=$LC_CTYPE +export LC_CTYPE LC_COLLATE + +PGCLIENTENCODING=win +export PGCLIENTENCODING + +echo "Testing LC_COLLATE..." +perl ../sort-test.pl test-koi8-sort.in > test-koi8-sort.out +diff expected/test-koi8-sort.out test-koi8-sort.out + +### If you have Python - uncomment the following two lines +#python ../sort-test.py test-koi8-sort.in > test-koi8-sort.out +#diff expected/test-koi8-sort.out test-koi8-sort.out + + +abort() { + [ "$1" ] && echo "$*" + exit 1 +} + +for f in char varchar text; do + if echo $f | grep -q char; then + ftype="$f(60)" + else + ftype="$f" + fi + echo "Testing PgSQL: sort on $ftype type..." + + destroydb testlocale >/dev/null 2>&1 + createdb testlocale || abort "createdb failed" + psql -d testlocale -c "CREATE TABLE usastates (abbrev char(2), name_en char(20), name_ru $ftype);" >/dev/null 2>&1 || abort "createtable failed" + psql testlocale < test-koi8.sql.in > test-koi8-$f.sql.out 2>/dev/null || abort "test query failed" + diff expected/test-koi8-$f.sql.out test-koi8-$f.sql.out +done +echo "Testing PgSQL: select on regexp..." +psql testlocale < test-koi8-select.sql.in > test-koi8-select.sql.out 2>/dev/null || abort "select query failed" +diff expected/test-koi8-select.sql.out test-koi8-select.sql.out +destroydb testlocale || abort "destroydb failed" +echo "Finished." diff --git a/src/test/locale/koi8-to-win1251/test-koi8-select.sql.in b/src/test/locale/koi8-to-win1251/test-koi8-select.sql.in new file mode 100644 index 0000000000..22658c8da9 --- /dev/null +++ b/src/test/locale/koi8-to-win1251/test-koi8-select.sql.in @@ -0,0 +1 @@ +SELECT * FROM usastates WHERE name_ru ~* '^î.*' ORDER BY name_ru; diff --git a/src/test/locale/koi8-to-win1251/test-koi8-sort.in b/src/test/locale/koi8-to-win1251/test-koi8-sort.in new file mode 100644 index 0000000000..3ce0d465c8 --- /dev/null +++ b/src/test/locale/koi8-to-win1251/test-koi8-sort.in @@ -0,0 +1,9 @@ +Vesta +vesta +Þã +àëüÿíñ +Àôðèêà +Ñåâåð +Öàïëÿ +Bording +hoarding diff --git a/src/test/locale/koi8-to-win1251/test-koi8.sql.in b/src/test/locale/koi8-to-win1251/test-koi8.sql.in new file mode 100644 index 0000000000..2a5e8175f5 --- /dev/null +++ b/src/test/locale/koi8-to-win1251/test-koi8.sql.in @@ -0,0 +1,53 @@ +COPY usastates FROM stdin USING DELIMITERS '|'; +AK|Alaska |Àëÿñêà +WA|Washington |Âàøèíãòîí +OR|Oregon |Îðåãîí +CA|California |Êàëèôîðíèÿ +NV|Nevada |Íåâàäà +ID|Idaho |Àéäàõî +UT|Utah |Þòà +AZ|Arizona |Àðèçîíà +MT|Montana |Ìîíòàíà +WY|Wyoming |Âàéîìèíã +CO|Colorado |Êîëîðàäî +NM|New Mexico |Íüþ-Ìåêñèêî +ND|North Dakota |Ñåâåðíàÿ Äàêîòà +SD|South Dakota |Þæíàÿ Äàêîòà +NE|Nebraska |Íåáðàñêà +KA|Kansas |Êàíçàñ +OK|Oklahoma |Îêëàõîìà +TX|Texas |Òåõàñ +MN|Minnesota |Ìèííåñîòà +IA|Iowa |Àéîâà +MO|Missouri |Ìèññóðè +AR|Arkansas |Àðêàíçàñ +LA|Louisiana |Ëóèçèàíà +WI|Wisconsin |Âèñêîíñèí +IL|Illinois |Èëëèíîéñ +IN|Indiana |Èíäèàíà +MS|Mississippi |Ìèññèñèïè +AL|Alabama |Àëàáàìà +MI|Michigan |Ìè÷èãàí +OH|Ohio |Îãàéî +KY|Kentucky |Êåíòóêêè +TN|Tennessee |Òåííåññè +GA|Georgia |Äæîðäæèÿ +FL|Florida |Ôëîðèäà +PA|Pennsylvania |Ïåíñèëüâàíèÿ +WV|West Virginia |Çàïàäíàÿ Âèðäæèíèÿ +VA|Virginia |Âèðäæèíèÿ +NC|North Carolina|Ñåâåðíàÿ Êàðîëèíà +SC|South Carolina|Þæíàÿ Êàðîëèíà +NY|New York |Íüþ-Éîðê +NJ|New Jersey |Íüþ-Äæåðñè +DE|Delaware |Äåëàâýð +MD|Maryland |Ìýðèëåíä +DC|Washington DC |îêðóã Êîëóìáèÿ (ñîçäàí ñïåöèàëüíî ïîä ñòîëèöó) +VT|Vermont |Âåðìîíò +MA|Massachusetts |Ìàññà÷óñåòñ +CT|Connecticut |Êîííåêòèêóò +ME|Maine |Ìýí +NH|New Hampshire |Íüþ-Ãýìïøèð +RI|Rhode Island |Ðîä-Àéëåíä +\. +SELECT * FROM usastates ORDER BY name_ru;