Date: Monday, December 12, 2005 @ 13:06:15
  Author: csaba
    Path: /cvsroot/carob/libmysequoia/test

Modified: TestMySQLAPI.cpp (1.8 -> 1.9) TestMySQLAPI.hpp (1.2 -> 1.3)

Added the following tests:
mysql_real_query_0_test()
mysql_real_query_1_test()
mysql_real_query_2_test()
mysql_real_query_3_test()
mysql_store_free_result_test()
mysql_use_free_result_test()
mysql_fetch_row_store_test()
mysql_fetch_row_use_test()


------------------+
 TestMySQLAPI.cpp |  138 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 TestMySQLAPI.hpp |   18 ++++++
 2 files changed, 155 insertions(+), 1 deletion(-)


Index: libmysequoia/test/TestMySQLAPI.cpp
diff -u libmysequoia/test/TestMySQLAPI.cpp:1.8 
libmysequoia/test/TestMySQLAPI.cpp:1.9
--- libmysequoia/test/TestMySQLAPI.cpp:1.8      Mon Dec 12 08:58:57 2005
+++ libmysequoia/test/TestMySQLAPI.cpp  Mon Dec 12 13:06:15 2005
@@ -26,6 +26,7 @@
 #include "Globals.hpp"
 
 #include <stdlib.h>
+#include <string.h>
 
 CPPUNIT_TEST_SUITE_REGISTRATION (TestMySQLAPI);
 
@@ -172,3 +173,140 @@
   CPPUNIT_ASSERT(mysql_change_user(mysql, BAD_USER, PASSWD2, DB1) != 0);
 }
 
