~linuxjedi/libdrizzle/5.1-fix-wine

« back to all changes in this revision

Viewing changes to tests/unit/insert_id.c

  • Committer: Brian Aker
  • Date: 2012-12-29 10:49:09 UTC
  • mto: (68.1.1 5.1-trunk)
  • mto: This revision was merged to the branch mainline in revision 69.
  • Revision ID: brian@tangent.org-20121229104909-jvfy9qkrx0tdyrlj
Add YATL lite and fixes known bug where bug report was not being outputed.

Show diffs side-by-side

added added

removed removed

Lines of Context:
35
35
 *
36
36
 */
37
37
 
 
38
#include <yatl/lite.h>
 
39
 
38
40
#include <libdrizzle-5.1/libdrizzle.h>
39
41
#include <stdio.h>
40
42
#include <stdlib.h>
41
43
#include <stdint.h>
42
44
#include <inttypes.h>
43
45
 
44
 
#ifndef EXIT_SKIP
45
 
# define EXIT_SKIP 77
46
 
#endif
47
 
 
48
46
int main(int argc, char *argv[])
49
47
{
50
48
  (void) argc;
51
49
  (void) argv;
52
 
  drizzle_st *con;
53
 
  drizzle_return_t ret;
54
 
  drizzle_result_st *result;
55
 
 
56
 
  con = drizzle_create_tcp("localhost", 3306, "root", "", "libdrizzle", 0);
57
 
  if (con == NULL)
58
 
  {
59
 
    printf("Drizzle connection object creation error\n");
60
 
    return EXIT_FAILURE;
61
 
  }
62
 
  ret = drizzle_connect(con);
 
50
 
 
51
  drizzle_st *con= drizzle_create_tcp("localhost", 3306, "root", "", "libdrizzle", 0);
 
52
  ASSERT_NOT_NULL_(con, "Drizzle connection object creation error");
 
53
 
 
54
  drizzle_return_t ret= drizzle_connect(con);
63
55
  if (ret != DRIZZLE_RETURN_OK)
64
56
  {
65
 
    printf("Drizzle connection failure\n");
66
57
    drizzle_quit(con);
67
 
    return EXIT_SKIP;
 
58
    SKIP_IF_(ret != DRIZZLE_RETURN_OK, "Drizzle connection failure");
68
59
  }
69
60
 
70
61
  drizzle_query_str(con, "create table libdrizzle.t1 (a int primary key auto_increment, b int)", &ret);
71
 
  if (ret != DRIZZLE_RETURN_OK)
72
 
  {
73
 
    printf("Create table failure\n");
74
 
    return EXIT_FAILURE;
75
 
  }
76
 
 
77
 
  result= drizzle_query_str(con, "insert into libdrizzle.t1 (b) values (1),(2),(3)", &ret);
78
 
  if (ret != DRIZZLE_RETURN_OK)
79
 
  {
80
 
    printf("Insert failure\n");
81
 
    return EXIT_FAILURE;
82
 
  }
83
 
 
84
 
  if (drizzle_result_insert_id(result) != 1)
85
 
  {
86
 
    printf("Got bad insert_id (expected 1, got %"PRIu64")", drizzle_result_insert_id(result));
87
 
    return EXIT_FAILURE;
88
 
  }
89
 
  drizzle_result_free(result);
90
 
 
91
 
  result= drizzle_query_str(con, "insert into libdrizzle.t1 (b) values (4),(5),(6)", &ret);
92
 
  if (ret != DRIZZLE_RETURN_OK)
93
 
  {
94
 
    printf("Insert failure\n");
95
 
    return EXIT_FAILURE;
96
 
  }
97
 
 
98
 
  if (drizzle_result_insert_id(result) != 4)
99
 
  {
100
 
    printf("Got bad insert_id (expected 4, got %"PRIu64")", drizzle_result_insert_id(result));
101
 
    return EXIT_FAILURE;
102
 
  }
103
 
  drizzle_result_free(result);
104
 
 
105
 
  drizzle_query_str(con, "drop table libdrizzle.t1", &ret);
106
 
  if (ret != DRIZZLE_RETURN_OK)
107
 
  {
108
 
    printf("Drop table failure\n");
109
 
    return EXIT_FAILURE;
110
 
  }
111
 
 
 
62
  ASSERT_EQ_(ret, DRIZZLE_RETURN_OK, "create table libdrizzle.t1 (a int primary key auto_increment, b int)");
 
63
 
 
64
  drizzle_result_st *result= drizzle_query_str(con, "insert into libdrizzle.t1 (b) values (1),(2),(3)", &ret);
 
65
  ASSERT_EQ_(ret, DRIZZLE_RETURN_OK, "insert into libdrizzle.t1 (b) values (1),(2),(3)");
 
66
  ASSERT_TRUE(result);
 
67
 
 
68
  ASSERT_EQ_(drizzle_result_insert_id(result), 1, "Got bad insert_id (expected 1, got %"PRIu64")", drizzle_result_insert_id(result));
 
69
  drizzle_result_free(result);
 
70
 
 
71
  result= drizzle_query_str(con, "INSERT INTO libdrizzle.t1 (b) VALUES (4),(5),(6)", &ret);
 
72
  ASSERT_EQ_(ret, DRIZZLE_RETURN_OK, "INSERT INTO libdrizzle.t1 (b) VALUES (4),(5),(6)");
 
73
 
 
74
  ASSERT_EQ_(drizzle_result_insert_id(result), 4, "Got bad insert_id (expected 4, got %"PRIu64")", drizzle_result_insert_id(result));
 
75
  drizzle_result_free(result);
 
76
 
 
77
  drizzle_query_str(con, "DROP TABLE libdrizzle.t1", &ret);
 
78
  ASSERT_EQ_(ret, DRIZZLE_RETURN_OK, "dROP TABLE failure");
112
79
 
113
80
  drizzle_quit(con);
114
81
  return EXIT_SUCCESS;