]> mj.ucw.cz Git - libucw.git/commitdiff
tableprinter: update of tests
authorRobert Kessl <kesslr@centrum.cz>
Wed, 2 Jul 2014 14:00:17 +0000 (16:00 +0200)
committerRobert Kessl <kesslr@centrum.cz>
Wed, 2 Jul 2014 14:00:17 +0000 (16:00 +0200)
ucw/table-test-align.c
ucw/table-test.c
ucw/table-test.t

index 4df4292e9e10edde450819879f05b9ceff6ffce0..f0ddfaf0199b99349b397f5254def3db1e77f76c 100644 (file)
@@ -102,9 +102,6 @@ int main(int argc UNUSED, char **argv)
   table_init(&test_tbl);
   process_command_line_opts(argv, &test_tbl);
 
-  //bprintf(out, "width: %X; masked: %d; mask: %X\n", test_tbl.columns[0].width, test_tbl.columns[0].width & CELL_ALIGN_MASK, CELL_ALIGN_MASK);
-  //bflush(out);
-
   print_table(&test_tbl, out);
   table_cleanup(&test_tbl);
   bclose(out);
index b90b69324f96757c5ccb2836cc33550b6890eba3..b9d1bfe506be35efe465438623a385382d341872 100644 (file)
@@ -6,11 +6,12 @@
 
 #include <ucw/lib.h>
 #include <ucw/table.h>
+#include <ucw/table-types.h>
 #include <ucw/opt.h>
 #include <stdio.h>
 
 enum test_table_cols {
-  test_col0_str, test_col1_int, test_col2_uint, test_col3_bool, test_col4_double
+  test_col0_str, test_col1_int, test_col2_uint, test_col3_bool, test_col4_double, test_col5_size, test_col6_time
 };
 
 static struct table_col_info test_column_order[] = { TBL_COL(test_col3_bool), TBL_COL(test_col4_double), TBL_COL(test_col2_uint), TBL_COL(test_col1_int), TBL_COL(test_col0_str) };
@@ -22,6 +23,8 @@ static struct table test_tbl = {
     [test_col2_uint] = TBL_COL_UINT("col2_uint", 9),
     [test_col3_bool] = TBL_COL_BOOL("col3_bool", 9),
     [test_col4_double] = TBL_COL_DOUBLE("col4_double", 11, 2),
+    [test_col5_size] = TBL_COL_SIZE("col5_size", 11),
+    [test_col6_time] = TBL_COL_TIMESTAMP("col6_timestamp", 20),
     TBL_COL_END
   },
   TBL_COL_ORDER(test_column_order),
@@ -76,6 +79,8 @@ static void do_print1(struct table *test_tbl)
   table_col_printf(test_tbl, test_col2_uint, "XXX-%u", 22222);
   table_col_bool(test_tbl, test_col3_bool, 1);
   table_col_double(test_tbl, test_col4_double, 1.5);
+  table_col_size(test_tbl, test_col5_size, (1024LU*1024LU*1024LU*5LU));
+  table_col_timestamp(test_tbl, test_col6_time, 1404305876);
   table_end_row(test_tbl);
 
   table_col_str(test_tbl, test_col0_str, "test");
@@ -83,6 +88,8 @@ static void do_print1(struct table *test_tbl)
   table_col_uint(test_tbl, test_col2_uint, 100);
   table_col_bool(test_tbl, test_col3_bool, 0);
   table_col_double(test_tbl, test_col4_double, 1.5);
+  table_col_size(test_tbl, test_col5_size, (1024LU*1024LU*1024LU*2LU));
+  table_col_timestamp(test_tbl, test_col6_time, 1404305909);
   table_end_row(test_tbl);
 }
 
@@ -112,7 +119,10 @@ static void process_command_line_opts(char *argv[], struct table *tbl)
   GARY_INIT(cli_table_opts, 0);
 
   opt_parse(&table_printer_opts, argv+1);
-  table_set_gary_options(tbl, cli_table_opts);
+  const char *err = table_set_gary_options(tbl, cli_table_opts);
+  if(err) {
+    opt_failure("error while setting cmd line options: %s", err);
+  }
 
   GARY_FREE(cli_table_opts);
 }
index e7901788000ea829f8f19c2eb43e1150678b75f9..710c37ed2ebd10a9b04a18bafd5ffd2e46004438 100644 (file)
@@ -71,18 +71,22 @@ col1_int: 10000
 col2_uint: XXX-22222
 col3_bool: true
 col4_double: 1.50
+col5_size: 5368709120
+col6_timestamp: 1404305876
 
 col0_str: test
 col1_int: -100
 col2_uint: 100
 col3_bool: false
 col4_double: 1.50
+col5_size: 2147483648
+col6_timestamp: 1404305909
 
 EOF
 
 Run: ../obj/ucw/table-test -n
 Out <<EOF
-Tableprinter option parser returned: 'Unknown table column 'test_col0_str', possible column names are: col0_str, col1_int, col2_uint, col3_bool, col4_double.'.
+Tableprinter option parser returned: 'Unknown table column 'test_col0_str', possible column names are: col0_str, col1_int, col2_uint, col3_bool, col4_double, col5_size, col6_timestamp.'.
 EOF