-/* $Id: safari1.c,v 1.5 2005-05-03 09:11:37 adam Exp $
+/* $Id: safari1.c,v 1.10 2006-03-31 15:58:05 adam Exp $
Copyright (C) 1995-2005
Index Data ApS
const char *myrec[] =
{
- "1234\n" /* first record */
+ "1234\n" /* ID first record */
+ /* chunk owner seq idx term */
"00024338 125060 1 any the\n"
"00024338 125060 2 any art\n"
- "00024338 125060 3 any of\n",
+ "00024338 125060 3 any mand\n",
"5678\n" /* other record - same owner id */
"00024339 125060 1 any den\n"
"1001\n" /* separate record */
"00024340 125062 1 any the\n"
- "00024340 125062 2 any gamle\n"
+ "00024340 125062 1 any the\n" /* DUP KEY, bug #432 */
+ "00024340 125062 2 any old\n"
"00024340 125062 3 any mand\n",
-
+
0
};
-int main(int argc, char **argv)
+static void tst(int argc, char **argv)
{
zint ids[3];
zint limits[3];
- ZebraService zs = start_up("safari.cfg", argc, argv);
+ ZebraService zs = tl_start_up("safari.cfg", argc, argv);
- ZebraHandle zh = zebra_open(zs);
+ ZebraHandle zh = zebra_open(zs, 0);
+
+ YAZ_CHECK(tl_init_data(zh, myrec));
- init_data(zh, myrec);
- do_query(__LINE__, zh, "@attr 1=any the", 3);
- do_query(__LINE__, zh, "@attr 1=any {the art}", 1);
- do_query(__LINE__, zh, "@attr 1=any {den gamle}", 1);
- do_query(__LINE__, zh, "@attr 1=any {the of}", 0);
+ YAZ_CHECK(tl_query(zh, "@attr 4=3 @attr 1=any the", 3));
+ YAZ_CHECK(tl_query(zh, "@attr 4=3 @attr 1=any @and the art", 1));
+ YAZ_CHECK(tl_query(zh, "@attr 4=3 @attr 1=any @and den gamle", 0));
+ YAZ_CHECK(tl_query(zh, "@attr 4=3 @attr 1=any @and the gamle", 1));
+ YAZ_CHECK(tl_query(zh, "@attr 4=3 @attr 1=any @and the of", 0));
/* verify that we get these records exactly */
ids[0] = 24338;
ids[1] = 24339;
ids[2] = 24340;
- meta_query(__LINE__, zh, "@attr 1=any the", 3, ids);
+ YAZ_CHECK(tl_meta_query(zh, "@attr 4=3 @attr 1=any mand", 3, ids));
/* limit to 125061 */
limits[0] = 125061;
limits[1] = 0;
zebra_set_limit(zh, 0, limits);
ids[0] = 24339;
- meta_query(__LINE__, zh, "@attr 1=any the", 1, ids);
+ YAZ_CHECK(tl_meta_query(zh, "@attr 4=3 @attr 1=any mand", 1, ids));
/* limit to 125060, 125061 */
limits[0] = 125061;
zebra_set_limit(zh, 0, limits);
ids[0] = 24338;
ids[1] = 24339;
- meta_query(__LINE__, zh, "@attr 1=any the", 2, ids);
+ YAZ_CHECK(tl_meta_query(zh, "@attr 4=3 @attr 1=any mand", 2, ids));
- /* all except 125061 */
- limits[0] = 125061;
+ /* all except 125062 */
+ limits[0] = 125062;
limits[1] = 0;
zebra_set_limit(zh, 1, limits);
ids[0] = 24338;
- ids[1] = 24340;
- meta_query(__LINE__, zh, "@attr 1=any the", 2, ids);
+ ids[1] = 24339;
+ YAZ_CHECK(tl_meta_query(zh, "@attr 4=3 @attr 1=any mand", 2, ids));
/* no limit */
zebra_set_limit(zh, 1, 0);
- do_query(__LINE__, zh, "@attr 1=any the", 3);
+ YAZ_CHECK(tl_query(zh, "@attr 4=3 @attr 1=any mand", 3));
- return close_down(zh, zs, 0);
+ YAZ_CHECK(tl_close_down(zh, zs));
}
+
+TL_MAIN