diff options
Diffstat (limited to 'Foundation/GTMSQLiteTest.m')
-rw-r--r-- | Foundation/GTMSQLiteTest.m | 767 |
1 files changed, 363 insertions, 404 deletions
diff --git a/Foundation/GTMSQLiteTest.m b/Foundation/GTMSQLiteTest.m index 8a5f18d..2537dd6 100644 --- a/Foundation/GTMSQLiteTest.m +++ b/Foundation/GTMSQLiteTest.m @@ -19,7 +19,6 @@ #import "GTMSQLite.h" #import "GTMSenTestCase.h" -#import "GTMUnitTestDevLog.h" @interface GTMSQLiteTest : GTMTestCase @end @@ -48,66 +47,66 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); autorelease]; err = [db executeSQL:@"CREATE TABLE foo (bar TEXT COLLATE NOCASE_NONLITERAL);"]; - STAssertEquals(err, SQLITE_OK, @"Failed to create table"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table"); int changeCount = [db lastChangeCount]; - STAssertEquals(changeCount, 0, + XCTAssertEqual(changeCount, 0, @"Change count was not 0 after creating database/table!"); err = [db executeSQL:@"insert into foo (bar) values ('blah!');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); changeCount = [db lastChangeCount]; - STAssertEquals(changeCount, 1, @"Change count was not 1!"); + XCTAssertEqual(changeCount, 1, @"Change count was not 1!"); // Test last row id! unsigned long long lastRowId; lastRowId = [db lastInsertRowID]; - STAssertEquals(lastRowId, (unsigned long long)1L, + XCTAssertEqual(lastRowId, (unsigned long long)1L, @"First row in database was not 1?"); // Test setting busy and retrieving it! int busyTimeout = 10000; err = [db setBusyTimeoutMS:busyTimeout]; - STAssertEquals(err, SQLITE_OK, @"Error setting busy timeout"); + XCTAssertEqual(err, SQLITE_OK, @"Error setting busy timeout"); int retrievedBusyTimeout; retrievedBusyTimeout = [db busyTimeoutMS]; - STAssertEquals(retrievedBusyTimeout, busyTimeout, + XCTAssertEqual(retrievedBusyTimeout, busyTimeout, @"Retrieved busy time out was not equal to what we set it" @" to!"); BOOL xactOpSucceeded; xactOpSucceeded = [db beginDeferredTransaction]; - STAssertTrue(xactOpSucceeded, @"beginDeferredTransaction failed!"); + XCTAssertTrue(xactOpSucceeded, @"beginDeferredTransaction failed!"); err = [db executeSQL:@"insert into foo (bar) values ('blah!');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); changeCount = [db lastChangeCount]; - STAssertEquals(changeCount, 1, + XCTAssertEqual(changeCount, 1, @"Change count didn't stay the same" @"when inserting during transaction"); xactOpSucceeded = [db rollback]; - STAssertTrue(xactOpSucceeded, @"could not rollback!"); + XCTAssertTrue(xactOpSucceeded, @"could not rollback!"); changeCount = [db lastChangeCount]; - STAssertEquals(changeCount, 1, @"Change count isn't 1 after rollback :-("); + XCTAssertEqual(changeCount, 1, @"Change count isn't 1 after rollback :-("); xactOpSucceeded = [db beginDeferredTransaction]; - STAssertTrue(xactOpSucceeded, @"beginDeferredTransaction failed!"); + XCTAssertTrue(xactOpSucceeded, @"beginDeferredTransaction failed!"); for (unsigned int i = 0; i < 100; i++) { err = [db executeSQL:@"insert into foo (bar) values ('blah!');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); } xactOpSucceeded = [db commit]; - STAssertTrue(xactOpSucceeded, @"could not commit!"); + XCTAssertTrue(xactOpSucceeded, @"could not commit!"); changeCount = [db totalChangeCount]; - STAssertEquals(changeCount, 102, @"Change count isn't 102 after commit :-("); + XCTAssertEqual(changeCount, 102, @"Change count isn't 102 after commit :-("); } - (void)testSQLiteWithoutCFAdditions { @@ -118,14 +117,14 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); errorCode:&err] autorelease]; - STAssertNotNil(dbNoCFAdditions, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); + XCTAssertNotNil(dbNoCFAdditions, @"Failed to create DB"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create DB"); err = [dbNoCFAdditions executeSQL:nil]; - STAssertEquals(err, SQLITE_MISUSE, @"Nil SQL did not return error"); + XCTAssertEqual(err, SQLITE_MISUSE, @"Nil SQL did not return error"); err = [dbNoCFAdditions executeSQL:@"SELECT UPPER('Fred');"]; - STAssertEquals(err, SQLITE_OK, @"Nil SQL did not return error"); + XCTAssertEqual(err, SQLITE_OK, @"Nil SQL did not return error"); } - (void)testSynchronousAPI { @@ -147,8 +146,8 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); errorCode:&err] autorelease]; - STAssertNotNil(db8, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); + XCTAssertNotNil(db8, @"Failed to create DB"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create DB"); GTMSQLiteDatabase *db16 = [[[GTMSQLiteDatabase alloc] initInMemoryWithCFAdditions:YES @@ -156,27 +155,27 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); errorCode:&err] autorelease]; - STAssertNotNil(db16, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); + XCTAssertNotNil(db16, @"Failed to create DB"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create DB"); NSArray *databases = [NSArray arrayWithObjects:db8, db16, nil]; GTMSQLiteDatabase *db; - GTM_FOREACH_OBJECT(db, databases) { + for (db in databases) { err = [db executeSQL: @"CREATE TABLE foo (bar TEXT COLLATE NOCASE_NONLITERAL," @" barrev text collate reverse);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for collation test"); // Create blank rows to test matching inside collation functions err = [db executeSQL:@"insert into foo (bar, barrev) values ('','');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); // Insert one row we want to match err = [db executeSQL: @"INSERT INTO foo (bar, barrev) VALUES " @"('teststring','teststring');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); NSString *matchString = @"foobar"; GTMSQLiteStatement *statement = @@ -184,29 +183,29 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); @"SELECT bar FROM foo WHERE bar == '%@';", matchString] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); [statement stepRow]; [statement finalizeStatement]; - + statement = [GTMSQLiteStatement statementWithSQL:[NSString stringWithFormat: @"SELECT bar FROM foo WHERE barrev == '%@' order by barrev;", matchString] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); [statement stepRow]; [statement finalizeStatement]; - + statement = [GTMSQLiteStatement statementWithSQL:[NSString stringWithFormat: @"SELECT bar FROM foo WHERE bar == '';"] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); [statement stepRow]; [statement finalizeStatement]; @@ -215,8 +214,8 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); @"SELECT bar FROM foo WHERE barrev == '' order by barrev;"] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); [statement stepRow]; [statement finalizeStatement]; } @@ -230,24 +229,24 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); errorCode:&err] autorelease]; - STAssertNotNil(db, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); + XCTAssertNotNil(db, @"Failed to create DB"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create DB"); err = [db executeSQL:@"CREATE TABLE foo (bar TEXT COLLATE NOCASE_NONLITERAL);"]; - STAssertEquals(err, SQLITE_OK, @"Failed to create table for collation test"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for collation test"); // Insert one row we want to match err = [db executeSQL:[NSString stringWithFormat: @"INSERT INTO foo (bar) VALUES ('%@');", [NSString stringWithCString:"Frédéric" encoding:NSUTF8StringEncoding]]]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); // Create blank rows to test matching inside collation functions err = [db executeSQL:@"insert into foo (bar) values ('');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); err = [db executeSQL:@"insert into foo (bar) values ('');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); // Loop over a few things all of which should match NSArray *testArray = [NSArray arrayWithObjects: @@ -259,19 +258,19 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); encoding:NSUTF8StringEncoding], nil]; NSString *testString = nil; - GTM_FOREACH_OBJECT(testString, testArray) { + for (testString in testArray) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:[NSString stringWithFormat: @"SELECT bar FROM foo WHERE bar == '%@';", testString] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); int count = 0; while ([statement stepRow] == SQLITE_ROW) { count++; } - STAssertEquals(count, 1, @"Wrong number of collated rows for \"%@\"", + XCTAssertEqual(count, 1, @"Wrong number of collated rows for \"%@\"", testString); [statement finalizeStatement]; } @@ -281,8 +280,8 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); while ([statement stepRow] == SQLITE_ROW) ; [statement finalizeStatement]; @@ -299,33 +298,33 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); utf8:YES errorCode:&err] autorelease]; - STAssertNotNil(db, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); + XCTAssertNotNil(db, @"Failed to create DB"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create DB"); GTMSQLiteStatement *statement = nil; // Test simple ASCII statement = [GTMSQLiteStatement statementWithSQL:@"SELECT LOWER('Fred');" inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"Failed to step row"); - STAssertEqualObjects([statement resultStringAtPosition:0], - @"fred", - @"LOWER failed for ASCII string"); + XCTAssertEqual(err, SQLITE_ROW, @"Failed to step row"); + XCTAssertEqualObjects([statement resultStringAtPosition:0], + @"fred", + @"LOWER failed for ASCII string"); [statement finalizeStatement]; statement = [GTMSQLiteStatement statementWithSQL:@"SELECT UPPER('Fred');" inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"Failed to step row"); - STAssertEqualObjects([statement resultStringAtPosition:0], - @"FRED", - @"UPPER failed for ASCII string"); + XCTAssertEqual(err, SQLITE_ROW, @"Failed to step row"); + XCTAssertEqualObjects([statement resultStringAtPosition:0], + @"FRED", + @"UPPER failed for ASCII string"); [statement finalizeStatement]; // Test UTF-8, have to do some dancing to make the compiler take @@ -344,13 +343,13 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); [NSString stringWithFormat:@"SELECT LOWER('%@');", utfNormalString] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"Failed to step row"); - STAssertEqualObjects([statement resultStringAtPosition:0], - utfLowerString, - @"UPPER failed for UTF8 string"); + XCTAssertEqual(err, SQLITE_ROW, @"Failed to step row"); + XCTAssertEqualObjects([statement resultStringAtPosition:0], + utfLowerString, + @"UPPER failed for UTF8 string"); [statement finalizeStatement]; statement = @@ -358,15 +357,15 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); [NSString stringWithFormat:@"SELECT UPPER('%@');", utfNormalString] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"Failed to step row"); - STAssertEqualObjects([statement resultStringAtPosition:0], - utfUpperString, - @"UPPER failed for UTF8 string"); + XCTAssertEqual(err, SQLITE_ROW, @"Failed to step row"); + XCTAssertEqualObjects([statement resultStringAtPosition:0], + utfUpperString, + @"UPPER failed for UTF8 string"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, @"Should be done"); + XCTAssertEqual(err, SQLITE_DONE, @"Should be done"); [statement finalizeStatement]; } @@ -380,33 +379,33 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql); utf8:NO errorCode:&err] autorelease]; - STAssertNotNil(db, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); + XCTAssertNotNil(db, @"Failed to create DB"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create DB"); GTMSQLiteStatement *statement = nil; // Test simple ASCII statement = [GTMSQLiteStatement statementWithSQL:@"SELECT LOWER('Fred');" inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"Failed to step row"); - STAssertEqualObjects([statement resultStringAtPosition:0], - @"fred", - @"LOWER failed for ASCII string"); + XCTAssertEqual(err, SQLITE_ROW, @"Failed to step row"); + XCTAssertEqualObjects([statement resultStringAtPosition:0], + @"fred", + @"LOWER failed for ASCII string"); [statement finalizeStatement]; statement = [GTMSQLiteStatement statementWithSQL:@"SELECT UPPER('Fred');" inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"Failed to step row"); - STAssertEqualObjects([statement resultStringAtPosition:0], - @"FRED", - @"UPPER failed for ASCII string"); + XCTAssertEqual(err, SQLITE_ROW, @"Failed to step row"); + XCTAssertEqualObjects([statement resultStringAtPosition:0], + @"FRED", + @"UPPER failed for ASCII string"); [statement finalizeStatement]; } @@ -450,7 +449,7 @@ static void TestUpperLower16Impl(sqlite3_context *context, customUpperLower[i].function, NULL, NULL); - STAssertEquals(rc, SQLITE_OK, + XCTAssertEqual(rc, SQLITE_OK, @"Failed to register upper function" @"with SQLite db"); } @@ -459,12 +458,12 @@ static void TestUpperLower16Impl(sqlite3_context *context, GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:@"SELECT UPPER('Fred');" inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"Failed to step row"); - STAssertTrue(customUpperFunctionCalled, - @"Custom upper function was not called!"); + XCTAssertEqual(err, SQLITE_ROW, @"Failed to step row"); + XCTAssertTrue(customUpperFunctionCalled, + @"Custom upper function was not called!"); [statement finalizeStatement]; } @@ -483,7 +482,7 @@ static void TestUpperLower16Impl(sqlite3_context *context, NSArray *databases = [NSArray arrayWithObjects:db8, db16, nil]; GTMSQLiteDatabase *db; - GTM_FOREACH_OBJECT(db, databases) { + for (db in databases) { CFOptionFlags c = 0, oldFlags; oldFlags = [db likeComparisonOptions]; @@ -492,22 +491,18 @@ static void TestUpperLower16Impl(sqlite3_context *context, // case insensitive [db setLikeComparisonOptions:c]; - STAssertTrue([db likeComparisonOptions] == 0, - @"LIKE Comparison options setter/getter does not work!"); + XCTAssertTrue([db likeComparisonOptions] == 0, + @"LIKE Comparison options setter/getter does not work!"); NSString *createString = nil; -#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 createString = @"CREATE TABLE foo (bar NODIACRITIC_WIDTHINSENSITIVE TEXT);"; -#else - createString = @"CREATE TABLE foo (bar TEXT);"; -#endif // MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 err = [db executeSQL:createString]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for like comparison options test"); err = [db executeSQL:@"insert into foo values('test like test');"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create row for like comparison options test"); GTMSQLiteStatement *statement = @@ -515,22 +510,20 @@ static void TestUpperLower16Impl(sqlite3_context *context, inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"failed to create statement"); + XCTAssertNotNil(statement, @"failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, @"failed to retrieve row!"); + XCTAssertEqual(err, SQLITE_DONE, @"failed to retrieve row!"); // Now change it back to case insensitive and rerun the same query c |= kCFCompareCaseInsensitive; [db setLikeComparisonOptions:c]; err = [statement reset]; - STAssertEquals(err, SQLITE_OK, @"failed to reset select statement"); + XCTAssertEqual(err, SQLITE_OK, @"failed to reset select statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to retrieve row!"); + XCTAssertEqual(err, SQLITE_ROW, @"failed to retrieve row!"); -#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 - // Now try adding in 10.5 only flags c |= (kCFCompareDiacriticInsensitive | kCFCompareWidthInsensitive); [db setLikeComparisonOptions:c]; // Make a new statement @@ -539,14 +532,13 @@ static void TestUpperLower16Impl(sqlite3_context *context, [GTMSQLiteStatement statementWithSQL:@"select * from foo where bar like '%LIKE%'" inDatabase:db errorCode:&err]; - - STAssertNotNil(statement, @"failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"failed to create statement"); - + + XCTAssertNotNil(statement, @"failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"failed to create statement"); + err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to retrieve row!"); -#endif // MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 - + XCTAssertEqual(err, SQLITE_ROW, @"failed to retrieve row!"); + // Now reset comparison options [db setLikeComparisonOptions:oldFlags]; @@ -567,15 +559,15 @@ static void TestUpperLower16Impl(sqlite3_context *context, [db setGlobComparisonOptions:c]; - STAssertTrue([db globComparisonOptions] == 0, - @"GLOB Comparison options setter/getter does not work!"); + XCTAssertTrue([db globComparisonOptions] == 0, + @"GLOB Comparison options setter/getter does not work!"); err = [db executeSQL:@"CREATE TABLE foo (bar TEXT);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for glob comparison options test"); err = [db executeSQL:@"insert into foo values('test like test');"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create row for glob comparison options test"); GTMSQLiteStatement *statement = @@ -583,19 +575,19 @@ static void TestUpperLower16Impl(sqlite3_context *context, inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"failed to create statement"); + XCTAssertNotNil(statement, @"failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, @"failed to retrieve row!"); + XCTAssertEqual(err, SQLITE_DONE, @"failed to retrieve row!"); // Now change it back to case insensitive and rerun the same query c |= kCFCompareCaseInsensitive; [db setGlobComparisonOptions:c]; err = [statement reset]; - STAssertEquals(err, SQLITE_OK, @"failed to reset select statement"); + XCTAssertEqual(err, SQLITE_OK, @"failed to reset select statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to retrieve row!"); + XCTAssertEqual(err, SQLITE_ROW, @"failed to retrieve row!"); [statement finalizeStatement]; @@ -611,38 +603,38 @@ static void TestUpperLower16Impl(sqlite3_context *context, errorCode:&err] autorelease]; err = [db executeSQL:@"CREATE table foo_reverse (bar TEXT COLLATE REVERSE);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for reverse collation test"); err = [db executeSQL:@"insert into foo_reverse values('a2');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); err = [db executeSQL:@"insert into foo_reverse values('b1');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:@"SELECT bar from foo_reverse order by bar" inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to advance row"); + XCTAssertEqual(err, SQLITE_ROW, @"failed to advance row"); NSString *oneRow = [statement resultStringAtPosition:0]; - STAssertEqualStrings(oneRow, @"b1", @"b did not come first!"); + XCTAssertEqualStrings(oneRow, @"b1", @"b did not come first!"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to advance row!"); + XCTAssertEqual(err, SQLITE_ROW, @"failed to advance row!"); - STAssertEquals(err, [db lastErrorCode], + XCTAssertEqual(err, [db lastErrorCode], @"lastErrorCode API did not match what last API returned!"); // Calling lastErrorCode resets API error, so the next string will not indicate any error - STAssertEqualStrings(@"not an error", [db lastErrorString], - @"lastErrorString API did not match expected string!"); + XCTAssertEqualStrings(@"unknown error", [db lastErrorString], + @"lastErrorString API did not match expected string!"); oneRow = [statement resultStringAtPosition:0]; - STAssertEqualStrings(oneRow, @"a2", @"a did not come second!"); + XCTAssertEqualStrings(oneRow, @"a2", @"a did not come second!"); [statement finalizeStatement]; } @@ -657,32 +649,32 @@ static void TestUpperLower16Impl(sqlite3_context *context, err = [db executeSQL: @"CREATE table numeric_test_table " @"(numeric_sort TEXT COLLATE NUMERIC, lexographic_sort TEXT);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for numeric collation test"); err = [db executeSQL:@"insert into numeric_test_table values('4','17');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); err = [db executeSQL:@"insert into numeric_test_table values('17','4');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:@"SELECT numeric_sort from numeric_test_table order by numeric_sort" inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to advance row"); + XCTAssertEqual(err, SQLITE_ROW, @"failed to advance row"); NSString *oneRow = [statement resultStringAtPosition:0]; - STAssertEqualStrings(oneRow, @"4", @"4 did not come first!"); + XCTAssertEqualStrings(oneRow, @"4", @"4 did not come first!"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to advance row!"); + XCTAssertEqual(err, SQLITE_ROW, @"failed to advance row!"); oneRow = [statement resultStringAtPosition:0]; - STAssertEqualStrings(oneRow, @"17", @"17 did not come second!"); + XCTAssertEqualStrings(oneRow, @"17", @"17 did not come second!"); [statement finalizeStatement]; @@ -693,18 +685,18 @@ static void TestUpperLower16Impl(sqlite3_context *context, inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"failed to create statement for lexographic sort"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"failed to create statement for lexographic sort"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to advance row"); + XCTAssertEqual(err, SQLITE_ROW, @"failed to advance row"); oneRow = [statement resultStringAtPosition:0]; - STAssertEqualStrings(oneRow, @"17", @"17 did not come first!"); + XCTAssertEqualStrings(oneRow, @"17", @"17 did not come first!"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, @"failed to advance row!"); + XCTAssertEqual(err, SQLITE_ROW, @"failed to advance row!"); oneRow = [statement resultStringAtPosition:0]; - STAssertEqualStrings(oneRow, @"4", @"4 did not come second!"); + XCTAssertEqualStrings(oneRow, @"4", @"4 did not come second!"); [statement finalizeStatement]; } @@ -718,18 +710,18 @@ static void TestUpperLower16Impl(sqlite3_context *context, [[GTMSQLiteDatabase alloc] initInMemoryWithCFAdditions:YES utf8:YES errorCode:&err]; - STAssertNotNil(db, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); + XCTAssertNotNil(db, @"Failed to create DB"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create DB"); err = [db executeSQL: @"CREATE TABLE foo (bar TEXT COLLATE NOCASE_NONLITERAL_LOCALIZED);"]; - STAssertEquals(err, SQLITE_OK, @"Failed to create table for collation test"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for collation test"); // Insert one row we want to match err = [db executeSQL:[NSString stringWithFormat: @"INSERT INTO foo (bar) VALUES ('%@');", [NSString stringWithCString:"Frédéric" encoding:NSUTF8StringEncoding]]]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute SQL"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute SQL"); // Loop over a few things all of which should match NSArray *testArray = [NSArray arrayWithObjects: @@ -742,19 +734,19 @@ static void TestUpperLower16Impl(sqlite3_context *context, nil]; NSString *testString = nil; - GTM_FOREACH_OBJECT(testString, testArray) { + for (testString in testArray) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:[NSString stringWithFormat: @"SELECT bar FROM foo WHERE bar == '%@';", testString] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); int count = 0; while ([statement stepRow] == SQLITE_ROW) { count++; } - STAssertEquals(count, 1, @"Wrong number of collated rows for \"%@\"", + XCTAssertEqual(count, 1, @"Wrong number of collated rows for \"%@\"", testString); [statement finalizeStatement]; } @@ -765,23 +757,20 @@ static void TestUpperLower16Impl(sqlite3_context *context, } - (void)testDiacriticAndWidthInsensitiveCollations { - // Diacritic & width insensitive collations are not supported - // on Tiger, so most of the test is Leopard or later -#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 int err; GTMSQLiteDatabase *db = [[[GTMSQLiteDatabase alloc] initInMemoryWithCFAdditions:YES utf8:YES errorCode:&err] autorelease]; - STAssertNotNil(db, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); + XCTAssertNotNil(db, @"Failed to create DB"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create DB"); NSString *tableSQL = @"CREATE TABLE FOOBAR (collated TEXT COLLATE NODIACRITIC_WIDTHINSENSITIVE, " @" noncollated TEXT);"; err = [db executeSQL:tableSQL]; - STAssertEquals(err, SQLITE_OK, @"error creating table"); + XCTAssertEqual(err, SQLITE_OK, @"error creating table"); NSString *testStringValue = [NSString stringWithCString:"Frédéric" encoding:NSUTF8StringEncoding]; @@ -797,11 +786,11 @@ static void TestUpperLower16Impl(sqlite3_context *context, @" WHERE noncollated == 'Frederic';"] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); // Make sure the comparison query didn't return a row because // we're doing a comparison on the row without the collation - STAssertEquals([statement stepRow], SQLITE_DONE, + XCTAssertEqual([statement stepRow], SQLITE_DONE, @"Comparison with diacritics did not succeed"); [statement finalizeStatement]; @@ -812,34 +801,11 @@ static void TestUpperLower16Impl(sqlite3_context *context, @" WHERE collated == 'Frederic';"] inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); - STAssertEquals([statement stepRow], SQLITE_ROW, + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertEqual([statement stepRow], SQLITE_ROW, @"Comparison ignoring diacritics did not succeed"); [statement finalizeStatement]; -#else - // On Tiger just make sure it causes the dev log. - int err; - GTMSQLiteDatabase *db = - [[[GTMSQLiteDatabase alloc] initInMemoryWithCFAdditions:YES - utf8:YES - errorCode:&err] autorelease]; - STAssertNotNil(db, @"Failed to create DB"); - STAssertEquals(err, SQLITE_OK, @"Failed to create DB"); - - NSString *tableSQL = - @"CREATE TABLE FOOBAR (collated TEXT" - @" COLLATE NODIACRITIC_WIDTHINSENSITIVE_NOCASE," - @" noncollated TEXT);"; - - // Expect one log for each unsupported flag - [GTMUnitTestDevLog expect:2 - casesOfString:@"GTMSQLiteDatabase 10.5 collating not available " - @"on 10.4 or earlier"]; - err = [db executeSQL:tableSQL]; - STAssertEquals(err, SQLITE_OK, @"error creating table"); - -#endif // MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 } - (void)testCFStringLikeGlob { @@ -852,8 +818,8 @@ static void TestUpperLower16Impl(sqlite3_context *context, errorCode:&err] autorelease]; - STAssertNotNil(db8, @"Failed to create database"); - STAssertEquals(err, SQLITE_OK, @"Failed to create database"); + XCTAssertNotNil(db8, @"Failed to create database"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create database"); GTMSQLiteDatabase *db16 = [[[GTMSQLiteDatabase alloc] initInMemoryWithCFAdditions:YES @@ -861,164 +827,164 @@ static void TestUpperLower16Impl(sqlite3_context *context, errorCode:&err] autorelease]; - STAssertNotNil(db16, @"Failed to create database"); - STAssertEquals(err, SQLITE_OK, @"Failed to create database"); + XCTAssertNotNil(db16, @"Failed to create database"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create database"); NSArray *databases = [NSArray arrayWithObjects:db8, db16, nil]; GTMSQLiteDatabase *db; - GTM_FOREACH_OBJECT(db, databases) { + for (db in databases) { err = [db executeSQL:@"CREATE TABLE t1 (x TEXT);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for LIKE/GLOB test"); // Insert data set err = [db executeSQL:@"INSERT INTO t1 VALUES ('a');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('ab');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('abc');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('abcd');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('acd');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('abd');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('bc');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('bcd');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('xyz');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('ABC');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('CDE');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t1 VALUES ('ABC abc xyz');"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); // Section 1, case tests - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'abc' ORDER BY 1;"), ([NSArray arrayWithObjects:@"ABC", @"abc", nil]), @"Fail on LIKE test 1.1"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x GLOB 'abc' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", nil]), @"Fail on LIKE test 1.2"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'ABC' ORDER BY 1;"), ([NSArray arrayWithObjects:@"ABC", @"abc", nil]), @"Fail on LIKE test 1.3"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"ABC", @"ABC abc xyz", @"abc", @"abcd", nil]), @"Fail on LIKE test 3.1"); [db setLikeComparisonOptions:(kCFCompareNonliteral)]; err = [db executeSQL:@"CREATE INDEX i1 ON t1(x);"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); - STAssertEqualObjects( + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 3.3"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'a_c' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", nil]), @"Fail on LIKE test 3.5"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'ab%d' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abcd", @"abd", nil]), @"Fail on LIKE test 3.7"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'a_c%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 3.9"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE '%bcd' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abcd", @"bcd", nil]), @"Fail on LIKE test 3.11"); [db setLikeComparisonOptions:(kCFCompareNonliteral | kCFCompareCaseInsensitive)]; - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"ABC", @"ABC abc xyz", @"abc", @"abcd", nil]), @"Fail on LIKE test 3.13"); [db setLikeComparisonOptions:(kCFCompareNonliteral)]; err = [db executeSQL:@"DROP INDEX i1;"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); - STAssertEqualObjects( + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 3.15"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x GLOB 'abc*' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 3.17"); err = [db executeSQL:@"CREATE INDEX i1 ON t1(x);"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); - STAssertEqualObjects( + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x GLOB 'abc*' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 3.19"); [db setLikeComparisonOptions:(kCFCompareNonliteral)]; - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x GLOB 'abc*' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 3.21"); [db setLikeComparisonOptions:(kCFCompareNonliteral | kCFCompareCaseInsensitive)]; - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x GLOB 'a[bc]d' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abd", @"acd", nil]), @"Fail on LIKE test 3.23"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x GLOB 'a[^xyz]d' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abd", @"acd", nil]), @"Fail on glob inverted character set test 3.24"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x GLOB 'a[^' ORDER BY 1;"), ([NSArray array]), @"Fail on glob inverted character set test 3.25"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x GLOB 'a['"), ([NSArray array]), @"Unclosed glob character set did not return empty result set 3.26"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x GLOB 'a[^]'"), ([NSArray array]), @"Unclosed glob inverted character set did not return empty " @"result set 3.27"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x GLOB 'a[^]c]d'"), ([NSArray arrayWithObjects:@"abd", nil]), @"Glob character set with inverted set not matching ] did not " @"return right rows 3.28"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x GLOB 'a[bcdefg'"), ([NSArray array]), @@ -1026,36 +992,36 @@ static void TestUpperLower16Impl(sqlite3_context *context, // Section 4 [db setLikeComparisonOptions:(kCFCompareNonliteral)]; - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 4.1"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE +x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 4.2"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE ('ab' || 'c%') ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 4.3"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x LIKE 'a[xyz]\%' ESCAPE ''"), ([NSArray array]), @"0-Character escape clause did not return empty set 4.4"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x LIKE " @"'a[xyz]\%' ESCAPE NULL"), ([NSArray array]), @"Null escape did not return empty set 4.5"); - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x from t1 where x LIKE 'a[xyz]\\%' " @"ESCAPE '\\'"), @@ -1066,22 +1032,22 @@ static void TestUpperLower16Impl(sqlite3_context *context, // Section 5 [db setLikeComparisonOptions:(kCFCompareNonliteral | kCFCompareCaseInsensitive)]; - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"ABC", @"ABC abc xyz", @"abc", @"abcd", nil]), @"Fail on LIKE test 5.1"); err = [db executeSQL:@"CREATE TABLE t2(x COLLATE NOCASE);"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"INSERT INTO t2 SELECT * FROM t1;"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); err = [db executeSQL:@"CREATE INDEX i2 ON t2(x COLLATE NOCASE);"]; - STAssertEquals(err, SQLITE_OK, @"Failed to execute sql"); - STAssertEqualObjects( + XCTAssertEqual(err, SQLITE_OK, @"Failed to execute sql"); + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t2 WHERE x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"ABC", @"ABC abc xyz", @"abcd", nil]), @@ -1089,7 +1055,7 @@ static void TestUpperLower16Impl(sqlite3_context *context, [db setLikeComparisonOptions:(kCFCompareNonliteral)]; - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t2 WHERE x LIKE 'abc%' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @@ -1097,14 +1063,14 @@ static void TestUpperLower16Impl(sqlite3_context *context, [db setLikeComparisonOptions:(kCFCompareNonliteral | kCFCompareCaseInsensitive)]; - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t2 WHERE x GLOB 'abc*' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abc", @"abcd", nil]), @"Fail on LIKE test 5.5"); // Non standard tests not from the SQLite source - STAssertEqualObjects( + XCTAssertEqualObjects( LikeGlobTestHelper(db, @"SELECT x FROM t1 WHERE x GLOB 'a[b-d]d' ORDER BY 1;"), ([NSArray arrayWithObjects:@"abd", @"acd", nil]), @@ -1119,34 +1085,34 @@ static void TestUpperLower16Impl(sqlite3_context *context, utf8:YES errorCode:&err] autorelease]; - - STAssertNotNil(db8, @"Failed to create database"); - STAssertEquals(err, SQLITE_OK, @"Failed to create database"); - STAssertNotNil([db8 description], nil); + + XCTAssertNotNil(db8, @"Failed to create database"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create database"); + XCTAssertNotNil([db8 description]); } // // From GTMSQLite.m // CFStringEncoding SqliteTextEncodingToCFStringEncoding(int enc); // - (void)testEncodingMappingIsCorrect { -// STAssertTrue(SqliteTextEncodingToCFStringEncoding(SQLITE_UTF8) == -// kCFStringEncodingUTF8, -// @"helper method didn't return right encoding for " -// @"kCFStringEncodingUTF8"); - -// STAssertTrue(SqliteTextEncodingToCFStringEncoding(SQLITE_UTF16BE) -// == kCFStringEncodingUTF16BE, -// @"helper method didn't return right encoding for " -// @"kCFStringEncodingUTF16BE"); - -// STAssertTrue(SqliteTextEncodingToCFStringEncoding(SQLITE_UTF16LE) -// == kCFStringEncodingUTF16LE, -// @"helper method didn't return right encoding for " -// @"kCFStringEncodingUTF16LE"); - -// STAssertTrue(SqliteTextEncodingToCFStringEncoding(9999) -// == kCFStringEncodingUTF8, @"helper method didn't " -// @"return default encoding for invalid input"); +// XCTAssertTrue(SqliteTextEncodingToCFStringEncoding(SQLITE_UTF8) == +// kCFStringEncodingUTF8, +// @"helper method didn't return right encoding for " +// @"kCFStringEncodingUTF8"); + +// XCTAssertTrue(SqliteTextEncodingToCFStringEncoding(SQLITE_UTF16BE) +// == kCFStringEncodingUTF16BE, +// @"helper method didn't return right encoding for " +// @"kCFStringEncodingUTF16BE"); + +// XCTAssertTrue(SqliteTextEncodingToCFStringEncoding(SQLITE_UTF16LE) +// == kCFStringEncodingUTF16LE, +// @"helper method didn't return right encoding for " +// @"kCFStringEncodingUTF16LE"); + +// XCTAssertTrue(SqliteTextEncodingToCFStringEncoding(9999) +// == kCFStringEncodingUTF8, @"helper method didn't " +// @"return default encoding for invalid input"); // } @end @@ -1182,8 +1148,8 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:nil inDatabase:nil errorCode:&err]; - STAssertNil(statement, @"Create statement succeeded with nil SQL string"); - STAssertEquals(err, SQLITE_MISUSE, @"Err was not SQLITE_MISUSE on nil " + XCTAssertNil(statement, @"Create statement succeeded with nil SQL string"); + XCTAssertEqual(err, SQLITE_MISUSE, @"Err was not SQLITE_MISUSE on nil " @"SQL string"); GTMSQLiteDatabase *db = @@ -1196,8 +1162,8 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { inDatabase:db errorCode:&err]; - STAssertNil(statement, @"Select statement succeeded with invalid table"); - STAssertNotEquals(err, SQLITE_OK, + XCTAssertNil(statement, @"Select statement succeeded with invalid table"); + XCTAssertNotEqual(err, SQLITE_OK, @"Err was not SQLITE_MISUSE on invalid table"); [statement finalizeStatement]; @@ -1219,7 +1185,7 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { err = [db executeSQL:tableCreateSQL]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for collation test"); NSString *insert = @"insert into foo (tc, ic, rc, bc) values (:tc, :ic, :rc, :bc);"; @@ -1227,9 +1193,9 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); - STAssertEquals([statement parameterCount], 4, + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertEqual([statement parameterCount], 4, @"Bound parameter count was not 4"); [statement sqlite3Statement]; @@ -1253,7 +1219,7 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { NSArray *databases = [NSArray arrayWithObjects:dbWithCF, dbWithoutCF, nil]; GTMSQLiteDatabase *db; - GTM_FOREACH_OBJECT(db, databases) { + for (db in databases) { NSString *tableCreateSQL = @"CREATE TABLE foo (tc TEXT," @"ic integer," @@ -1261,7 +1227,7 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { @"bc blob);"; err = [db executeSQL:tableCreateSQL]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for collation test"); NSString *insert = @"insert into foo (tc, ic, rc, bc) " @@ -1270,8 +1236,8 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create statement"); + XCTAssertNotNil(statement, @"Failed to create statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create statement"); NSArray *parameterNames = [NSArray arrayWithObjects:@":tc", @":ic", @@ -1280,15 +1246,15 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { for (unsigned int i = 1; i <= [parameterNames count]; i++) { NSString *paramName = [parameterNames objectAtIndex:i-1]; - // Cast to signed int to avoid type errors from STAssertEquals - STAssertEquals((int)i, + // Cast to signed int to avoid type errors from XCTAssertEqual + XCTAssertEqual((int)i, [statement positionOfParameterNamed:paramName], @"positionOfParameterNamed API did not return correct " @"results"); - STAssertEqualStrings(paramName, - [statement nameOfParameterAtPosition:i], - @"nameOfParameterAtPosition API did not return " - @"correct name"); + XCTAssertEqualStrings(paramName, + [statement nameOfParameterAtPosition:i], + @"nameOfParameterAtPosition API did not return " + @"correct name"); } [statement finalizeStatement]; } @@ -1311,21 +1277,21 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { NSArray *databases = [NSArray arrayWithObjects:dbWithCF, dbWithoutCF, nil]; GTMSQLiteDatabase *db; - GTM_FOREACH_OBJECT(db, databases) { + for (db in databases) { // Test strategy is to create a table with 3 columns // Insert some values, and use the result collection APIs // to make sure we get the same values back err = [db executeSQL: @"CREATE TABLE blobby (bc blob);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for BLOB binding test"); NSString *insert = @"insert into blobby (bc) values (:bc);"; GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create insert statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create insert statement"); + XCTAssertNotNil(statement, @"Failed to create insert statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create insert statement"); char bytes[] = "DEADBEEF"; NSUInteger bytesLen = strlen(bytes); @@ -1333,10 +1299,10 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { err = [statement bindBlobAtPosition:1 data:originalBytes]; - STAssertEquals(err, SQLITE_OK, @"error binding BLOB at position 1"); + XCTAssertEqual(err, SQLITE_OK, @"error binding BLOB at position 1"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, @"failed to insert BLOB for BLOB test"); + XCTAssertEqual(err, SQLITE_DONE, @"failed to insert BLOB for BLOB test"); [statement finalizeStatement]; @@ -1344,30 +1310,30 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { statement = [GTMSQLiteStatement statementWithSQL:selectSQL inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create select statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create select statement"); + XCTAssertNotNil(statement, @"Failed to create select statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create select statement"); err = [statement stepRow]; // Check that we got at least one row back - STAssertEquals(err, SQLITE_ROW, @"did not retrieve a row from db :-("); - STAssertEquals([statement resultColumnCount], 1, + XCTAssertEqual(err, SQLITE_ROW, @"did not retrieve a row from db :-("); + XCTAssertEqual([statement resultColumnCount], 1, @"result had more columns than the table had?"); - STAssertEqualStrings([statement resultColumnNameAtPosition:BLOB_COLUMN], - @"bc", - @"column name dictionary was not correct"); + XCTAssertEqualStrings([statement resultColumnNameAtPosition:BLOB_COLUMN], + @"bc", + @"column name dictionary was not correct"); - STAssertEquals([statement rowDataCount], + XCTAssertEqual([statement rowDataCount], 1, @"More than one column returned?"); - STAssertEquals([statement resultColumnTypeAtPosition:BLOB_COLUMN], + XCTAssertEqual([statement resultColumnTypeAtPosition:BLOB_COLUMN], SQLITE_BLOB, @"Query for column 1 of test table was not BLOB!"); NSData *returnedbytes = [statement resultBlobDataAtPosition:BLOB_COLUMN]; - STAssertTrue([originalBytes isEqualToData:returnedbytes], - @"Queried data was not equal :-("); + XCTAssertTrue([originalBytes isEqualToData:returnedbytes], + @"Queried data was not equal :-("); [statement finalizeStatement]; } } @@ -1383,22 +1349,22 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { err = [db executeSQL: @"CREATE TABLE foo (tc TEXT);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for NULL binding test"); NSString *insert = @"insert into foo (tc) values (:tc);"; GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create insert statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create insert statement"); + XCTAssertNotNil(statement, @"Failed to create insert statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create insert statement"); err = [statement bindSQLNullAtPosition:1]; - STAssertEquals(err, SQLITE_OK, @"error binding NULL at position 1"); + XCTAssertEqual(err, SQLITE_OK, @"error binding NULL at position 1"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, @"failed to insert NULL for Null Binding test"); + XCTAssertEqual(err, SQLITE_DONE, @"failed to insert NULL for Null Binding test"); [statement finalizeStatement]; @@ -1406,12 +1372,12 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { statement = [GTMSQLiteStatement statementWithSQL:selectSQL inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create select statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create select statement"); + XCTAssertNotNil(statement, @"Failed to create select statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create select statement"); err = [statement stepRow]; // Check that we got at least one row back - STAssertEquals(err, SQLITE_ROW, @"did not retrieve a row from db :-("); + XCTAssertEqual(err, SQLITE_ROW, @"did not retrieve a row from db :-("); [statement finalizeStatement]; } @@ -1434,26 +1400,26 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { err = [db executeSQL: @"CREATE TABLE realTable (rc1 REAL, rc2 REAL);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for double binding test"); NSString *insert = @"insert into realTable (rc1, rc2) values (:rc1, :rc2);"; GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create insert statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create insert statement"); + XCTAssertNotNil(statement, @"Failed to create insert statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create insert statement"); err = [statement bindDoubleAtPosition:1 value:testVal]; - STAssertEquals(err, SQLITE_OK, @"error binding double at position 1"); + XCTAssertEqual(err, SQLITE_OK, @"error binding double at position 1"); err = [statement bindNumberAsDoubleAtPosition:2 number:doubleValue]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"error binding number as double at " @"position 2"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, + XCTAssertEqual(err, SQLITE_DONE, @"failed to insert doubles for double " @"binding test"); @@ -1463,20 +1429,20 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { statement = [GTMSQLiteStatement statementWithSQL:selectSQL inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create select statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create select statement"); + XCTAssertNotNil(statement, @"Failed to create select statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create select statement"); err = [statement stepRow]; // Check that we got at least one row back - STAssertEquals(err, SQLITE_ROW, @"did not retrieve a row from db :-("); + XCTAssertEqual(err, SQLITE_ROW, @"did not retrieve a row from db :-("); double retrievedValue = [statement resultDoubleAtPosition:0]; - STAssertEquals(retrievedValue, testVal, - @"Retrieved double did not equal " - @"original"); + XCTAssertEqualWithAccuracy(retrievedValue, testVal, 0.01, + @"Retrieved double did not equal " + @"original"); NSNumber *retrievedNumber = [statement resultNumberAtPosition:1]; - STAssertEqualObjects(retrievedNumber, doubleValue, - @"Retrieved NSNumber object did not equal"); + XCTAssertEqualObjects(retrievedNumber, doubleValue, + @"Retrieved NSNumber object did not equal"); [statement finalizeStatement]; } @@ -1497,14 +1463,14 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { NSArray *databases = [NSArray arrayWithObjects:dbWithCF, dbWithoutCF, nil]; GTMSQLiteDatabase *db; - GTM_FOREACH_OBJECT(db, databases) { + for (db in databases) { // Test strategy is to create a table with 3 columns // Insert some values, and use the result collection APIs // to make sure we get the same values back err = [db executeSQL: @"CREATE TABLE test (a integer, b text, c blob, d text);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for result collection test"); NSString *insert = @@ -1514,8 +1480,8 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create insert statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create insert statement"); + XCTAssertNotNil(statement, @"Failed to create insert statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create insert statement"); char blobChars[] = "DEADBEEF"; @@ -1523,10 +1489,10 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { NSData *blobData = [NSData dataWithBytes:blobChars length:blobLength]; err = [statement bindBlobAtPosition:1 data:blobData]; - STAssertEquals(err, SQLITE_OK, @"error binding BLOB at position 1"); + XCTAssertEqual(err, SQLITE_OK, @"error binding BLOB at position 1"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, + XCTAssertEqual(err, SQLITE_DONE, @"failed to insert doubles for double " @"binding test"); @@ -1537,16 +1503,16 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { statement = [GTMSQLiteStatement statementWithSQL:selectSQL inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create select statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create select statement"); + XCTAssertNotNil(statement, @"Failed to create select statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create select statement"); err = [statement stepRow]; // Check that we got at least one row back - STAssertEquals(err, SQLITE_ROW, @"did not retrieve a row from db :-("); - STAssertNotNil([statement resultRowArray], - @"Failed to retrieve result array"); - STAssertNotNil([statement resultRowDictionary], - @"Failed to retrieve result dictionary"); + XCTAssertEqual(err, SQLITE_ROW, @"did not retrieve a row from db :-("); + XCTAssertNotNil([statement resultRowArray], + @"Failed to retrieve result array"); + XCTAssertNotNil([statement resultRowDictionary], + @"Failed to retrieve result dictionary"); [statement finalizeStatement]; } } @@ -1570,7 +1536,7 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { err = [db executeSQL: @"CREATE TABLE integerTable (ic1 integer, ic2 integer);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for integer binding test"); NSString *insert = @"insert into integerTable (ic1, ic2) values (:ic1, :ic2);"; @@ -1578,19 +1544,19 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create insert statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create insert statement"); + XCTAssertNotNil(statement, @"Failed to create insert statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create insert statement"); err = [statement bindInt32AtPosition:1 value:testVal]; - STAssertEquals(err, SQLITE_OK, @"error binding integer at position 1"); + XCTAssertEqual(err, SQLITE_OK, @"error binding integer at position 1"); err = [statement bindNumberAsInt32AtPosition:2 number:intValue]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"error binding number as integer at " @"position 2"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, + XCTAssertEqual(err, SQLITE_DONE, @"failed to insert integers for integer " @"binding test"); @@ -1600,20 +1566,20 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { statement = [GTMSQLiteStatement statementWithSQL:selectSQL inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create select statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create select statement"); + XCTAssertNotNil(statement, @"Failed to create select statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create select statement"); err = [statement stepRow]; // Check that we got at least one row back - STAssertEquals(err, SQLITE_ROW, @"did not retrieve a row from db :-("); + XCTAssertEqual(err, SQLITE_ROW, @"did not retrieve a row from db :-("); int retrievedValue = [statement resultInt32AtPosition:0]; - STAssertEquals(retrievedValue, testVal, + XCTAssertEqual(retrievedValue, testVal, @"Retrieved integer did not equal " @"original"); NSNumber *retrievedNumber = [statement resultNumberAtPosition:1]; - STAssertEqualObjects(retrievedNumber, intValue, - @"Retrieved NSNumber object did not equal"); + XCTAssertEqualObjects(retrievedNumber, intValue, + @"Retrieved NSNumber object did not equal"); [statement finalizeStatement]; } @@ -1635,9 +1601,9 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { NSNumber *longlongValue = [NSNumber numberWithLongLong:testVal]; err = [db executeSQL: - @"CREATE TABLE longlongTable (llc1 integer, llc2 integer);"]; + @"CREATE TABLE longlongTable (llc1 integer, llc2 integer);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for long long binding test"); NSString *insert = @"insert into longlongTable (llc1, llc2) " @@ -1646,19 +1612,19 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create insert statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create insert statement"); + XCTAssertNotNil(statement, @"Failed to create insert statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create insert statement"); err = [statement bindLongLongAtPosition:1 value:testVal]; - STAssertEquals(err, SQLITE_OK, @"error binding long long at position 1"); + XCTAssertEqual(err, SQLITE_OK, @"error binding long long at position 1"); err = [statement bindNumberAsLongLongAtPosition:2 number:longlongValue]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"error binding number as long long at " @"position 2"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, + XCTAssertEqual(err, SQLITE_DONE, @"failed to insert long longs for long long " @"binding test"); @@ -1669,20 +1635,20 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { statement = [GTMSQLiteStatement statementWithSQL:selectSQL inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create select statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create select statement"); + XCTAssertNotNil(statement, @"Failed to create select statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create select statement"); err = [statement stepRow]; // Check that we got at least one row back - STAssertEquals(err, SQLITE_ROW, @"did not retrieve a row from db :-("); + XCTAssertEqual(err, SQLITE_ROW, @"did not retrieve a row from db :-("); long long retrievedValue = [statement resultLongLongAtPosition:0]; - STAssertEquals(retrievedValue, testVal, + XCTAssertEqual(retrievedValue, testVal, @"Retrieved long long did not equal " @"original"); NSNumber *retrievedNumber = [statement resultNumberAtPosition:1]; - STAssertEqualObjects(retrievedNumber, longlongValue, - @"Retrieved NSNumber object did not equal"); + XCTAssertEqualObjects(retrievedNumber, longlongValue, + @"Retrieved NSNumber object did not equal"); [statement finalizeStatement]; } @@ -1701,7 +1667,7 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { err = [db executeSQL: @"CREATE TABLE stringTable (sc1 text);"]; - STAssertEquals(err, SQLITE_OK, + XCTAssertEqual(err, SQLITE_OK, @"Failed to create table for string binding test"); NSString *insert = @@ -1711,15 +1677,15 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { GTMSQLiteStatement *statement = [GTMSQLiteStatement statementWithSQL:insert inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create insert statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create insert statement"); + XCTAssertNotNil(statement, @"Failed to create insert statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create insert statement"); NSString *testVal = @"this is a test string"; err = [statement bindStringAtPosition:1 string:testVal]; - STAssertEquals(err, SQLITE_OK, @"error binding string at position 1"); + XCTAssertEqual(err, SQLITE_OK, @"error binding string at position 1"); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, + XCTAssertEqual(err, SQLITE_DONE, @"failed to insert string for string binding test"); [statement finalizeStatement]; @@ -1731,14 +1697,14 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { statement = [GTMSQLiteStatement statementWithSQL:selectSQL inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create select statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create select statement"); + XCTAssertNotNil(statement, @"Failed to create select statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create select statement"); err = [statement stepRow]; // Check that we got at least one row back - STAssertEquals(err, SQLITE_ROW, @"did not retrieve a row from db :-("); + XCTAssertEqual(err, SQLITE_ROW, @"did not retrieve a row from db :-("); err = [statement stepRow]; - STAssertEquals(err, SQLITE_DONE, @"retrieved more than 1 row from db :-("); + XCTAssertEqual(err, SQLITE_DONE, @"retrieved more than 1 row from db :-("); [statement finalizeStatement]; } @@ -1752,61 +1718,54 @@ static NSArray* LikeGlobTestHelper(GTMSQLiteDatabase *db, NSString *sql) { errorCode:&err] autorelease]; - STAssertNotNil(db, @"Failed to create database"); + XCTAssertNotNil(db, @"Failed to create database"); sqlite3 *sqlite3DB = [db sqlite3DB]; - + NSString *selectSQL = @"select 1"; GTMSQLiteStatement *statement; statement = [GTMSQLiteStatement statementWithSQL:selectSQL inDatabase:db errorCode:&err]; - STAssertNotNil(statement, @"Failed to create select statement"); - STAssertEquals(err, SQLITE_OK, @"Failed to create select statement"); + XCTAssertNotNil(statement, @"Failed to create select statement"); + XCTAssertEqual(err, SQLITE_OK, @"Failed to create select statement"); sqlite3_stmt *sqlite3Statment = [statement sqlite3Statement]; err = [statement stepRow]; - STAssertEquals(err, SQLITE_ROW, + XCTAssertEqual(err, SQLITE_ROW, @"failed to step row for finalize test"); - - NSString *expectedLog = - @"-[GTMSQLiteStatement finalizeStatement] must be called " - @"when statement is no longer needed"; - - [GTMUnitTestDevLog expectString:@"%@", expectedLog]; - [GTMUnitTestDevLog expectPattern:@"Unable to close .*"]; [localPool drain]; - + // Clean up leaks. Since we hadn't finalized the statement above we // were unable to clean up the sqlite databases. Since the pool is drained // all of our objective-c objects are gone, so we have to call the // sqlite3 api directly. - STAssertEquals(sqlite3_finalize(sqlite3Statment), SQLITE_OK, nil); - STAssertEquals(sqlite3_close(sqlite3DB), SQLITE_OK, nil); + XCTAssertEqual(sqlite3_finalize(sqlite3Statment), SQLITE_OK); + XCTAssertEqual(sqlite3_close(sqlite3DB), SQLITE_OK); } - (void)testCompleteSQLString { NSString *str = @"CREATE TABLE longlongTable (llc1 integer, llc2 integer);"; BOOL isComplete = [GTMSQLiteStatement isCompleteStatement:str]; - STAssertTrue(isComplete, nil); + XCTAssertTrue(isComplete); isComplete = [GTMSQLiteStatement isCompleteStatement:@""]; - STAssertTrue(isComplete, nil); + XCTAssertFalse(isComplete); isComplete = [GTMSQLiteStatement isCompleteStatement:@"CR"]; - STAssertFalse(isComplete, nil); + XCTAssertFalse(isComplete); } - (void)testQuotingSQLString { NSString *str = @"This is wild! It's fun!"; NSString *str2 = [GTMSQLiteStatement quoteAndEscapeString:str]; - STAssertEqualObjects(str2, @"'This is wild! It''s fun!'", nil); + XCTAssertEqualObjects(str2, @"'This is wild! It''s fun!'"); str2 = [GTMSQLiteStatement quoteAndEscapeString:@""]; - STAssertEqualObjects(str2, @"''", nil); + XCTAssertEqualObjects(str2, @"''"); } - (void)testVersion { - STAssertGreaterThan([GTMSQLiteDatabase sqliteVersionNumber], 0, nil); - STAssertNotNil([GTMSQLiteDatabase sqliteVersionString], nil); + XCTAssertGreaterThan([GTMSQLiteDatabase sqliteVersionNumber], 0); + XCTAssertNotNil([GTMSQLiteDatabase sqliteVersionString]); } @end |