+void TestMySQLAPI::mysql_real_query_0_test(void)
+{
+  char *query = "drop table t1";   /* drop table if exists t1 */
+  
+  // connect to the database
+  CPPUNIT_ASSERT(mysql_real_connect(mysql, HOST, USER1, PASSWD1, DB1, 0, 0, 0) 
!= 0);
+
+  // send the query - return 0 on success
+  CPPUNIT_ASSERT(mysql_real_query(mysql, query, strlen(query)) == 0);
+}
+
+void TestMySQLAPI::mysql_real_query_1_test(void)
+{
+  char *query = "create table t1 (a int(11) not null auto_increment, b int(11) 
default null, primary key  (a))";
+  
+  // connect to the database
+  CPPUNIT_ASSERT(mysql_real_connect(mysql, HOST, USER1, PASSWD1, DB1, 0, 0, 0) 
!= 0);
+
+  // send the query - return 0 on success
+  CPPUNIT_ASSERT(mysql_real_query(mysql, query, strlen(query)) == 0);
+}
+
+void TestMySQLAPI::mysql_real_query_2_test(void)
+{
+  char *query = "insert into t1 (b) values (1),(2),(3)";
+
+  // connect to the database
+  CPPUNIT_ASSERT(mysql_real_connect(mysql, HOST, USER1, PASSWD1, DB1, 0, 0, 0) 
!= 0);
+
+  // send the query - return 0 on success
+  CPPUNIT_ASSERT(mysql_real_query(mysql, query, strlen(query)) == 0);
+}
+
+void TestMySQLAPI::mysql_real_query_3_test(void)
+{
+  char *query = "select * from t1";
+
+  // connect to the database
+  CPPUNIT_ASSERT(mysql_real_connect(mysql, HOST, USER1, PASSWD1, DB1, 0, 0, 0) 
!= 0);
+
+  // send the query - return 0 on success
+  CPPUNIT_ASSERT(mysql_real_query(mysql, query, strlen(query)) == 0);
+}
+
+void TestMySQLAPI::mysql_store_free_result_test(void)
+{
+  char *query = "select * from t1";
+  MYSQL_RES *res = 0;
+
+  // connect to the database
+  CPPUNIT_ASSERT(mysql_real_connect(mysql, HOST, USER1, PASSWD1, DB1, 0, 0, 0) 
!= 0);
+
+  // send the query - return 0 on success
+  CPPUNIT_ASSERT(mysql_real_query(mysql, query, strlen(query)) == 0);
+  
+  // fetch the results
+  CPPUNIT_ASSERT((res = mysql_store_result(mysql)) != NULL);
+  CPPUNIT_ASSERT(mysql_errno(mysql) == 0);
+
+  // free the result set
+  mysql_free_result(res);
+}
+
+void TestMySQLAPI::mysql_use_free_result_test(void)
+{
+  char *query = "select * from t1";
+  MYSQL_RES *res = 0;
+
+  // connect to the database
+  CPPUNIT_ASSERT(mysql_real_connect(mysql, HOST, USER1, PASSWD1, DB1, 0, 0, 0) 
!= 0);
+
+  // send the query - return 0 on success
+  CPPUNIT_ASSERT(mysql_real_query(mysql, query, strlen(query)) == 0);
+  
+  // fetch the result set
+  CPPUNIT_ASSERT((res = mysql_use_result(mysql)) != NULL);
+  CPPUNIT_ASSERT(mysql_errno(mysql) == 0);
+
+  // free the result set
+  mysql_free_result(res);
+}
+
+void TestMySQLAPI::mysql_fetch_row_store_test(void)
+{
+  char *query = "select * from t1";
+  MYSQL_RES *res = 0;
+  MYSQL_ROW row = 0;
+  int rows_fetched = 0;
+
+  // connect to the database
+  CPPUNIT_ASSERT(mysql_real_connect(mysql, HOST, USER1, PASSWD1, DB1, 0, 0, 0) 
!= 0);
+
+  // send the query - return 0 on success
+  CPPUNIT_ASSERT(mysql_real_query(mysql, query, strlen(query)) == 0);
+  
+  // fetch the result set
+  CPPUNIT_ASSERT((res = mysql_store_result(mysql)) != NULL);
+
+  while ((row = mysql_fetch_row(res)) != 0)
+  {
+    rows_fetched++;
+  }
+  
+  // check how many rows we fetched
+  CPPUNIT_ASSERT(rows_fetched == 3);
+  
+  // free the result set
+  mysql_free_result(res);
+}
+
+void TestMySQLAPI::mysql_fetch_row_use_test(void)
+{
+  char *query = "select * from t1";
+  MYSQL_RES *res = 0;
+  MYSQL_ROW row = 0;
+  int rows_fetched = 0;
+
+  // connect to the database
+  CPPUNIT_ASSERT(mysql_real_connect(mysql, HOST, USER1, PASSWD1, DB1, 0, 0, 0) 
!= 0);
+
+  // send the query - return 0 on success
+  CPPUNIT_ASSERT(mysql_real_query(mysql, query, strlen(query)) == 0);
+  
+  // fetch the result set
+  CPPUNIT_ASSERT((res = mysql_use_result(mysql)) != NULL);
+
+  while ((row = mysql_fetch_row(res)) != 0)
+  {
+    rows_fetched++;
+  }
+  
+  // check how many rows we fetched
+  CPPUNIT_ASSERT(rows_fetched == 3);
+  
+  // free the result set
+  mysql_free_result(res);
+}
Index: libmysequoia/test/TestMySQLAPI.hpp
diff -u libmysequoia/test/TestMySQLAPI.hpp:1.2 
libmysequoia/test/TestMySQLAPI.hpp:1.3
--- libmysequoia/test/TestMySQLAPI.hpp:1.2      Wed Dec  7 11:48:24 2005
+++ libmysequoia/test/TestMySQLAPI.hpp  Mon Dec 12 13:06:15 2005
@@ -38,6 +38,14 @@
     CPPUNIT_TEST (mysql_select_db_negative_test);
     CPPUNIT_TEST (mysql_change_user_test);
     CPPUNIT_TEST (mysql_change_user_negative_test);
+    CPPUNIT_TEST (mysql_real_query_0_test);
+    CPPUNIT_TEST (mysql_real_query_1_test);
+    CPPUNIT_TEST (mysql_real_query_2_test);
+    CPPUNIT_TEST (mysql_real_query_3_test);
+    CPPUNIT_TEST (mysql_store_free_result_test);
+    CPPUNIT_TEST (mysql_use_free_result_test);
+    CPPUNIT_TEST (mysql_fetch_row_store_test);
+    CPPUNIT_TEST (mysql_fetch_row_use_test);
   CPPUNIT_TEST_SUITE_END ();
 
   public:
@@ -53,7 +61,15 @@
   void mysql_select_db_negative_test(void);
   void mysql_change_user_test(void);
   void mysql_change_user_negative_test(void);
-
+  void mysql_real_query_0_test(void);
+  void mysql_real_query_1_test(void);
+  void mysql_real_query_2_test(void);
+  void mysql_real_query_3_test(void);
+  void mysql_store_free_result_test(void);
+  void mysql_use_free_result_test(void);
+  void mysql_fetch_row_store_test(void);
+  void mysql_fetch_row_use_test(void);
+  
   private:
   MYSQL *mysql;
 };

_______________________________________________
Carob-commits mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/carob-commits

Reply via email to