diff options
author | Jon Bratseth <bratseth@yahoo-inc.com> | 2016-06-15 23:09:44 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@yahoo-inc.com> | 2016-06-15 23:09:44 +0200 |
commit | 72231250ed81e10d66bfe70701e64fa5fe50f712 (patch) | |
tree | 2728bba1131a6f6e5bdf95afec7d7ff9358dac50 /vespalib/src/tests/text/lowercase |
Publish
Diffstat (limited to 'vespalib/src/tests/text/lowercase')
-rw-r--r-- | vespalib/src/tests/text/lowercase/.gitignore | 1 | ||||
-rw-r--r-- | vespalib/src/tests/text/lowercase/CMakeLists.txt | 8 | ||||
-rw-r--r-- | vespalib/src/tests/text/lowercase/DESC | 1 | ||||
-rw-r--r-- | vespalib/src/tests/text/lowercase/FILES | 1 | ||||
-rw-r--r-- | vespalib/src/tests/text/lowercase/lowercase-table.dat | 664 | ||||
-rw-r--r-- | vespalib/src/tests/text/lowercase/lowercase_test.cpp | 38 | ||||
-rwxr-xr-x | vespalib/src/tests/text/lowercase/to-c-code.pl | 74 | ||||
-rw-r--r-- | vespalib/src/tests/text/lowercase/yell-want.dat | 792 |
8 files changed, 1579 insertions, 0 deletions
diff --git a/vespalib/src/tests/text/lowercase/.gitignore b/vespalib/src/tests/text/lowercase/.gitignore new file mode 100644 index 00000000000..f1bdb6df992 --- /dev/null +++ b/vespalib/src/tests/text/lowercase/.gitignore @@ -0,0 +1 @@ +vespalib_lowercase_test_app diff --git a/vespalib/src/tests/text/lowercase/CMakeLists.txt b/vespalib/src/tests/text/lowercase/CMakeLists.txt new file mode 100644 index 00000000000..82fa2a7f1a7 --- /dev/null +++ b/vespalib/src/tests/text/lowercase/CMakeLists.txt @@ -0,0 +1,8 @@ +# Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +vespa_add_executable(vespalib_lowercase_test_app + SOURCES + lowercase_test.cpp + DEPENDS + vespalib +) +vespa_add_test(NAME vespalib_lowercase_test_app COMMAND vespalib_lowercase_test_app) diff --git a/vespalib/src/tests/text/lowercase/DESC b/vespalib/src/tests/text/lowercase/DESC new file mode 100644 index 00000000000..e277112f112 --- /dev/null +++ b/vespalib/src/tests/text/lowercase/DESC @@ -0,0 +1 @@ +lowercase test. Take a look at lowercase_test.cpp for details. diff --git a/vespalib/src/tests/text/lowercase/FILES b/vespalib/src/tests/text/lowercase/FILES new file mode 100644 index 00000000000..418ce2dc5f5 --- /dev/null +++ b/vespalib/src/tests/text/lowercase/FILES @@ -0,0 +1 @@ +lowercase_test.cpp diff --git a/vespalib/src/tests/text/lowercase/lowercase-table.dat b/vespalib/src/tests/text/lowercase/lowercase-table.dat new file mode 100644 index 00000000000..c63883860ee --- /dev/null +++ b/vespalib/src/tests/text/lowercase/lowercase-table.dat @@ -0,0 +1,664 @@ +lowercase( 65 )= 97 +lowercase( 66 )= 98 +lowercase( 67 )= 99 +lowercase( 68 )= 100 +lowercase( 69 )= 101 +lowercase( 70 )= 102 +lowercase( 71 )= 103 +lowercase( 72 )= 104 +lowercase( 73 )= 105 +lowercase( 74 )= 106 +lowercase( 75 )= 107 +lowercase( 76 )= 108 +lowercase( 77 )= 109 +lowercase( 78 )= 110 +lowercase( 79 )= 111 +lowercase( 80 )= 112 +lowercase( 81 )= 113 +lowercase( 82 )= 114 +lowercase( 83 )= 115 +lowercase( 84 )= 116 +lowercase( 85 )= 117 +lowercase( 86 )= 118 +lowercase( 87 )= 119 +lowercase( 88 )= 120 +lowercase( 89 )= 121 +lowercase( 90 )= 122 +lowercase( 192 )= 224 +lowercase( 193 )= 225 +lowercase( 194 )= 226 +lowercase( 195 )= 227 +lowercase( 196 )= 228 +lowercase( 197 )= 229 +lowercase( 198 )= 230 +lowercase( 199 )= 231 +lowercase( 200 )= 232 +lowercase( 201 )= 233 +lowercase( 202 )= 234 +lowercase( 203 )= 235 +lowercase( 204 )= 236 +lowercase( 205 )= 237 +lowercase( 206 )= 238 +lowercase( 207 )= 239 +lowercase( 208 )= 240 +lowercase( 209 )= 241 +lowercase( 210 )= 242 +lowercase( 211 )= 243 +lowercase( 212 )= 244 +lowercase( 213 )= 245 +lowercase( 214 )= 246 +lowercase( 216 )= 248 +lowercase( 217 )= 249 +lowercase( 218 )= 250 +lowercase( 219 )= 251 +lowercase( 220 )= 252 +lowercase( 221 )= 253 +lowercase( 222 )= 254 +lowercase( 256 )= 257 +lowercase( 258 )= 259 +lowercase( 260 )= 261 +lowercase( 262 )= 263 +lowercase( 264 )= 265 +lowercase( 266 )= 267 +lowercase( 268 )= 269 +lowercase( 270 )= 271 +lowercase( 272 )= 273 +lowercase( 274 )= 275 +lowercase( 276 )= 277 +lowercase( 278 )= 279 +lowercase( 280 )= 281 +lowercase( 282 )= 283 +lowercase( 284 )= 285 +lowercase( 286 )= 287 +lowercase( 288 )= 289 +lowercase( 290 )= 291 +lowercase( 292 )= 293 +lowercase( 294 )= 295 +lowercase( 296 )= 297 +lowercase( 298 )= 299 +lowercase( 300 )= 301 +lowercase( 302 )= 303 +lowercase( 304 )= 105 +lowercase( 308 )= 309 +lowercase( 310 )= 311 +lowercase( 313 )= 314 +lowercase( 315 )= 316 +lowercase( 317 )= 318 +lowercase( 321 )= 322 +lowercase( 323 )= 324 +lowercase( 325 )= 326 +lowercase( 327 )= 328 +lowercase( 330 )= 331 +lowercase( 332 )= 333 +lowercase( 334 )= 335 +lowercase( 336 )= 337 +lowercase( 338 )= 339 +lowercase( 340 )= 341 +lowercase( 342 )= 343 +lowercase( 344 )= 345 +lowercase( 346 )= 347 +lowercase( 348 )= 349 +lowercase( 350 )= 351 +lowercase( 352 )= 353 +lowercase( 354 )= 355 +lowercase( 356 )= 357 +lowercase( 358 )= 359 +lowercase( 360 )= 361 +lowercase( 362 )= 363 +lowercase( 364 )= 365 +lowercase( 366 )= 367 +lowercase( 368 )= 369 +lowercase( 370 )= 371 +lowercase( 372 )= 373 +lowercase( 374 )= 375 +lowercase( 376 )= 255 +lowercase( 377 )= 378 +lowercase( 379 )= 380 +lowercase( 381 )= 382 +lowercase( 385 )= 595 +lowercase( 386 )= 387 +lowercase( 388 )= 389 +lowercase( 390 )= 596 +lowercase( 391 )= 392 +lowercase( 393 )= 598 +lowercase( 394 )= 599 +lowercase( 395 )= 396 +lowercase( 398 )= 477 +lowercase( 399 )= 601 +lowercase( 400 )= 603 +lowercase( 401 )= 402 +lowercase( 403 )= 608 +lowercase( 404 )= 611 +lowercase( 406 )= 617 +lowercase( 407 )= 616 +lowercase( 408 )= 409 +lowercase( 412 )= 623 +lowercase( 413 )= 626 +lowercase( 415 )= 629 +lowercase( 416 )= 417 +lowercase( 418 )= 419 +lowercase( 420 )= 421 +lowercase( 422 )= 640 +lowercase( 423 )= 424 +lowercase( 425 )= 643 +lowercase( 428 )= 429 +lowercase( 430 )= 648 +lowercase( 431 )= 432 +lowercase( 433 )= 650 +lowercase( 434 )= 651 +lowercase( 435 )= 436 +lowercase( 437 )= 438 +lowercase( 439 )= 658 +lowercase( 440 )= 441 +lowercase( 444 )= 445 +lowercase( 461 )= 462 +lowercase( 463 )= 464 +lowercase( 465 )= 466 +lowercase( 467 )= 468 +lowercase( 469 )= 470 +lowercase( 471 )= 472 +lowercase( 473 )= 474 +lowercase( 475 )= 476 +lowercase( 478 )= 479 +lowercase( 480 )= 481 +lowercase( 482 )= 483 +lowercase( 484 )= 485 +lowercase( 486 )= 487 +lowercase( 488 )= 489 +lowercase( 490 )= 491 +lowercase( 492 )= 493 +lowercase( 494 )= 495 +lowercase( 500 )= 501 +lowercase( 502 )= 405 +lowercase( 503 )= 447 +lowercase( 504 )= 505 +lowercase( 506 )= 507 +lowercase( 508 )= 509 +lowercase( 510 )= 511 +lowercase( 512 )= 513 +lowercase( 514 )= 515 +lowercase( 516 )= 517 +lowercase( 518 )= 519 +lowercase( 520 )= 521 +lowercase( 522 )= 523 +lowercase( 524 )= 525 +lowercase( 526 )= 527 +lowercase( 528 )= 529 +lowercase( 530 )= 531 +lowercase( 532 )= 533 +lowercase( 534 )= 535 +lowercase( 536 )= 537 +lowercase( 538 )= 539 +lowercase( 540 )= 541 +lowercase( 542 )= 543 +lowercase( 544 )= 414 +lowercase( 546 )= 547 +lowercase( 548 )= 549 +lowercase( 550 )= 551 +lowercase( 552 )= 553 +lowercase( 554 )= 555 +lowercase( 556 )= 557 +lowercase( 558 )= 559 +lowercase( 560 )= 561 +lowercase( 562 )= 563 +lowercase( 902 )= 940 +lowercase( 904 )= 941 +lowercase( 905 )= 942 +lowercase( 906 )= 943 +lowercase( 908 )= 972 +lowercase( 910 )= 973 +lowercase( 911 )= 974 +lowercase( 913 )= 945 +lowercase( 914 )= 946 +lowercase( 915 )= 947 +lowercase( 916 )= 948 +lowercase( 917 )= 949 +lowercase( 918 )= 950 +lowercase( 919 )= 951 +lowercase( 920 )= 952 +lowercase( 921 )= 953 +lowercase( 922 )= 954 +lowercase( 923 )= 955 +lowercase( 924 )= 956 +lowercase( 925 )= 957 +lowercase( 926 )= 958 +lowercase( 927 )= 959 +lowercase( 928 )= 960 +lowercase( 929 )= 961 +lowercase( 931 )= 963 +lowercase( 932 )= 964 +lowercase( 933 )= 965 +lowercase( 934 )= 966 +lowercase( 935 )= 967 +lowercase( 936 )= 968 +lowercase( 937 )= 969 +lowercase( 938 )= 970 +lowercase( 939 )= 971 +lowercase( 984 )= 985 +lowercase( 986 )= 987 +lowercase( 988 )= 989 +lowercase( 990 )= 991 +lowercase( 992 )= 993 +lowercase( 994 )= 995 +lowercase( 996 )= 997 +lowercase( 998 )= 999 +lowercase( 1000 )= 1001 +lowercase( 1002 )= 1003 +lowercase( 1004 )= 1005 +lowercase( 1006 )= 1007 +lowercase( 1015 )= 1016 +lowercase( 1018 )= 1019 +lowercase( 1024 )= 1104 +lowercase( 1025 )= 1105 +lowercase( 1026 )= 1106 +lowercase( 1027 )= 1107 +lowercase( 1028 )= 1108 +lowercase( 1029 )= 1109 +lowercase( 1030 )= 1110 +lowercase( 1031 )= 1111 +lowercase( 1032 )= 1112 +lowercase( 1033 )= 1113 +lowercase( 1034 )= 1114 +lowercase( 1035 )= 1115 +lowercase( 1036 )= 1116 +lowercase( 1037 )= 1117 +lowercase( 1038 )= 1118 +lowercase( 1039 )= 1119 +lowercase( 1040 )= 1072 +lowercase( 1041 )= 1073 +lowercase( 1042 )= 1074 +lowercase( 1043 )= 1075 +lowercase( 1044 )= 1076 +lowercase( 1045 )= 1077 +lowercase( 1046 )= 1078 +lowercase( 1047 )= 1079 +lowercase( 1048 )= 1080 +lowercase( 1049 )= 1081 +lowercase( 1050 )= 1082 +lowercase( 1051 )= 1083 +lowercase( 1052 )= 1084 +lowercase( 1053 )= 1085 +lowercase( 1054 )= 1086 +lowercase( 1055 )= 1087 +lowercase( 1056 )= 1088 +lowercase( 1057 )= 1089 +lowercase( 1058 )= 1090 +lowercase( 1059 )= 1091 +lowercase( 1060 )= 1092 +lowercase( 1061 )= 1093 +lowercase( 1062 )= 1094 +lowercase( 1063 )= 1095 +lowercase( 1064 )= 1096 +lowercase( 1065 )= 1097 +lowercase( 1066 )= 1098 +lowercase( 1067 )= 1099 +lowercase( 1068 )= 1100 +lowercase( 1069 )= 1101 +lowercase( 1070 )= 1102 +lowercase( 1071 )= 1103 +lowercase( 1120 )= 1121 +lowercase( 1122 )= 1123 +lowercase( 1124 )= 1125 +lowercase( 1126 )= 1127 +lowercase( 1128 )= 1129 +lowercase( 1130 )= 1131 +lowercase( 1132 )= 1133 +lowercase( 1134 )= 1135 +lowercase( 1136 )= 1137 +lowercase( 1138 )= 1139 +lowercase( 1140 )= 1141 +lowercase( 1142 )= 1143 +lowercase( 1144 )= 1145 +lowercase( 1146 )= 1147 +lowercase( 1148 )= 1149 +lowercase( 1150 )= 1151 +lowercase( 1152 )= 1153 +lowercase( 1162 )= 1163 +lowercase( 1164 )= 1165 +lowercase( 1166 )= 1167 +lowercase( 1168 )= 1169 +lowercase( 1170 )= 1171 +lowercase( 1172 )= 1173 +lowercase( 1174 )= 1175 +lowercase( 1176 )= 1177 +lowercase( 1178 )= 1179 +lowercase( 1180 )= 1181 +lowercase( 1182 )= 1183 +lowercase( 1184 )= 1185 +lowercase( 1186 )= 1187 +lowercase( 1188 )= 1189 +lowercase( 1190 )= 1191 +lowercase( 1192 )= 1193 +lowercase( 1194 )= 1195 +lowercase( 1196 )= 1197 +lowercase( 1198 )= 1199 +lowercase( 1200 )= 1201 +lowercase( 1202 )= 1203 +lowercase( 1204 )= 1205 +lowercase( 1206 )= 1207 +lowercase( 1208 )= 1209 +lowercase( 1210 )= 1211 +lowercase( 1212 )= 1213 +lowercase( 1214 )= 1215 +lowercase( 1217 )= 1218 +lowercase( 1219 )= 1220 +lowercase( 1221 )= 1222 +lowercase( 1223 )= 1224 +lowercase( 1225 )= 1226 +lowercase( 1227 )= 1228 +lowercase( 1229 )= 1230 +lowercase( 1232 )= 1233 +lowercase( 1234 )= 1235 +lowercase( 1236 )= 1237 +lowercase( 1238 )= 1239 +lowercase( 1240 )= 1241 +lowercase( 1242 )= 1243 +lowercase( 1244 )= 1245 +lowercase( 1246 )= 1247 +lowercase( 1248 )= 1249 +lowercase( 1250 )= 1251 +lowercase( 1252 )= 1253 +lowercase( 1254 )= 1255 +lowercase( 1256 )= 1257 +lowercase( 1258 )= 1259 +lowercase( 1260 )= 1261 +lowercase( 1262 )= 1263 +lowercase( 1264 )= 1265 +lowercase( 1266 )= 1267 +lowercase( 1268 )= 1269 +lowercase( 1272 )= 1273 +lowercase( 1280 )= 1281 +lowercase( 1282 )= 1283 +lowercase( 1284 )= 1285 +lowercase( 1286 )= 1287 +lowercase( 1288 )= 1289 +lowercase( 1290 )= 1291 +lowercase( 1292 )= 1293 +lowercase( 1294 )= 1295 +lowercase( 1329 )= 1377 +lowercase( 1330 )= 1378 +lowercase( 1331 )= 1379 +lowercase( 1332 )= 1380 +lowercase( 1333 )= 1381 +lowercase( 1334 )= 1382 +lowercase( 1335 )= 1383 +lowercase( 1336 )= 1384 +lowercase( 1337 )= 1385 +lowercase( 1338 )= 1386 +lowercase( 1339 )= 1387 +lowercase( 1340 )= 1388 +lowercase( 1341 )= 1389 +lowercase( 1342 )= 1390 +lowercase( 1343 )= 1391 +lowercase( 1344 )= 1392 +lowercase( 1345 )= 1393 +lowercase( 1346 )= 1394 +lowercase( 1347 )= 1395 +lowercase( 1348 )= 1396 +lowercase( 1349 )= 1397 +lowercase( 1350 )= 1398 +lowercase( 1351 )= 1399 +lowercase( 1352 )= 1400 +lowercase( 1353 )= 1401 +lowercase( 1354 )= 1402 +lowercase( 1355 )= 1403 +lowercase( 1356 )= 1404 +lowercase( 1357 )= 1405 +lowercase( 1358 )= 1406 +lowercase( 1359 )= 1407 +lowercase( 1360 )= 1408 +lowercase( 1361 )= 1409 +lowercase( 1362 )= 1410 +lowercase( 1363 )= 1411 +lowercase( 1364 )= 1412 +lowercase( 1365 )= 1413 +lowercase( 1366 )= 1414 +lowercase( 7680 )= 7681 +lowercase( 7682 )= 7683 +lowercase( 7684 )= 7685 +lowercase( 7686 )= 7687 +lowercase( 7688 )= 7689 +lowercase( 7690 )= 7691 +lowercase( 7692 )= 7693 +lowercase( 7694 )= 7695 +lowercase( 7696 )= 7697 +lowercase( 7698 )= 7699 +lowercase( 7700 )= 7701 +lowercase( 7702 )= 7703 +lowercase( 7704 )= 7705 +lowercase( 7706 )= 7707 +lowercase( 7708 )= 7709 +lowercase( 7710 )= 7711 +lowercase( 7712 )= 7713 +lowercase( 7714 )= 7715 +lowercase( 7716 )= 7717 +lowercase( 7718 )= 7719 +lowercase( 7720 )= 7721 +lowercase( 7722 )= 7723 +lowercase( 7724 )= 7725 +lowercase( 7726 )= 7727 +lowercase( 7728 )= 7729 +lowercase( 7730 )= 7731 +lowercase( 7732 )= 7733 +lowercase( 7734 )= 7735 +lowercase( 7736 )= 7737 +lowercase( 7738 )= 7739 +lowercase( 7740 )= 7741 +lowercase( 7742 )= 7743 +lowercase( 7744 )= 7745 +lowercase( 7746 )= 7747 +lowercase( 7748 )= 7749 +lowercase( 7750 )= 7751 +lowercase( 7752 )= 7753 +lowercase( 7754 )= 7755 +lowercase( 7756 )= 7757 +lowercase( 7758 )= 7759 +lowercase( 7760 )= 7761 +lowercase( 7762 )= 7763 +lowercase( 7764 )= 7765 +lowercase( 7766 )= 7767 +lowercase( 7768 )= 7769 +lowercase( 7770 )= 7771 +lowercase( 7772 )= 7773 +lowercase( 7774 )= 7775 +lowercase( 7776 )= 7777 +lowercase( 7778 )= 7779 +lowercase( 7780 )= 7781 +lowercase( 7782 )= 7783 +lowercase( 7784 )= 7785 +lowercase( 7786 )= 7787 +lowercase( 7788 )= 7789 +lowercase( 7790 )= 7791 +lowercase( 7792 )= 7793 +lowercase( 7794 )= 7795 +lowercase( 7796 )= 7797 +lowercase( 7798 )= 7799 +lowercase( 7800 )= 7801 +lowercase( 7802 )= 7803 +lowercase( 7804 )= 7805 +lowercase( 7806 )= 7807 +lowercase( 7808 )= 7809 +lowercase( 7810 )= 7811 +lowercase( 7812 )= 7813 +lowercase( 7814 )= 7815 +lowercase( 7816 )= 7817 +lowercase( 7818 )= 7819 +lowercase( 7820 )= 7821 +lowercase( 7822 )= 7823 +lowercase( 7824 )= 7825 +lowercase( 7826 )= 7827 +lowercase( 7828 )= 7829 +lowercase( 7840 )= 7841 +lowercase( 7842 )= 7843 +lowercase( 7844 )= 7845 +lowercase( 7846 )= 7847 +lowercase( 7848 )= 7849 +lowercase( 7850 )= 7851 +lowercase( 7852 )= 7853 +lowercase( 7854 )= 7855 +lowercase( 7856 )= 7857 +lowercase( 7858 )= 7859 +lowercase( 7860 )= 7861 +lowercase( 7862 )= 7863 +lowercase( 7864 )= 7865 +lowercase( 7866 )= 7867 +lowercase( 7868 )= 7869 +lowercase( 7870 )= 7871 +lowercase( 7872 )= 7873 +lowercase( 7874 )= 7875 +lowercase( 7876 )= 7877 +lowercase( 7878 )= 7879 +lowercase( 7880 )= 7881 +lowercase( 7882 )= 7883 +lowercase( 7884 )= 7885 +lowercase( 7886 )= 7887 +lowercase( 7888 )= 7889 +lowercase( 7890 )= 7891 +lowercase( 7892 )= 7893 +lowercase( 7894 )= 7895 +lowercase( 7896 )= 7897 +lowercase( 7898 )= 7899 +lowercase( 7900 )= 7901 +lowercase( 7902 )= 7903 +lowercase( 7904 )= 7905 +lowercase( 7906 )= 7907 +lowercase( 7908 )= 7909 +lowercase( 7910 )= 7911 +lowercase( 7912 )= 7913 +lowercase( 7914 )= 7915 +lowercase( 7916 )= 7917 +lowercase( 7918 )= 7919 +lowercase( 7920 )= 7921 +lowercase( 7922 )= 7923 +lowercase( 7924 )= 7925 +lowercase( 7926 )= 7927 +lowercase( 7928 )= 7929 +lowercase( 7944 )= 7936 +lowercase( 7945 )= 7937 +lowercase( 7946 )= 7938 +lowercase( 7947 )= 7939 +lowercase( 7948 )= 7940 +lowercase( 7949 )= 7941 +lowercase( 7950 )= 7942 +lowercase( 7951 )= 7943 +lowercase( 7960 )= 7952 +lowercase( 7961 )= 7953 +lowercase( 7962 )= 7954 +lowercase( 7963 )= 7955 +lowercase( 7964 )= 7956 +lowercase( 7965 )= 7957 +lowercase( 7976 )= 7968 +lowercase( 7977 )= 7969 +lowercase( 7978 )= 7970 +lowercase( 7979 )= 7971 +lowercase( 7980 )= 7972 +lowercase( 7981 )= 7973 +lowercase( 7982 )= 7974 +lowercase( 7983 )= 7975 +lowercase( 7992 )= 7984 +lowercase( 7993 )= 7985 +lowercase( 7994 )= 7986 +lowercase( 7995 )= 7987 +lowercase( 7996 )= 7988 +lowercase( 7997 )= 7989 +lowercase( 7998 )= 7990 +lowercase( 7999 )= 7991 +lowercase( 8008 )= 8000 +lowercase( 8009 )= 8001 +lowercase( 8010 )= 8002 +lowercase( 8011 )= 8003 +lowercase( 8012 )= 8004 +lowercase( 8013 )= 8005 +lowercase( 8025 )= 8017 +lowercase( 8027 )= 8019 +lowercase( 8029 )= 8021 +lowercase( 8031 )= 8023 +lowercase( 8040 )= 8032 +lowercase( 8041 )= 8033 +lowercase( 8042 )= 8034 +lowercase( 8043 )= 8035 +lowercase( 8044 )= 8036 +lowercase( 8045 )= 8037 +lowercase( 8046 )= 8038 +lowercase( 8047 )= 8039 +lowercase( 8072 )= 8064 +lowercase( 8073 )= 8065 +lowercase( 8074 )= 8066 +lowercase( 8075 )= 8067 +lowercase( 8076 )= 8068 +lowercase( 8077 )= 8069 +lowercase( 8078 )= 8070 +lowercase( 8079 )= 8071 +lowercase( 8088 )= 8080 +lowercase( 8089 )= 8081 +lowercase( 8090 )= 8082 +lowercase( 8091 )= 8083 +lowercase( 8092 )= 8084 +lowercase( 8093 )= 8085 +lowercase( 8094 )= 8086 +lowercase( 8095 )= 8087 +lowercase( 8104 )= 8096 +lowercase( 8105 )= 8097 +lowercase( 8106 )= 8098 +lowercase( 8107 )= 8099 +lowercase( 8108 )= 8100 +lowercase( 8109 )= 8101 +lowercase( 8110 )= 8102 +lowercase( 8111 )= 8103 +lowercase( 8120 )= 8112 +lowercase( 8121 )= 8113 +lowercase( 8122 )= 8048 +lowercase( 8124 )= 8115 +lowercase( 8136 )= 8050 +lowercase( 8138 )= 8052 +lowercase( 8140 )= 8131 +lowercase( 8152 )= 8144 +lowercase( 8153 )= 8145 +lowercase( 8154 )= 8054 +lowercase( 8168 )= 8160 +lowercase( 8169 )= 8161 +lowercase( 8170 )= 8058 +lowercase( 8172 )= 8165 +lowercase( 8184 )= 8056 +lowercase( 8186 )= 8060 +lowercase( 8188 )= 8179 +lowercase( 66560 )= 66600 +lowercase( 66561 )= 66601 +lowercase( 66562 )= 66602 +lowercase( 66563 )= 66603 +lowercase( 66564 )= 66604 +lowercase( 66565 )= 66605 +lowercase( 66566 )= 66606 +lowercase( 66567 )= 66607 +lowercase( 66568 )= 66608 +lowercase( 66569 )= 66609 +lowercase( 66570 )= 66610 +lowercase( 66571 )= 66611 +lowercase( 66572 )= 66612 +lowercase( 66573 )= 66613 +lowercase( 66574 )= 66614 +lowercase( 66575 )= 66615 +lowercase( 66576 )= 66616 +lowercase( 66577 )= 66617 +lowercase( 66578 )= 66618 +lowercase( 66579 )= 66619 +lowercase( 66580 )= 66620 +lowercase( 66581 )= 66621 +lowercase( 66582 )= 66622 +lowercase( 66583 )= 66623 +lowercase( 66584 )= 66624 +lowercase( 66585 )= 66625 +lowercase( 66586 )= 66626 +lowercase( 66587 )= 66627 +lowercase( 66588 )= 66628 +lowercase( 66589 )= 66629 +lowercase( 66590 )= 66630 +lowercase( 66591 )= 66631 +lowercase( 66592 )= 66632 +lowercase( 66593 )= 66633 +lowercase( 66594 )= 66634 +lowercase( 66595 )= 66635 +lowercase( 66596 )= 66636 +lowercase( 66597 )= 66637 +lowercase( 66598 )= 66638 +lowercase( 66599 )= 66639 diff --git a/vespalib/src/tests/text/lowercase/lowercase_test.cpp b/vespalib/src/tests/text/lowercase/lowercase_test.cpp new file mode 100644 index 00000000000..b226690790d --- /dev/null +++ b/vespalib/src/tests/text/lowercase/lowercase_test.cpp @@ -0,0 +1,38 @@ +// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +#include <vespa/fastos/fastos.h> +#include <vespa/log/log.h> +LOG_SETUP("lowercase_test"); +#include <vespa/vespalib/testkit/testapp.h> +#include <vespa/vespalib/text/lowercase.h> +#include <iostream> +#include <fstream> + +using namespace vespalib; + +TEST_SETUP(Test); + +int +Test::Main() +{ + TEST_INIT("lowercase_test"); + + EXPECT_EQUAL('a', LowerCase::convert('A')); + EXPECT_EQUAL((int8_t)'a', LowerCase::convert((int8_t)'A')); + EXPECT_EQUAL((uint8_t)'a', LowerCase::convert((uint8_t)'A')); + + std::ifstream yellData("yell-want.dat"); + + EXPECT_TRUE(yellData.good()); + + while (yellData.good()) { + uint32_t hi=0, lo=0; + yellData >> hi >> lo; + EXPECT_EQUAL(lo, LowerCase::convert(hi)); + if (lo != LowerCase::convert(hi)) { + printf("lc(%04X) -> %04X\n", hi, LowerCase::convert(hi)); + printf("yell(%04X) -> %04X\n", hi, lo); + } + // printf("lowercase( %d )= %d\n", hi, lo); + } + TEST_DONE(); +} diff --git a/vespalib/src/tests/text/lowercase/to-c-code.pl b/vespalib/src/tests/text/lowercase/to-c-code.pl new file mode 100755 index 00000000000..63a87fb56ae --- /dev/null +++ b/vespalib/src/tests/text/lowercase/to-c-code.pl @@ -0,0 +1,74 @@ +#!/usr/local/bin/perl +# Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. + +# input looks like: +# lowercase( 65 )= 97 + + +my %lowercase; + +my %blocks; + +while (<>) { + my ( $key, $value ) = m{lowercase. (\d+) .. (\d+)$} ; + $lowercase{$key} = $value; + + my $b = ( $key >> 8 ); + ++$blocks{$b}; +} + +@kl = keys %blocks; +@nkl = sort {$a <=> $b} @kl; + +print STDERR "blocks: " . join(" ", @nkl) . "\n"; + + +foreach $b ( @nkl ) +{ + if ( $b == 0 ) { + print "unsigned char\nLowerCase::lowercase_${b}_block[256] = {\n\t"; + } else { + print "\nuint32_t\nLowerCase::lowercase_${b}_block[256] = {\n\t"; + } + my $act = 0; + for ($i = 0; $i < 256; $i++) { + if ($act > 7) { + print ",\n\t"; + $act = 0; + } elsif ($act) { + print ","; + } + $n = ($b << 8) + $i; + $v = $lowercase{$n}; + if (defined $v) { + print "\t$v"; + die "too big value in table 0: $v\n" if ($v > 255 && $b == 0); + } else { + print "\t$n"; + } + ++$act; + } + print "\n\t};\n\n"; +} + +{ + print "\nuint32_t\nLowerCase::lowercase_0_5_block[0x600] = {\n\t"; + my $act = 0; + for ($i = 0; $i < 0x600; $i++) { + if ($act > 7) { + print ",\n\t"; + $act = 0; + } elsif ($act) { + print ","; + } + $n = $i; + $v = $lowercase{$n}; + if (defined $v) { + print "\t$v"; + } else { + print "\t$n"; + } + ++$act; + } + print "\n\t};\n\n"; +} diff --git a/vespalib/src/tests/text/lowercase/yell-want.dat b/vespalib/src/tests/text/lowercase/yell-want.dat new file mode 100644 index 00000000000..88ca4bc6972 --- /dev/null +++ b/vespalib/src/tests/text/lowercase/yell-want.dat @@ -0,0 +1,792 @@ +65 97 +66 98 +67 99 +68 100 +69 101 +70 102 +71 103 +72 104 +73 105 +74 106 +75 107 +76 108 +77 109 +78 110 +79 111 +80 112 +81 113 +82 114 +83 115 +84 116 +85 117 +86 118 +87 119 +88 120 +89 121 +90 122 +192 224 +193 225 +194 226 +195 227 +196 228 +197 229 +198 230 +199 231 +200 232 +201 233 +202 234 +203 235 +204 236 +205 237 +206 238 +207 239 +208 240 +209 241 +210 242 +211 243 +212 244 +213 245 +214 246 +216 248 +217 249 +218 250 +219 251 +220 252 +221 253 +222 254 +256 257 +258 259 +260 261 +262 263 +264 265 +266 267 +268 269 +270 271 +272 273 +274 275 +276 277 +278 279 +280 281 +282 283 +284 285 +286 287 +288 289 +290 291 +292 293 +294 295 +296 297 +298 299 +300 301 +302 303 +304 105 +308 309 +310 311 +313 314 +315 316 +317 318 +321 322 +323 324 +325 326 +327 328 +330 331 +332 333 +334 335 +336 337 +338 339 +340 341 +342 343 +344 345 +346 347 +348 349 +350 351 +352 353 +354 355 +356 357 +358 359 +360 361 +362 363 +364 365 +366 367 +368 369 +370 371 +372 373 +374 375 +376 255 +377 378 +379 380 +381 382 +385 595 +386 387 +388 389 +390 596 +391 392 +393 598 +394 599 +395 396 +398 477 +399 601 +400 603 +401 402 +403 608 +404 611 +406 617 +407 616 +408 409 +412 623 +413 626 +415 629 +416 417 +418 419 +420 421 +422 640 +423 424 +425 643 +428 429 +430 648 +431 432 +433 650 +434 651 +435 436 +437 438 +439 658 +440 441 +444 445 +461 462 +463 464 +465 466 +467 468 +469 470 +471 472 +473 474 +475 476 +478 479 +480 481 +482 483 +484 485 +486 487 +488 489 +490 491 +492 493 +494 495 +500 501 +502 405 +503 447 +504 505 +506 507 +508 509 +510 511 +512 513 +514 515 +516 517 +518 519 +520 521 +522 523 +524 525 +526 527 +528 529 +530 531 +532 533 +534 535 +536 537 +538 539 +540 541 +542 543 +544 414 +546 547 +548 549 +550 551 +552 553 +554 555 +556 557 +558 559 +560 561 +562 563 +570 11365 +571 572 +573 410 +574 11366 +577 578 +579 384 +580 649 +581 652 +582 583 +584 585 +586 587 +588 589 +590 591 +902 940 +904 941 +905 942 +906 943 +908 972 +910 973 +911 974 +913 945 +914 946 +915 947 +916 948 +917 949 +918 950 +919 951 +920 952 +921 953 +922 954 +923 955 +924 956 +925 957 +926 958 +927 959 +928 960 +929 961 +931 963 +932 964 +933 965 +934 966 +935 967 +936 968 +937 969 +938 970 +939 971 +984 985 +986 987 +988 989 +990 991 +992 993 +994 995 +996 997 +998 999 +1000 1001 +1002 1003 +1004 1005 +1006 1007 +1015 1016 +1018 1019 +1021 891 +1022 892 +1023 893 +1024 1104 +1025 1105 +1026 1106 +1027 1107 +1028 1108 +1029 1109 +1030 1110 +1031 1111 +1032 1112 +1033 1113 +1034 1114 +1035 1115 +1036 1116 +1037 1117 +1038 1118 +1039 1119 +1040 1072 +1041 1073 +1042 1074 +1043 1075 +1044 1076 +1045 1077 +1046 1078 +1047 1079 +1048 1080 +1049 1081 +1050 1082 +1051 1083 +1052 1084 +1053 1085 +1054 1086 +1055 1087 +1056 1088 +1057 1089 +1058 1090 +1059 1091 +1060 1092 +1061 1093 +1062 1094 +1063 1095 +1064 1096 +1065 1097 +1066 1098 +1067 1099 +1068 1100 +1069 1101 +1070 1102 +1071 1103 +1120 1121 +1122 1123 +1124 1125 +1126 1127 +1128 1129 +1130 1131 +1132 1133 +1134 1135 +1136 1137 +1138 1139 +1140 1141 +1142 1143 +1144 1145 +1146 1147 +1148 1149 +1150 1151 +1152 1153 +1162 1163 +1164 1165 +1166 1167 +1168 1169 +1170 1171 +1172 1173 +1174 1175 +1176 1177 +1178 1179 +1180 1181 +1182 1183 +1184 1185 +1186 1187 +1188 1189 +1190 1191 +1192 1193 +1194 1195 +1196 1197 +1198 1199 +1200 1201 +1202 1203 +1204 1205 +1206 1207 +1208 1209 +1210 1211 +1212 1213 +1214 1215 +1216 1231 +1217 1218 +1219 1220 +1221 1222 +1223 1224 +1225 1226 +1227 1228 +1229 1230 +1232 1233 +1234 1235 +1236 1237 +1238 1239 +1240 1241 +1242 1243 +1244 1245 +1246 1247 +1248 1249 +1250 1251 +1252 1253 +1254 1255 +1256 1257 +1258 1259 +1260 1261 +1262 1263 +1264 1265 +1266 1267 +1268 1269 +1270 1271 +1272 1273 +1274 1275 +1276 1277 +1278 1279 +1280 1281 +1282 1283 +1284 1285 +1286 1287 +1288 1289 +1290 1291 +1292 1293 +1294 1295 +1296 1297 +1298 1299 +1329 1377 +1330 1378 +1331 1379 +1332 1380 +1333 1381 +1334 1382 +1335 1383 +1336 1384 +1337 1385 +1338 1386 +1339 1387 +1340 1388 +1341 1389 +1342 1390 +1343 1391 +1344 1392 +1345 1393 +1346 1394 +1347 1395 +1348 1396 +1349 1397 +1350 1398 +1351 1399 +1352 1400 +1353 1401 +1354 1402 +1355 1403 +1356 1404 +1357 1405 +1358 1406 +1359 1407 +1360 1408 +1361 1409 +1362 1410 +1363 1411 +1364 1412 +1365 1413 +1366 1414 +4256 11520 +4257 11521 +4258 11522 +4259 11523 +4260 11524 +4261 11525 +4262 11526 +4263 11527 +4264 11528 +4265 11529 +4266 11530 +4267 11531 +4268 11532 +4269 11533 +4270 11534 +4271 11535 +4272 11536 +4273 11537 +4274 11538 +4275 11539 +4276 11540 +4277 11541 +4278 11542 +4279 11543 +4280 11544 +4281 11545 +4282 11546 +4283 11547 +4284 11548 +4285 11549 +4286 11550 +4287 11551 +4288 11552 +4289 11553 +4290 11554 +4291 11555 +4292 11556 +4293 11557 +7680 7681 +7682 7683 +7684 7685 +7686 7687 +7688 7689 +7690 7691 +7692 7693 +7694 7695 +7696 7697 +7698 7699 +7700 7701 +7702 7703 +7704 7705 +7706 7707 +7708 7709 +7710 7711 +7712 7713 +7714 7715 +7716 7717 +7718 7719 +7720 7721 +7722 7723 +7724 7725 +7726 7727 +7728 7729 +7730 7731 +7732 7733 +7734 7735 +7736 7737 +7738 7739 +7740 7741 +7742 7743 +7744 7745 +7746 7747 +7748 7749 +7750 7751 +7752 7753 +7754 7755 +7756 7757 +7758 7759 +7760 7761 +7762 7763 +7764 7765 +7766 7767 +7768 7769 +7770 7771 +7772 7773 +7774 7775 +7776 7777 +7778 7779 +7780 7781 +7782 7783 +7784 7785 +7786 7787 +7788 7789 +7790 7791 +7792 7793 +7794 7795 +7796 7797 +7798 7799 +7800 7801 +7802 7803 +7804 7805 +7806 7807 +7808 7809 +7810 7811 +7812 7813 +7814 7815 +7816 7817 +7818 7819 +7820 7821 +7822 7823 +7824 7825 +7826 7827 +7828 7829 +7840 7841 +7842 7843 +7844 7845 +7846 7847 +7848 7849 +7850 7851 +7852 7853 +7854 7855 +7856 7857 +7858 7859 +7860 7861 +7862 7863 +7864 7865 +7866 7867 +7868 7869 +7870 7871 +7872 7873 +7874 7875 +7876 7877 +7878 7879 +7880 7881 +7882 7883 +7884 7885 +7886 7887 +7888 7889 +7890 7891 +7892 7893 +7894 7895 +7896 7897 +7898 7899 +7900 7901 +7902 7903 +7904 7905 +7906 7907 +7908 7909 +7910 7911 +7912 7913 +7914 7915 +7916 7917 +7918 7919 +7920 7921 +7922 7923 +7924 7925 +7926 7927 +7928 7929 +7944 7936 +7945 7937 +7946 7938 +7947 7939 +7948 7940 +7949 7941 +7950 7942 +7951 7943 +7960 7952 +7961 7953 +7962 7954 +7963 7955 +7964 7956 +7965 7957 +7976 7968 +7977 7969 +7978 7970 +7979 7971 +7980 7972 +7981 7973 +7982 7974 +7983 7975 +7992 7984 +7993 7985 +7994 7986 +7995 7987 +7996 7988 +7997 7989 +7998 7990 +7999 7991 +8008 8000 +8009 8001 +8010 8002 +8011 8003 +8012 8004 +8013 8005 +8025 8017 +8027 8019 +8029 8021 +8031 8023 +8040 8032 +8041 8033 +8042 8034 +8043 8035 +8044 8036 +8045 8037 +8046 8038 +8047 8039 +8072 8064 +8073 8065 +8074 8066 +8075 8067 +8076 8068 +8077 8069 +8078 8070 +8079 8071 +8088 8080 +8089 8081 +8090 8082 +8091 8083 +8092 8084 +8093 8085 +8094 8086 +8095 8087 +8104 8096 +8105 8097 +8106 8098 +8107 8099 +8108 8100 +8109 8101 +8110 8102 +8111 8103 +8120 8112 +8121 8113 +8122 8048 +8124 8115 +8136 8050 +8138 8052 +8140 8131 +8152 8144 +8153 8145 +8154 8054 +8168 8160 +8169 8161 +8170 8058 +8172 8165 +8184 8056 +8186 8060 +8188 8179 +8498 8526 +8579 8580 +11264 11312 +11265 11313 +11266 11314 +11267 11315 +11268 11316 +11269 11317 +11270 11318 +11271 11319 +11272 11320 +11273 11321 +11274 11322 +11275 11323 +11276 11324 +11277 11325 +11278 11326 +11279 11327 +11280 11328 +11281 11329 +11282 11330 +11283 11331 +11284 11332 +11285 11333 +11286 11334 +11287 11335 +11288 11336 +11289 11337 +11290 11338 +11291 11339 +11292 11340 +11293 11341 +11294 11342 +11295 11343 +11296 11344 +11297 11345 +11298 11346 +11299 11347 +11300 11348 +11301 11349 +11302 11350 +11303 11351 +11304 11352 +11305 11353 +11306 11354 +11307 11355 +11308 11356 +11309 11357 +11310 11358 +11360 11361 +11362 619 +11363 7549 +11364 637 +11367 11368 +11369 11370 +11371 11372 +11381 11382 +11392 11393 +11394 11395 +11396 11397 +11398 11399 +11400 11401 +11402 11403 +11404 11405 +11406 11407 +11408 11409 +11410 11411 +11412 11413 +11414 11415 +11416 11417 +11418 11419 +11420 11421 +11422 11423 +11424 11425 +11426 11427 +11428 11429 +11430 11431 +11432 11433 +11434 11435 +11436 11437 +11438 11439 +11440 11441 +11442 11443 +11444 11445 +11446 11447 +11448 11449 +11450 11451 +11452 11453 +11454 11455 +11456 11457 +11458 11459 +11460 11461 +11462 11463 +11464 11465 +11466 11467 +11468 11469 +11470 11471 +11472 11473 +11474 11475 +11476 11477 +11478 11479 +11480 11481 +11482 11483 +11484 11485 +11486 11487 +11488 11489 +11490 11491 |