X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=src%2Ftest_record.c;h=f9014f7db8831236cb1edd0c388845b2618bb5e8;hb=5b4ea0cf66dd82c871ed7d69a5801d78789087b2;hp=54317e1f500928164569ab585c4d2effd9cbe2f3;hpb=3ce61c3b5cc0d80fa8d095662ef7a5d1ed13c387;p=pazpar2-moved-to-github.git diff --git a/src/test_record.c b/src/test_record.c index 54317e1..f9014f7 100644 --- a/src/test_record.c +++ b/src/test_record.c @@ -1,7 +1,5 @@ -/* $Id: test_record.c,v 1.2 2007-04-24 13:50:07 marc Exp $ - Copyright (c) 2006-2007, Index Data. - -This file is part of Pazpar2. +/* This file is part of Pazpar2. + Copyright (C) 2006-2009 Index Data Pazpar2 is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free @@ -14,24 +12,13 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with Pazpar2; see the file LICENSE. If not, write to the -Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA -02111-1307, USA. - */ +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +*/ #if HAVE_CONFIG_H -#include "cconfig.h" +#include #endif #define USE_TIMING 0 @@ -41,106 +28,116 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include - -//#include "pazpar2.h" -#include "config.h" +#include "pazpar2_config.h" #include "record.h" -//#include "pazpar2.h" - void test_record(int argc, char **argv) { - NMEM nmem = nmem_create(); - - struct conf_service *service = 0; - struct record *record = 0; + NMEM nmem = nmem_create(); - struct client *client = 0; + struct conf_service *service = 0; + struct record *record = 0; - service = conf_service_create(nmem, 4, 3); - YAZ_CHECK(service); + struct client *client = 0; + char * bla = "blabla"; + union data_types data_text; + union data_types data_num; + struct record_metadata * tmp_md = 0; - YAZ_CHECK(conf_service_add_metadata(nmem, service, 0, "title", - Metadata_type_generic, Metadata_merge_unique, - 1, 1, 1, 0)); + data_text.text.disp = bla; + data_text.text.sort = bla; - YAZ_CHECK(conf_service_add_metadata(nmem, service, 1, "author", - Metadata_type_generic, Metadata_merge_longest, - 1, 1, 1, 0)); + data_num.number.min = 2; + data_num.number.max = 5; - YAZ_CHECK(conf_service_add_metadata(nmem, service, 2, "isbn", - Metadata_type_number, Metadata_merge_no, - 1, 1, 1, 0)); - YAZ_CHECK(conf_service_add_metadata(nmem, service, 3, "year", - Metadata_type_year, Metadata_merge_range, - 1, 1, 1, 0)); - - YAZ_CHECK(conf_service_add_sortkey(nmem, service, 0, "relevance", - Metadata_sortkey_relevance)); - - YAZ_CHECK(conf_service_add_sortkey(nmem, service, 1, "title", - Metadata_sortkey_string)); + service = conf_service_create(0, 4, 3, 0); + YAZ_CHECK(service); + + YAZ_CHECK(conf_service_add_metadata( + service, 0, "title", + Metadata_type_generic, Metadata_merge_unique, + Metadata_setting_no, 1, 1, 1, 0, + Metadata_mergekey_no + )); + + YAZ_CHECK(conf_service_add_metadata( + service, 1, "author", + Metadata_type_generic, Metadata_merge_longest, + Metadata_setting_no,1, 1, 1, 0, + Metadata_mergekey_no)); + + YAZ_CHECK(conf_service_add_metadata( + service, 2, "isbn", + Metadata_type_number, Metadata_merge_no, + Metadata_setting_no, 1, 1, 1, 0, + Metadata_mergekey_no)); + + YAZ_CHECK(conf_service_add_metadata( + service, 3, "year", + Metadata_type_year, Metadata_merge_range, + Metadata_setting_no, 1, 1, 1, 0, + Metadata_mergekey_no)); + + YAZ_CHECK(conf_service_add_sortkey( + service, 0, "relevance", + Metadata_sortkey_relevance)); - YAZ_CHECK(conf_service_add_sortkey(nmem, service, 2, "year", - Metadata_sortkey_numeric)); + YAZ_CHECK(conf_service_add_sortkey( + service, 1, "title", + Metadata_sortkey_string)); - - - - // testing record things - record = record_create(nmem, 4, 3); - YAZ_CHECK(record); - - // why on earth do we have a client dangeling from the record ?? - record->client = client; - - char * bla = "blabla"; - union data_types data_text; - data_text.text = bla; - + YAZ_CHECK(conf_service_add_sortkey( + service, 2, "year", + Metadata_sortkey_numeric)); - union data_types data_num; - data_num.number.min = 2; - data_num.number.max = 5; - struct record_metadata * tmp_md = 0; - tmp_md = record_metadata_insert(nmem, &(record->metadata[0]), data_text); - YAZ_CHECK(tmp_md); - YAZ_CHECK(0 == record->metadata[0]->next); - tmp_md = record_metadata_insert(nmem, &(record->metadata[0]->next), - data_text); - YAZ_CHECK(tmp_md); - YAZ_CHECK(record->metadata[0]->next); - YAZ_CHECK(record_add_metadata_field_id(nmem, record, 3, data_num)); - YAZ_CHECK(0 == record->metadata[3]->next); - YAZ_CHECK(record_add_metadata_field_id(nmem, record, 3, data_num)); - YAZ_CHECK(record->metadata[3]->next); + // testing record things + record = record_create(nmem, 4, 3, client, 1); + YAZ_CHECK(record); + + tmp_md = record_metadata_insert(nmem, &(record->metadata[0]), data_text); + YAZ_CHECK(tmp_md); + YAZ_CHECK(0 == record->metadata[0]->next); - YAZ_CHECK(record_add_metadata(nmem, record, service, "author", data_text)); - YAZ_CHECK(0 == record->metadata[1]->next); - YAZ_CHECK(record_add_metadata(nmem, record, service, "author", data_text)); - YAZ_CHECK(record->metadata[1]->next); + tmp_md = record_metadata_insert(nmem, &(record->metadata[0]->next), + data_text); + YAZ_CHECK(tmp_md); + YAZ_CHECK(record->metadata[0]->next); + YAZ_CHECK(record_add_metadata_field_id(nmem, record, 3, data_num)); + YAZ_CHECK(0 == record->metadata[3]->next); + YAZ_CHECK(record_add_metadata_field_id(nmem, record, 3, data_num)); + YAZ_CHECK(record->metadata[3]->next); - YAZ_CHECK(record_assign_sortkey_field_id(nmem, record, 0, data_text)); - YAZ_CHECK(record_assign_sortkey_field_id(nmem, record, 1, data_text)); - YAZ_CHECK(record_assign_sortkey_field_id(nmem, record, 2, data_num)); + YAZ_CHECK(record_add_metadata(nmem, record, service, "author", data_text)); + YAZ_CHECK(0 == record->metadata[1]->next); + YAZ_CHECK(record_add_metadata(nmem, record, service, "author", data_text)); + YAZ_CHECK(record->metadata[1]->next); - YAZ_CHECK(record_assign_sortkey(nmem, record, service, "relevance", data_text)); - YAZ_CHECK(record_assign_sortkey(nmem, record, service, "title", data_text)); - YAZ_CHECK(record_assign_sortkey(nmem, record, service, "year", data_num)); + YAZ_CHECK(0 == record->sortkeys[0]); + YAZ_CHECK(record_assign_sortkey_field_id(nmem, record, 0, data_text)); + YAZ_CHECK(record->sortkeys[0]); + YAZ_CHECK(0 == record->sortkeys[1]); + YAZ_CHECK(record_assign_sortkey_field_id(nmem, record, 1, data_text)); + YAZ_CHECK(record->sortkeys[1]); + YAZ_CHECK(0 == record->sortkeys[2]); + YAZ_CHECK(record_assign_sortkey_field_id(nmem, record, 2, data_num)); + YAZ_CHECK(record->sortkeys[2]); + YAZ_CHECK(record_assign_sortkey(nmem, record, service, "relevance", data_text)); + YAZ_CHECK(record_assign_sortkey(nmem, record, service, "title", data_text)); + YAZ_CHECK(record_assign_sortkey(nmem, record, service, "year", data_num)); - nmem_destroy(nmem); + nmem_destroy(nmem); - //YAZ_CHECK(0 == 0); - //YAZ_CHECK_EQ(0, 1); + //YAZ_CHECK(0 == 0); + //YAZ_CHECK_EQ(0, 1); } @@ -149,20 +146,18 @@ int main(int argc, char **argv) YAZ_CHECK_INIT(argc, argv); YAZ_CHECK_LOG(); - test_record(argc, argv); - YAZ_CHECK_TERM; } - - /* * Local variables: * c-basic-offset: 4 + * c-file-style: "Stroustrup" * indent-tabs-mode: nil * End: * vim: shiftwidth=4 tabstop=8 expandtab */ +