Example: [YapDatabaseQuery queryWithFormat:@"WHERE col IN (?)", anArray]; - Adds unit tests for YapDatabaseQuery - Adds new unit test for YapDatabaseSecondaryIndex since it makes use of YapDatabaseQuery Addresses issue #119
46 lines
2.3 KiB
Objective-C
46 lines
2.3 KiB
Objective-C
#import <XCTest/XCTest.h>
|
|
|
|
#import "YapDatabaseQuery.h"
|
|
|
|
@interface TestYapDatabaseQuery : XCTestCase
|
|
@end
|
|
|
|
@implementation TestYapDatabaseQuery
|
|
|
|
- (void)test1
|
|
{
|
|
YapDatabaseQuery *query = [YapDatabaseQuery queryWithFormat:@"WHERE col > 5"];
|
|
XCTAssertTrue([query.queryString isEqualToString:@"WHERE col > 5"], @"Incorrect queryString");
|
|
|
|
query = [YapDatabaseQuery queryWithFormat:@"WHERE col > ?", @(5)];
|
|
NSArray *expectedArguments = @[@(5)];
|
|
XCTAssertTrue([query.queryString isEqualToString:@"WHERE col > ?"], @"Incorrect queryString");
|
|
XCTAssertTrue([query.queryParameters isEqualToArray:@[@(5)]], @"Incorrect queryParameters");
|
|
|
|
query = [YapDatabaseQuery queryWithFormat:@"WHERE col > ? AND col < ?", @(1), @(5)];
|
|
expectedArguments = @[@(1), @(5)];
|
|
XCTAssertTrue([query.queryString isEqualToString:@"WHERE col > ? AND col < ?"], @"Incorrect queryString");
|
|
XCTAssertTrue([query.queryParameters isEqualToArray:expectedArguments], @"Incorrect queryParameters");
|
|
|
|
query = [YapDatabaseQuery queryWithFormat:@"WHERE col > ? AND col < ?", @(1), @(5)];
|
|
expectedArguments = @[@(1), @(5)];
|
|
XCTAssertTrue([query.queryString isEqualToString:@"WHERE col > ? AND col < ?"], @"Incorrect queryString");
|
|
XCTAssertTrue([query.queryParameters isEqualToArray:expectedArguments], @"Incorrect queryParameters");
|
|
|
|
query = [YapDatabaseQuery queryWithFormat:@"WHERE col IN (?)", @[@(1), @(5)]];
|
|
expectedArguments = @[@(1), @(5)];
|
|
XCTAssertTrue([query.queryString isEqualToString:@"WHERE col IN (?,?)"], @"Incorrect queryString");
|
|
XCTAssertTrue([query.queryParameters isEqualToArray:expectedArguments], @"Incorrect queryParameters");
|
|
|
|
query = [YapDatabaseQuery queryWithFormat:@"WHERE col IN (?) AND col2 <> ?", @[@(1), @(5)], @"test"];
|
|
expectedArguments = @[@(1), @(5), @"test"];
|
|
XCTAssertTrue([query.queryString isEqualToString:@"WHERE col IN (?,?) AND col2 <> ?"], @"Incorrect queryString");
|
|
XCTAssertTrue([query.queryParameters isEqualToArray:expectedArguments], @"Incorrect queryParameters");
|
|
|
|
query = [YapDatabaseQuery queryWithFormat:@"WHERE col2 <> ? AND col IN (?)", @"test", @[@(1), @(5)]];
|
|
expectedArguments = @[@"test", @(1), @(5)];
|
|
XCTAssertTrue([query.queryString isEqualToString:@"WHERE col2 <> ? AND col IN (?,?)"], @"Incorrect queryString");
|
|
XCTAssertTrue([query.queryParameters isEqualToArray:expectedArguments], @"Incorrect queryParameters");
|
|
}
|
|
|
|
@end |