Ejemplo n.º 1
0
static void
data_cursor_all_top_left(void)
{
  ADD_DATA("all - top left - top left",
           gcut_list_string_new(
             "(07,03)", "(07,04)", "(07,05)", "(07,06)", "(07,07)", "(07,08)",
             "(08,03)", "(08,04)", "(08,05)", "(08,06)", "(08,07)", "(08,08)",
             "(09,03)", "(09,04)", "(09,05)", "(09,06)", "(09,07)", "(09,08)",
             "(10,03)", "(10,04)", "(10,05)", "(10,06)", "(10,07)", "(10,08)",
             "(11,03)", "(11,04)", "(11,05)", "(11,06)", "(11,07)", "(11,08)",
             "(12,03)", "(12,04)", "(12,05)", "(12,06)", "(12,07)", "(12,08)",
             NULL),
           12, 3,
           7, 8);

  ADD_DATA("all - top left - top right",
           gcut_list_string_new("(07,07)", "(07,08)",
                                "(08,07)", "(08,08)",
                                "(09,07)", "(09,08)",
                                "(10,07)", "(10,08)",
                                "(11,07)", "(11,08)",
                                "(12,07)", "(12,08)",
                                NULL),
           12, 7,
           7, 8);
}
static void
data_prefix_rk_offset_and_limit(void)
{
  ADD_DATA("offset",
           gcut_list_string_new("キノウ",
                                "キョウカ",
                                "クミコミ",
                                "クミコム",
                                "ケンサクヨウキュウ",
                                "コウセイド",
                                "コウソク",
                                "コンパクト",
                                NULL),
           "k",
           3, -1);
  ADD_DATA("limit",
           gcut_list_string_new("カネソナエタ",
                                "カノウ",
                                "ケンサク",
                                NULL),
           "k",
           0, 3);
  ADD_DATA("offset - limit",
           gcut_list_string_new("キノウ",
                                "キョウカ",
                                "ケンサクヨウキュウ",
                                "コウセイド",
                                "コウソク",
                                NULL),
           "k",
           3, 5);
}
Ejemplo n.º 3
0
static void
data_cursor_top(void)
{
  ADD_DATA("top - minimum",
           gcut_list_string_new("(11,07)", "(11,08)",
                                "(12,07)", "(12,08)",
                                NULL),
           12, 7,
           11, 8);

  ADD_DATA("top - left",
           gcut_list_string_new(
             "(11,03)", "(11,04)", "(11,05)", "(11,06)", "(11,07)", "(11,08)",
             "(12,03)", "(12,04)", "(12,05)", "(12,06)", "(12,07)", "(12,08)",
             NULL),
           12, 3,
           11, 8);

  ADD_DATA("top - right",
           gcut_list_string_new(
             "(11,07)", "(11,08)", "(11,09)", "(11,10)", "(11,11)", "(11,12)",
             "(12,07)", "(12,08)", "(12,09)", "(12,10)", "(12,11)", "(12,12)",
             NULL),
           12, 7,
           11, 12);
}
Ejemplo n.º 4
0
static void
data_cursor_bottom(void)
{
  ADD_DATA("bottom - minimum",
           gcut_list_string_new("(03,07)", "(03,08)",
                                "(04,07)", "(04,08)",
                                NULL),
           4, 7,
           3, 8);

  ADD_DATA("bottom - left",
           gcut_list_string_new(
             "(03,03)", "(03,04)", "(03,05)", "(03,06)", "(03,07)", "(03,08)",
             "(04,03)", "(04,04)", "(04,05)", "(04,06)", "(04,07)", "(04,08)",
             NULL),
           4, 3,
           3, 8);

  ADD_DATA("bottom - right",
           gcut_list_string_new(
             "(03,07)", "(03,08)", "(03,09)", "(03,10)", "(03,11)", "(03,12)",
             "(04,07)", "(04,08)", "(04,09)", "(04,10)", "(04,11)", "(04,12)",
             NULL),
           4, 7,
           3, 12);
}
Ejemplo n.º 5
0
static void
data_cursor_left(void)
{
  ADD_DATA("left - minimum",
           gcut_list_string_new("(07,03)", "(07,04)",
                                "(08,03)", "(08,04)",
                                NULL),
           8, 3,
           7, 4);

  ADD_DATA("left - bottom",
           gcut_list_string_new("(03,03)", "(03,04)",
                                "(04,03)", "(04,04)",
                                "(05,03)", "(05,04)",
                                "(06,03)", "(06,04)",
                                "(07,03)", "(07,04)",
                                "(08,03)", "(08,04)",
                                NULL),
           8, 3,
           3, 4);

  ADD_DATA("left - top",
           gcut_list_string_new("(07,03)", "(07,04)",
                                "(08,03)", "(08,04)",
                                "(09,03)", "(09,04)",
                                "(10,03)", "(10,04)",
                                "(11,03)", "(11,04)",
                                "(12,03)", "(12,04)",
                                NULL),
           12, 3,
           7, 4);
}
Ejemplo n.º 6
0
static void
data_cursor_right(void)
{
  ADD_DATA("right - minimum",
           gcut_list_string_new("(07,11)", "(07,12)",
                                "(08,11)", "(08,12)",
                                NULL),
           8, 11,
           7, 12);

  ADD_DATA("right - bottom",
           gcut_list_string_new("(03,11)", "(03,12)",
                                "(04,11)", "(04,12)",
                                "(05,11)", "(05,12)",
                                "(06,11)", "(06,12)",
                                "(07,11)", "(07,12)",
                                "(08,11)", "(08,12)",
                                NULL),
           8, 11,
           3, 12);

  ADD_DATA("right - top",
           gcut_list_string_new("(07,11)", "(07,12)",
                                "(08,11)", "(08,12)",
                                "(09,11)", "(09,12)",
                                "(10,11)", "(10,12)",
                                "(11,11)", "(11,12)",
                                "(12,11)", "(12,12)",
                                NULL),
           12, 11,
           7, 12);
}
Ejemplo n.º 7
0
static void
data_cursor_all_bottom_left(void)
{
  ADD_DATA("all - bottom left - bottom left",
           gcut_list_string_new(
             "(03,03)", "(03,04)", "(03,05)", "(03,06)", "(03,07)", "(03,08)",
             "(04,03)", "(04,04)", "(04,05)", "(04,06)", "(04,07)", "(04,08)",
             "(05,03)", "(05,04)", "(05,05)", "(05,06)", "(05,07)", "(05,08)",
             "(06,03)", "(06,04)", "(06,05)", "(06,06)", "(06,07)", "(06,08)",
             "(07,03)", "(07,04)", "(07,05)", "(07,06)", "(07,07)", "(07,08)",
             "(08,03)", "(08,04)", "(08,05)", "(08,06)", "(08,07)", "(08,08)",
             NULL),
           8, 3,
           3, 8);

  ADD_DATA("all - bottom left - top left",
           gcut_list_string_new(
             "(07,03)", "(07,04)", "(07,05)", "(07,06)", "(07,07)", "(07,08)",
             "(08,03)", "(08,04)", "(08,05)", "(08,06)", "(08,07)", "(08,08)",
             NULL),
           8, 3,
           7, 8);

  ADD_DATA("all - bottom left - bottom right",
           gcut_list_string_new("(03,07)", "(03,08)",
                                "(04,07)", "(04,08)",
                                "(05,07)", "(05,08)",
                                "(06,07)", "(06,08)",
                                "(07,07)", "(07,08)",
                                "(08,07)", "(08,08)",
                                NULL),
           8, 7,
           3, 8);
}
void
data_near_geo_point(void)
{
#define ADD_DATA(label, expected, min_size, max, offset, limit, flags)  \
  gcut_add_datum(label,                                                 \
                 "expected", G_TYPE_POINTER,                            \
                 expected, gcut_list_string_free,                       \
                 "min-size", G_TYPE_INT, min_size,                      \
                 "max", G_TYPE_STRING, max,                             \
                 "offset", G_TYPE_INT, offset,                          \
                 "limit", G_TYPE_INT, limit,                            \
                 "flags", G_TYPE_INT, flags,                            \
                 NULL)

  ADD_DATA("no limit",
           gcut_list_string_new(POINT(1, 2, 3,
                                      4, 5, 6),
                                POINT(1, 2, 3,
                                      7, 8, 9),
                                POINT(7, 8, 9,
                                      4, 5, 6),
                                POINT(88, 58, 58,
                                      178, 58, 58),
                                POINT(89, 59, 59,
                                      179, -59, -59),
                                POINT(89, 59, 59,
                                      179, 59, 59),
                                POINT(-89, -59, -59,
                                      179, 59, 59),
                                POINT(-89, -59, -59,
                                      -179, -59, -59),
                                POINT(-88, -58, -58,
                                      -178, -58, -58),
                                NULL),
           0,
           TAKEN_POINT(0, 0, 0,
                       0, 0, 0),
           0, -1,
           0);
  ADD_DATA("min-size",
           gcut_list_string_new(POINT(1, 2, 3,
                                      4, 5, 6),
                                POINT(1, 2, 3,
                                      7, 8, 9),
                                POINT(7, 8, 9,
                                      4, 5, 6),
                                NULL),
           1,
           TAKEN_POINT(0, 0, 0,
                       0, 0, 0),
           0, -1,
           0);

#undef ADD_DATA
}
Ejemplo n.º 9
0
void
test_font (void)
{
  PopplerFontInfo *font_info;
  PopplerFontsIter *iter;
  gint n_pages;

  document = load_document ("slide.pdf");
  n_pages = poppler_document_get_n_pages (document);
  font_info = poppler_font_info_new (document);
  while (poppler_font_info_scan (font_info, n_pages, &iter))
    {
      if (iter)
        {
          do
            {
              actual_font_names =
                g_list_append (actual_font_names,
                               g_strdup (poppler_fonts_iter_get_name (iter)));
            } while (poppler_fonts_iter_next (iter));
          poppler_fonts_iter_free (iter);
        }
    }
  g_object_unref (font_info);

  expected_font_names = gcut_list_string_new ("IPAPMincho",
                                              "LiberationSans-Regular",
                                              NULL);
  gcut_assert_equal_list_string (expected_font_names,
                                 actual_font_names);
}
Ejemplo n.º 10
0
void
data_cursor(void)
{
#define ADD_DATA(label, expected, offset, limit)                        \
  gcut_add_datum(label,                                                 \
                 "expected", G_TYPE_POINTER, expected, gcut_list_string_free, \
                 "offset", G_TYPE_INT, offset,                          \
                 "limit", G_TYPE_INT, limit,                            \
                 NULL)

  ADD_DATA("all",
           gcut_list_string_new("soba-taiyaki-ku",
                                "sazare",
                                "hirose-ya",
                                "taiyaki-kataoka",
                                "kuruma",
                                "nezu-no-taiyaki",
                                NULL),
           0, -1);
  ADD_DATA("offset",
           gcut_list_string_new("hirose-ya",
                                "taiyaki-kataoka",
                                "kuruma",
                                "nezu-no-taiyaki",
                                NULL),
           2, -1);
  ADD_DATA("limit",
           gcut_list_string_new("soba-taiyaki-ku",
                                "sazare",
                                "hirose-ya",
                                NULL),
           0, 3);
  ADD_DATA("offset - limit",
           gcut_list_string_new("hirose-ya",
                                "taiyaki-kataoka",
                                "kuruma",
                                NULL),
           2, 3);
  ADD_DATA("over offset",
           NULL,
           100, -1);
  ADD_DATA("0 limit",
           NULL,
           0, 0);

#undef ADD_DATA
}
Ejemplo n.º 11
0
void
data_prefix_search(void)
{
  cut_add_data("default - nonexistence",
               xfix_test_data_new(GRN_END_OF_DATA, NULL, "カッター", NULL, NULL),
               xfix_test_data_free,
               "default - short",
               xfix_test_data_new(GRN_SUCCESS,
                                  gcut_list_string_new("セナ", "セナ + Ruby",
                                                       "セナセナ", NULL),
                                  "セ", NULL, NULL),
               xfix_test_data_free,
               "default - exact",
               xfix_test_data_new(GRN_SUCCESS,
                                  gcut_list_string_new("セナ", "セナ + Ruby",
                                                       "セナセナ", NULL),
                                  "セナ", NULL, NULL),
               xfix_test_data_free,
               "default - long",
               xfix_test_data_new(GRN_END_OF_DATA, NULL, "セナセナセナ",
                                  NULL, NULL),
               xfix_test_data_free,
               "sis - nonexistence",
               xfix_test_data_new(GRN_END_OF_DATA, NULL, "カッター",
                                  set_sis, NULL),
               xfix_test_data_free,
               "sis - short",
               xfix_test_data_new(GRN_SUCCESS,
                                  gcut_list_string_new("セ", "セナ",
                                                       "セナ + Ruby",
                                                       "セナセ", "セナセナ",
                                                       NULL),
                                  "セ", set_sis, NULL),
               xfix_test_data_free,
               "sis - exact",
               xfix_test_data_new(GRN_SUCCESS,
                                  gcut_list_string_new("セナ",
                                                       "セナ + Ruby",
                                                       "セナセ", "セナセナ",
                                                       NULL),
                                  "セナ", set_sis, NULL),
               xfix_test_data_free,
               "sis - long",
               xfix_test_data_new(GRN_END_OF_DATA, NULL, "セナセナセナ",
                                  set_sis, NULL),
               xfix_test_data_free);
}
Ejemplo n.º 12
0
void
data_value(void)
{
  cut_add_data("default",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "",
                                                  "セナ",
                                                  "",
                                                  "セナ + Ruby",
                                                  "",
                                                  /* should be set two values */
                                                  "セナセナ",
                                                  "上書きされた値 -",
                                                  "ナセナセ",
                                                  "VALUE2",
                                                  NULL),
                             set_ascending, set_value_size, NULL),
               test_data_free,

               "sis",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "",
                                                  "セ",
                                                  "",
                                                  "セナ",
                                                  "",
                                                  "セナ + Ruby",
                                                  "",
                                                  /* should be set two values */
                                                  "セナセ",
                                                  "",
                                                  "セナセナ",
                                                  "上書きされた値 -",
                                                  "ナ",
                                                  "",
                                                  "ナ + Ruby",
                                                  "",
                                                  "ナセ",
                                                  "",
                                                  "ナセナ",
                                                  "",
                                                  "ナセナセ",
                                                  "VALUE2",
                                                  NULL),
                             set_ascending, set_value_size, set_sis, NULL),
               test_data_free);
}
static void
data_prefix_rk_xtsu(void)
{
  ADD_DATA("roman - ッ - full",
           gcut_list_string_new("インデックス",
                                NULL),
           "indekk",
           0, -1);
  ADD_DATA("roman - ッ - half",
           gcut_list_string_new("インデックス",
                                NULL),
           "indek",
           0, -1);
  ADD_DATA("roman - ック - half",
           gcut_list_string_new("インデックス",
                                NULL),
           "indekk",
           0, -1);
  ADD_DATA("roman - xtu - half",
           gcut_list_string_new("インデックス",
                                NULL),
           "indextu",
           0, -1);
  ADD_DATA("roman - xtsu - half",
           gcut_list_string_new("インデックス",
                                NULL),
           "indextsu",
           0, -1);
  ADD_DATA("roman - ltu - half",
           gcut_list_string_new("インデックス",
                                NULL),
           "indeltu",
           0, -1);
  ADD_DATA("roman - ltsu - half",
           gcut_list_string_new("インデックス",
                                NULL),
           "indeltsu",
           0, -1);
  ADD_DATA("ひらがな - ッ",
           gcut_list_string_new("インデックス",
                                NULL),
           "いんでっ",
           0, -1);
  ADD_DATA("カタカナ - ッ",
           gcut_list_string_new("インデックス",
                                NULL),
           "インデッ",
           0, -1);
}
Ejemplo n.º 14
0
void
data_allow_column(void)
{
#define ADD_DATUM(label, expected_keys, query)                          \
  gcut_add_datum(label,                                                 \
                 "expected_keys", G_TYPE_POINTER, expected_keys,        \
                 gcut_list_string_free,                                 \
                 "query", G_TYPE_STRING, query,                         \
                 NULL)

  ADD_DATUM("empty",
            gcut_list_string_new("fuga fuga", "hoge hoge", NULL),
            "size:9");
  ADD_DATUM("= - without ALLOW_UPDATE",
            gcut_list_string_new("=poyo_moge_hoge_moge_moge_moge", NULL),
            "body:=poyo_moge_hoge_moge_moge_moge");

#undef ADD_DATUM
}
Ejemplo n.º 15
0
void
data_next_with_one_entry(void)
{
  cut_add_data("ascending",
               test_data_new(gcut_list_string_new("セナ", NULL),
                             set_ascending, NULL),
               test_data_free,
               "ascending - sis",
               test_data_new(gcut_list_string_new("セナ", "ナ", NULL),
                             set_ascending, set_sis, NULL),
               test_data_free,
               "descending",
               test_data_new(gcut_list_string_new("セナ", NULL),
                             set_descending, NULL),
               test_data_free,
               "descending - sis",
               test_data_new(gcut_list_string_new("ナ", "セナ", NULL),
                             set_descending, set_sis, NULL),
               test_data_free);
}
Ejemplo n.º 16
0
void
data_delete(void)
{
  cut_add_data("default",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "セナ + Ruby",
                                                  "ナセナセ",
                                                  NULL),
                             set_ascending, NULL),
               test_data_free,
               "sis",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "セ",
                                                  "セナ + Ruby",
                                                  "セナセ",
                                                  "ナ + Ruby",
                                                  "ナセ",
                                                  "ナセナセ",
                                                  NULL),
                             set_ascending, set_sis, NULL),
               test_data_free);
}
static void
data_cursor_all(void)
{
  ADD_DATA("all - minimum",
           gcut_list_string_new("(07,07)", "(07,08)",
                                "(08,07)", "(08,08)",
                                NULL),
           8, 7,
           7, 8);

#define ALL_LONGITUDES(latitude)                        \
             "(" latitude ",00)", "(" latitude ",01)",  \
             "(" latitude ",02)", "(" latitude ",03)",  \
             "(" latitude ",04)", "(" latitude ",05)",  \
             "(" latitude ",06)", "(" latitude ",07)",  \
             "(" latitude ",08)", "(" latitude ",09)",  \
             "(" latitude ",10)", "(" latitude ",11)",  \
             "(" latitude ",12)", "(" latitude ",13)",  \
             "(" latitude ",14)", "(" latitude ",15)"

  ADD_DATA("all - maximum",
           gcut_list_string_new(
             ALL_LONGITUDES("00"), ALL_LONGITUDES("01"), ALL_LONGITUDES("02"),
             ALL_LONGITUDES("03"), ALL_LONGITUDES("04"), ALL_LONGITUDES("05"),
             ALL_LONGITUDES("06"), ALL_LONGITUDES("07"), ALL_LONGITUDES("08"),
             ALL_LONGITUDES("09"), ALL_LONGITUDES("10"), ALL_LONGITUDES("11"),
             ALL_LONGITUDES("12"), ALL_LONGITUDES("13"), ALL_LONGITUDES("14"),
             ALL_LONGITUDES("15"),
             NULL),
           15, 0,
           0, 15);

#undef ALL_LONGITUDES

  data_cursor_all_bottom_left();
  data_cursor_all_top_left();
  data_cursor_all_bottom_right();
  data_cursor_all_top_right();
}
Ejemplo n.º 18
0
static void
data_cursor_all_bottom_right(void)
{
  ADD_DATA("all - bottom right - bottom right",
           gcut_list_string_new(
             "(03,07)", "(03,08)", "(03,09)", "(03,10)", "(03,11)", "(03,12)",
             "(04,07)", "(04,08)", "(04,09)", "(04,10)", "(04,11)", "(04,12)",
             "(05,07)", "(05,08)", "(05,09)", "(05,10)", "(05,11)", "(05,12)",
             "(06,07)", "(06,08)", "(06,09)", "(06,10)", "(06,11)", "(06,12)",
             "(07,07)", "(07,08)", "(07,09)", "(07,10)", "(07,11)", "(07,12)",
             "(08,07)", "(08,08)", "(08,09)", "(08,10)", "(08,11)", "(08,12)",
             NULL),
           8, 7,
           3, 12);

  ADD_DATA("all - bottom right - top right",
           gcut_list_string_new(
             "(07,07)", "(07,08)", "(07,09)", "(07,10)", "(07,11)", "(07,12)",
             "(08,07)", "(08,08)", "(08,09)", "(08,10)", "(08,11)", "(08,12)",
             NULL),
           8, 7,
           7, 12);
}
static void
data_prefix_rk_basic(void)
{
  ADD_DATA("roman - 1byte",
           gcut_list_string_new("カネソナエタ",
                                "カノウ",
                                "キノウ",
                                "キョウカ",
                                "クミコミ",
                                "クミコム",
                                "ケンサク",
                                "ケンサクヨウキュウ",
                                "コウセイド",
                                "コウソク",
                                "コンパクト",
                                NULL),
           "k",
           0, -1);
  ADD_DATA("ひらがな",
           gcut_list_string_new("コウセイド",
                                "コウソク",
                                NULL),
           "こう",
           0, -1);
  ADD_DATA("カタカナ",
           gcut_list_string_new("コウセイド",
                                "コウソク",
                                NULL),
           "コウ",
           0, -1);
  ADD_DATA("ひらがな and カタカナ",
           gcut_list_string_new("コウセイド",
                                "コウソク",
                                NULL),
           "こウ",
           0, -1);
}
Ejemplo n.º 20
0
static void
data_cursor_all(void)
{
  ADD_DATA("all - minimum",
           gcut_list_string_new("(07,07)", "(07,08)",
                                "(08,07)", "(08,08)",
                                NULL),
           8, 7,
           7, 8);

  data_cursor_all_bottom_left();
  data_cursor_all_top_left();
  data_cursor_all_bottom_right();
  data_cursor_all_top_right();
}
Ejemplo n.º 21
0
static void
data_cursor_all_top_right(void)
{
  ADD_DATA("all - bottom right - top right",
           gcut_list_string_new(
             "(07,07)", "(07,08)", "(07,09)", "(07,10)", "(07,11)", "(07,12)",
             "(08,07)", "(08,08)", "(08,09)", "(08,10)", "(08,11)", "(08,12)",
             "(09,07)", "(09,08)", "(09,09)", "(09,10)", "(09,11)", "(09,12)",
             "(10,07)", "(10,08)", "(10,09)", "(10,10)", "(10,11)", "(10,12)",
             "(11,07)", "(11,08)", "(11,09)", "(11,10)", "(11,11)", "(11,12)",
             "(12,07)", "(12,08)", "(12,09)", "(12,10)", "(12,11)", "(12,12)",
             NULL),
           12, 7,
           7, 12);
}
Ejemplo n.º 22
0
void
data_allow_update(void)
{
#define ADD_DATUM(label, expected_keys, query)                          \
  gcut_add_datum(label,                                                 \
                 "expected_keys", G_TYPE_POINTER, expected_keys,        \
                 gcut_list_string_free,                                 \
                 "query", G_TYPE_STRING, query,                         \
                 NULL)

  ADD_DATUM("=",
            gcut_list_string_new("fuga fuga", "hoge", "hoge hoge", NULL),
            "size:<=9 size:=9 size:9");

#undef ADD_DATUM
}
static void
data_prefix_rk_xyu(void)
{
  ADD_DATA("roman - ュ - full",
           gcut_list_string_new("ヨウキュウ",
                                NULL),
           "youkyu",
           0, -1);
  ADD_DATA("roman - ュ - x",
           gcut_list_string_new("ヨウキュウ",
                                NULL),
           "youkix",
           0, -1);
  ADD_DATA("roman - ュ - xy",
           gcut_list_string_new("ヨウキュウ",
                                NULL),
           "youkixy",
           0, -1);
  ADD_DATA("roman - ュ - xyu",
           gcut_list_string_new("ヨウキュウ",
                                NULL),
           "youkixyu",
           0, -1);
  ADD_DATA("roman - ュ - ly",
           gcut_list_string_new("ヨウキュウ",
                                NULL),
           "youkily",
           0, -1);
  ADD_DATA("roman - ュ - lyu",
           gcut_list_string_new("ヨウキュウ",
                                NULL),
           "youkilyu",
           0, -1);
  ADD_DATA("ひらがな - ュ",
           gcut_list_string_new("ヨウキュウ",
                                NULL),
           "ようきゅ",
           0, -1);
  ADD_DATA("カタカナ - ュ",
           gcut_list_string_new("ヨウキュウ",
                                NULL),
           "ヨウキュ",
           0, -1);
}
Ejemplo n.º 24
0
void
test_open_invalid_chunk_file(void)
{
    grn_io *io;
    gchar *id_string;

    io = grn_io_create(context, path, 10, 10, 10, grn_io_auto, GRN_IO_EXPIRE_SEGMENT);
    cut_assert_not_null(io);
    id_string = grn_io_header(io);
    strcpy(id_string, "WRONG-ID");
    grn_io_close(context, io);

    io = grn_io_create(context, cut_take_printf("%s.c", path),
                       10, 10, 10, grn_io_auto, GRN_IO_EXPIRE_SEGMENT);
    cut_assert_not_null(io);
    grn_io_close(context, io);

    inverted_index = grn_ii_open(context, path, lexicon);
    cut_assert_null(inverted_index);

    expected_messages = gcut_list_string_new("file type unmatch", NULL);

    cut_assert_not_null(strstr(g_list_nth_data((GList *)messages(), 1), "file type unmatch"));
}
void
data_prefix_geo_point(void)
{
#define ADD_DATA(label, expected, min, min_size, offset, limit, flags)  \
  gcut_add_datum(label,                                                 \
                 "expected", G_TYPE_POINTER,                            \
                 expected, gcut_list_string_free,                       \
                 "min", G_TYPE_STRING, min,                             \
                 "min-size", G_TYPE_UINT, min_size,                     \
                 "offset", G_TYPE_INT, offset,                          \
                 "limit", G_TYPE_INT, limit,                            \
                 "flags", G_TYPE_INT, flags,                            \
                 NULL)

  ADD_DATA(
    "bit - ascending",
    gcut_list_string_new(
      "00000000 00111111 01010000 00000000 01111101 00010000 00011101 00001111",
      "00000000 00111111 01010000 00000001 00011110 01010001 01101001 00110000",
      "00000000 00111111 01010000 00001101 01011101 01011011 01011001 01010011",
      "00000000 00111111 01010000 00001111 00101011 00011111 00110011 00001001",
      "00000000 00111111 01010000 00010010 00110001 00001000 00001010 00110011",
      "00000000 00111111 01010000 00010010 00110001 00110111 01111000 01110000",
      "00000000 00111111 01010000 00011000 01110000 00001011 00101110 01001010",
      "00000000 00111111 01010000 00100000 00010111 01000111 00110100 00101010",
      "00000000 00111111 01010000 00100010 00100111 01000011 00000010 01101001",
      "00000000 00111111 01010000 00100010 00111011 01000000 00111000 01100100",
      "00000000 00111111 01010000 00100011 00000001 00000111 01011100 01110011",
      "00000000 00111111 01010000 00100011 00001010 00000000 00001101 00111010",
      "00000000 00111111 01010000 00100011 01100100 01011000 00000111 01110010",
      "00000000 00111111 01010000 00101101 00101000 00111111 01010110 00010110",
      "00000000 00111111 01010000 00101101 01111100 01101100 00111000 01111001",
      "00000000 00111111 01010000 00101110 01010011 00101001 00101001 00100011",
      "00000000 00111111 01010000 00101110 01110010 00111001 00011011 01101010",
      "00000000 00111111 01010000 00101111 00011000 01000110 00100101 01011110",
      "00000000 00111111 01010000 00101111 01001010 01101000 01000100 01100011",
      "00000000 00111111 01010000 00110000 01001010 01011100 01101010 00010001",
      "00000000 00111111 01010000 00111000 01100100 01101011 01111100 01111011",
      "00000000 00111111 01010000 00111001 00111101 00001001 00001011 01010011",
      "00000000 00111111 01010000 00111010 01011111 00000010 00101001 01010000",
      NULL),
    "00000000 00111111 01010000 00000000 00000000 00000000 00000000 00000000",
    26,
    0, -1,
    GRN_CURSOR_SIZE_BY_BIT);
  ADD_DATA(
    "bit - descending",
    gcut_list_string_new(
      "00000000 00111111 01010000 00111010 01011111 00000010 00101001 01010000",
      "00000000 00111111 01010000 00111001 00111101 00001001 00001011 01010011",
      "00000000 00111111 01010000 00111000 01100100 01101011 01111100 01111011",
      "00000000 00111111 01010000 00110000 01001010 01011100 01101010 00010001",
      "00000000 00111111 01010000 00101111 01001010 01101000 01000100 01100011",
      "00000000 00111111 01010000 00101111 00011000 01000110 00100101 01011110",
      "00000000 00111111 01010000 00101110 01110010 00111001 00011011 01101010",
      "00000000 00111111 01010000 00101110 01010011 00101001 00101001 00100011",
      "00000000 00111111 01010000 00101101 01111100 01101100 00111000 01111001",
      "00000000 00111111 01010000 00101101 00101000 00111111 01010110 00010110",
      "00000000 00111111 01010000 00100011 01100100 01011000 00000111 01110010",
      "00000000 00111111 01010000 00100011 00001010 00000000 00001101 00111010",
      "00000000 00111111 01010000 00100011 00000001 00000111 01011100 01110011",
      "00000000 00111111 01010000 00100010 00111011 01000000 00111000 01100100",
      "00000000 00111111 01010000 00100010 00100111 01000011 00000010 01101001",
      "00000000 00111111 01010000 00100000 00010111 01000111 00110100 00101010",
      "00000000 00111111 01010000 00011000 01110000 00001011 00101110 01001010",
      "00000000 00111111 01010000 00010010 00110001 00110111 01111000 01110000",
      "00000000 00111111 01010000 00010010 00110001 00001000 00001010 00110011",
      "00000000 00111111 01010000 00001111 00101011 00011111 00110011 00001001",
      "00000000 00111111 01010000 00001101 01011101 01011011 01011001 01010011",
      "00000000 00111111 01010000 00000001 00011110 01010001 01101001 00110000",
      "00000000 00111111 01010000 00000000 01111101 00010000 00011101 00001111",
      NULL),
    "00000000 00111111 01010000 00000000 00000000 00000000 00000000 00000000",
    26,
    0, -1,
    GRN_CURSOR_SIZE_BY_BIT | GRN_CURSOR_DESCENDING);
  ADD_DATA(
    "bit - different prefix",
    gcut_list_string_new(
      "00000000 00111101 01010101 00111101 01110000 01001011 01110011 00101100",
      NULL),
    "00000000 00111101 01010101 00111101 01110000 00000000 00000000 00000001",
    38,
    0, -1,
    GRN_CURSOR_SIZE_BY_BIT);
  ADD_DATA(
    "bit - border prefix",
    gcut_list_string_new(
      "00000000 00111101 00000101 00111101 01110000 01001011 01110011 00101100",
      NULL),
    "00000000 00111101 00000101 00111101 01110000 00000000 00000000 00000001",
    18,
    0, -1,
    GRN_CURSOR_SIZE_BY_BIT);

#undef ADD_DATA
}
void
data_prefix_short_text(void)
{
#define ADD_DATA(label, expected, min, offset, limit, flags)    \
  gcut_add_datum(label,                                         \
                 "expected", G_TYPE_POINTER,                    \
                 expected, gcut_list_string_free,               \
                 "min", G_TYPE_STRING, min,                     \
                 "offset", G_TYPE_INT, offset,                  \
                 "limit", G_TYPE_INT, limit,                    \
                 "flags", G_TYPE_INT, flags,                    \
                 NULL)

  ADD_DATA("alphabet - ascending",
           gcut_list_string_new("abra", "abracada", "abracadabra", "abubu",
                                NULL),
           "ab",
           0, -1,
           0);
  ADD_DATA("alphabet - descending",
           gcut_list_string_new("abubu", "abracadabra", "abracada", "abra",
                                NULL),
           "ab",
           0, -1,
           GRN_CURSOR_DESCENDING);
  ADD_DATA("alphabet - ascending - greater than",
           gcut_list_string_new("abracada", "abracadabra", NULL),
           "abra",
           0, -1,
           GRN_CURSOR_GT);
  ADD_DATA("alphabet - descending - greater than",
           gcut_list_string_new("abracadabra", "abracada", NULL),
           "abra",
           0, -1,
           GRN_CURSOR_DESCENDING | GRN_CURSOR_GT);
  ADD_DATA("alphabet - offset and limit",
           gcut_list_string_new("abracadabra", NULL),
           "ab",
           2, 1,
           0);
  ADD_DATA("no match",
           NULL,
           "bubuzera",
           0, -1,
           0);
  ADD_DATA("no match - common prefix",
           NULL,
           "abraura",
           0, -1,
           0);
  ADD_DATA("empty key",
           gcut_list_string_new("abra", "abracada", "abracadabra", "abubu",
                                "あ", "ああ", "あああ", "い",
                                NULL),
           "",
           0, -1,
           0);
  {
    gchar *long_key;
    long_key = g_alloca(GRN_TABLE_MAX_KEY_SIZE + 2);
    memset(long_key, 'a', GRN_TABLE_MAX_KEY_SIZE + 1);
    ADD_DATA("long key",
             NULL,
             long_key,
             0, -1,
             0);
  }

#undef ADD_DATA
}
Ejemplo n.º 27
0
static void
add_data_descending_sis(void)
{
  cut_add_data("descending - sis",
               test_data_new(gcut_list_string_new("ナセナセ",
                                                  "ナセナ",
                                                  "ナセ",
                                                  "ナ + Ruby",
                                                  "ナ",
                                                  "セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  "セ",
                                                  "Groonga",
                                                  NULL),
                             set_descending, set_sis, NULL),
               test_data_free,
               "descending - max - sis",
               test_data_new(gcut_list_string_new("セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  "セ",
                                                  "Groonga",
                                                  NULL),
                             set_descending, set_max, set_sis, NULL),
               test_data_free,
               "descending - max - gt - sis",
               test_data_new(gcut_list_string_new("セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  "セ",
                                                  "Groonga",
                                                  NULL),
                             set_descending, set_max, set_gt, set_sis,
                             NULL),
               test_data_free,
               "descending - max - lt - sis",
               test_data_new(gcut_list_string_new("セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  "セ",
                                                  "Groonga",
                                                  NULL),
                             set_descending, set_max, set_lt, set_sis,
                             NULL),
               test_data_free,
               "descending - max - gt - lt - sis",
               test_data_new(gcut_list_string_new("セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  "セ",
                                                  "Groonga",
                                                  NULL),
                             set_descending, set_max, set_gt, set_lt,
                             set_sis, NULL),
               test_data_free,
               "descending - min - sis",
               test_data_new(gcut_list_string_new("ナセナセ",
                                                  "ナセナ",
                                                  "ナセ",
                                                  "ナ + Ruby",
                                                  "ナ",
                                                  "セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  NULL),
                             set_descending, set_min, set_sis, NULL),
               test_data_free,
               "descending - min - gt - sis",
               test_data_new(gcut_list_string_new("ナセナセ",
                                                  "ナセナ",
                                                  "ナセ",
                                                  "ナ + Ruby",
                                                  "ナ",
                                                  "セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  NULL),
                             set_descending, set_min, set_gt, set_sis,
                             NULL),
               test_data_free,
               "descending - min - lt - sis",
               test_data_new(gcut_list_string_new("ナセナセ",
                                                  "ナセナ",
                                                  "ナセ",
                                                  "ナ + Ruby",
                                                  "ナ",
                                                  "セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  NULL),
                             set_descending, set_min, set_lt, set_sis,
                             NULL),
               test_data_free,
               "descending - min - gt - lt - sis",
               test_data_new(gcut_list_string_new("ナセナセ",
                                                  "ナセナ",
                                                  "ナセ",
                                                  "ナ + Ruby",
                                                  "ナ",
                                                  "セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  NULL),
                             set_descending, set_min, set_gt, set_lt,
                             set_sis, NULL),
               test_data_free,
               "descending - max - min - sis",
               test_data_new(gcut_list_string_new("セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  NULL),
                             set_descending, set_max, set_min,
                             set_sis, NULL),
               test_data_free,
               "descending - max - min - gt - sis",
               test_data_new(gcut_list_string_new("セナセナ",
                                                  "セナセ",
                                                  "セナ + Ruby",
                                                  NULL),
                             set_descending, set_max, set_min, set_gt,
                             set_sis, NULL),
               test_data_free,
               "descending - max - min - lt - sis",
               test_data_new(gcut_list_string_new("セナセ",
                                                  "セナ + Ruby",
                                                  "セナ",
                                                  NULL),
                             set_descending, set_max, set_min, set_lt,
                             set_sis, NULL),
               test_data_free,
               "descending - max - min - gt - lt - sis",
               test_data_new(gcut_list_string_new("セナセ",
                                                  "セナ + Ruby",
                                                  NULL),
                             set_descending, set_max, set_min, set_gt,
                             set_lt, set_sis, NULL),
               test_data_free,
               "descending - high-min - sis",
               test_data_new(gcut_list_string_new("ナセナセ",
                                                  "ナセナ",
                                                  "ナセ",
                                                  "ナ + Ruby",
                                                  "ナ",
                                                  "セナセナ",
                                                  NULL),
                             set_descending, set_min_high, set_sis, NULL),
               test_data_free,
               "descending - low-max - sis",
               test_data_new(gcut_list_string_new("セナ",
                                                  "セ",
                                                  "Groonga",
                                                  NULL),
                             set_descending, set_max_low, set_sis, NULL),
               test_data_free,
               "descending - high-min - low-max - sis",
               test_data_new(NULL,
                             set_descending, set_min_high, set_max_low, set_sis,
                             NULL),
               test_data_free);
}
Ejemplo n.º 28
0
static void
add_data_ascending(void)
{
  cut_add_data("ascending",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "セナ",
                                                  "セナ + Ruby",
                                                  "セナセナ",
                                                  "ナセナセ",
                                                  NULL),
                             set_ascending, NULL),
               test_data_free,
               "ascending - max",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "セナ",
                                                  "セナ + Ruby",
                                                  "セナセナ",
                                                  NULL),
                             set_ascending, set_max, NULL),
               test_data_free,
               "ascending - max - gt",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "セナ",
                                                  "セナ + Ruby",
                                                  "セナセナ",
                                                  NULL),
                             set_ascending, set_max, set_gt, NULL),
               test_data_free,
               "ascending - max - lt",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "セナ",
                                                  "セナ + Ruby",
                                                  NULL),
                             set_ascending, set_max, set_lt, NULL),
               test_data_free,
               "ascending - max - gt - lt",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "セナ",
                                                  "セナ + Ruby",
                                                  NULL),
                             set_ascending, set_max, set_gt, set_lt, NULL),
               test_data_free,
               "ascending - min",
               test_data_new(gcut_list_string_new("セナ",
                                                  "セナ + Ruby",
                                                  "セナセナ",
                                                  "ナセナセ",
                                                  NULL),
                             set_ascending, set_min, NULL),
               test_data_free,
               "ascending - min - gt",
               test_data_new(gcut_list_string_new("セナ + Ruby",
                                                  "セナセナ",
                                                  "ナセナセ",
                                                  NULL),
                             set_ascending, set_min, set_gt, NULL),
               test_data_free,
               "ascending - min - lt",
               test_data_new(gcut_list_string_new("セナ",
                                                  "セナ + Ruby",
                                                  "セナセナ",
                                                  "ナセナセ",
                                                  NULL),
                             set_ascending, set_min, set_lt, NULL),
               test_data_free,
               "ascending - min - gt - lt",
               test_data_new(gcut_list_string_new("セナ + Ruby",
                                                  "セナセナ",
                                                  "ナセナセ",
                                                  NULL),
                             set_ascending, set_min, set_gt, set_lt, NULL),
               test_data_free,
               "ascending - max - min",
               test_data_new(gcut_list_string_new("セナ",
                                                  "セナ + Ruby",
                                                  "セナセナ",
                                                  NULL),
                             set_ascending, set_max, set_min, NULL),
               test_data_free,
               "ascending - max - min - gt",
               test_data_new(gcut_list_string_new("セナ + Ruby",
                                                  "セナセナ",
                                                  NULL),
                             set_ascending, set_max, set_min, set_gt,
                             NULL),
               test_data_free,
               "ascending - max - min - lt",
               test_data_new(gcut_list_string_new("セナ",
                                                  "セナ + Ruby",
                                                  NULL),
                             set_ascending, set_max, set_min, set_lt,
                             NULL),
               test_data_free,
               "ascending - max - min - gt - lt",
               test_data_new(gcut_list_string_new("セナ + Ruby",
                                                  NULL),
                             set_ascending, set_max, set_min, set_gt,
                             set_lt, NULL),
               test_data_free,
               "ascending - high-min",
               test_data_new(gcut_list_string_new("セナセナ",
                                                  "ナセナセ",
                                                  NULL),
                             set_ascending, set_min_high, NULL),
               test_data_free,
               "ascending - low-max",
               test_data_new(gcut_list_string_new("Groonga",
                                                  "セナ",
                                                  NULL),
                             set_ascending, set_max_low, NULL),
               test_data_free,
               "ascending - high-min - low-max",
               test_data_new(NULL,
                             set_ascending, set_min_high, set_max_low, NULL),
               test_data_free);
}
Ejemplo n.º 29
0
void
data_near_geo_point(void)
{
#define ADD_DATA(label, expected, base, offset, limit)                  \
  gcut_add_datum(label,                                                 \
                 "expected", G_TYPE_POINTER,                            \
                 expected, g_list_free,                                 \
                 "base", G_TYPE_INT, base,                              \
                 "offset", G_TYPE_INT, offset,                          \
                 "limit", G_TYPE_INT, limit,                            \
                 NULL)

  ADD_DATA("no limit",
           gcut_list_string_new(INSPECTED_POINT(-1, -1, -1,
                                                0, 0, 0),
                                INSPECTED_POINT(1, 0, 0,
                                                1, 0, 0),
                                INSPECTED_POINT(-1, 0, 0,
                                                1, 1, 1),
                                INSPECTED_POINT(1, 1, 0,
                                                1, 1, 0),
                                INSPECTED_POINT(1, 1, 1,
                                                1, 1, 1),
                                INSPECTED_POINT(1, 1, 10,
                                                -1, -1, -1),
                                INSPECTED_POINT(-1, -2, -1,
                                                -1, -1, -1),
                                INSPECTED_POINT(90, 0, 0,
                                                0, 0, 0),
                                INSPECTED_POINT(-90, 0, 0,
                                                1, 0, 0),
                                INSPECTED_POINT(-2, -1, -1,
                                                -179, -59, -59),
                                INSPECTED_POINT(2, 1, 1,
                                                180, 0, 0),
                                INSPECTED_POINT(1, 2, 1,
                                                -179, -59, -59),
                                INSPECTED_POINT(-1, -1, -1,
                                                180, 0, 0),
                                INSPECTED_POINT(0, 0, 0,
                                                -179, -59, -59),
                                INSPECTED_POINT(0, 0, 0,
                                                180, 0, 0),
                                NULL),
           TAKEN_POINT(0, 0, 0,
                       0, 0, 0),
           0, -1);

  ADD_DATA("limit",
           gcut_list_string_new(INSPECTED_POINT(-1, -1, -1,
                                                0, 0, 0),
                                INSPECTED_POINT(1, 0, 0,
                                                1, 0, 0),
                                INSPECTED_POINT(-1, 0, 0,
                                                1, 1, 1),
                                NULL),
           TAKEN_POINT(0, 0, 0,
                       0, 0, 0),
           0, 3);

  ADD_DATA("offset - limit",
           gcut_list_string_new(INSPECTED_POINT(-1, 0, 0,
                                                1, 1, 1),
                                INSPECTED_POINT(1, 1, 0,
                                                1, 1, 0),
                                INSPECTED_POINT(1, 1, 1,
                                                1, 1, 1),
                                NULL),
           TAKEN_POINT(0, 0, 0,
                       0, 0, 0),
           2, 3);

#undef ADD_DATA
}