-
Notifications
You must be signed in to change notification settings - Fork 2
/
Sensis_SAPI_MetadataTests.m
69 lines (52 loc) · 2.23 KB
/
Sensis_SAPI_MetadataTests.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//
// Sensis_SAPI_MetadataTests.m
// Sensis SAPI
//
// Created by Mark Aufflick on 22/03/12.
// Copyright (c) 2012 Pumptheory Pty Ltd. All rights reserved.
//
#import "Sensis_SAPI_MetadataTests.h"
#import "SAPI.h"
#import "SAPITestAccountKey.h"
#import "SAPIMetadata.h"
@implementation Sensis_SAPI_MetadataTests
- (void)setUp
{
[super setUp];
[SAPI setKey:SAPI_TEST_KEY];
[SAPI setEnvironment:SAPI_TEST_ENVIRONMENT];
// we need to stay slow so the tests can succeed in SAPI test environment due to rate limit
sleep(1);
}
- (void)tearDown
{
// Tear-down code here.
[super tearDown];
}
- (void)testCategories
{
SAPIMetadata * metadataQuery = [[SAPIMetadata alloc] init];
metadataQuery.dataType = SAPIMetadataCategoriesKey;
SAPIError * error = nil;
SAPIMetadataResult * res = [metadataQuery performQueryWithError:&error];
STAssertNotNil(res, [NSString stringWithFormat:@"Categories query returned no results (%@)", error]);
STAssertTrue([res.categories isKindOfClass:[NSArray class]], @"Returned results are not NSArray");
STAssertFalse([res.categories count] == 0, @"We expect a categories query to have > 0 results");
NSDictionary * firstResult = [res.categories objectAtIndex:0];
STAssertTrue([firstResult isKindOfClass:[NSDictionary class]], @"first result entry is not a dictionary");
STAssertTrue([[firstResult objectForKey:@"id"] isKindOfClass:[NSNumber class]], @"id key is not a number");
STAssertTrue([[firstResult objectForKey:@"name"] isKindOfClass:[NSString class]], @"id key is not a string");
[metadataQuery release];
}
- (void)testCategoryGroups
{
SAPIMetadata * metadataQuery = [[SAPIMetadata alloc] init];
metadataQuery.dataType = SAPIMetadataCategoryGroupsKey;
SAPIError * error = nil;
SAPIMetadataResult * res = [metadataQuery performQueryWithError:&error];
STAssertNotNil(res, [NSString stringWithFormat:@"CategoryGroups query returned no results (%@)", error]);
STAssertTrue([res.categoryGroups isKindOfClass:[NSArray class]], @"Returned results are not NSArray");
STAssertFalse([res.categoryGroups count] == 0, @"We expect a categoryGroups query to have > 0 results");
[metadataQuery release];
}
@end