summaryrefslogtreecommitdiff
path: root/SmartDeviceLinkTests/RPCSpecs/RequestSpecs/SDLDialNumberSpec.m
blob: a150144c12ac14ac01e538689ab975483e8506a5 (plain)
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
70
71
72
73
74
75
76
77
78
79
80
//
//  SDLDialNumberSpec.m
//  SmartDeviceLink-iOS

#import <Quick/Quick.h>
#import <Nimble/Nimble.h>

#import "SDLDialNumber.h"
#import "SDLNames.h"


QuickSpecBegin(SDLDialNumberSpec)

describe(@"Dial Number RPC", ^{
    describe(@"when initialized with 'init'", ^{
        __block SDLDialNumber *testRequest = nil;
        beforeEach(^{
            testRequest = [[SDLDialNumber alloc] init];
        });
        
        context(@"when parameters are set correctly", ^{
            __block NSString *somePhoneNumber = nil;
            beforeEach(^{
                somePhoneNumber = @"1234567890";
                testRequest.number = [somePhoneNumber copy];
            });
            
            it(@"should get 'number' correctly", ^{
                expect(testRequest.number).to(equal(somePhoneNumber));
            });
        });
        
        context(@"when parameters are not set correctly", ^{
            it(@"should return nil for number", ^{
                expect(testRequest.number).to(beNil());
            });
        });
    });
    
    describe(@"when initialized with a dictionary and parameters are set correctly", ^{
        __block SDLDialNumber *testRequest = nil;
        __block NSString *somePhoneNumber = nil;
        beforeEach(^{
            somePhoneNumber = @"1234567890";
            NSDictionary *initDict = @{
                                       SDLNameRequest: @{
                                               SDLNameParameters: @{
                                                       SDLNameNumber: [somePhoneNumber copy]
                                                       }
                                               }
                                       };
            
            testRequest = [[SDLDialNumber alloc] initWithDictionary:[initDict mutableCopy]];
        });
        
        it(@"should get 'number' correctly", ^{
            expect(testRequest.number).to(equal(somePhoneNumber));
        });
    });
    
    describe(@"when initialized with a dictionary and parameters are not set correctly", ^{
        __block SDLDialNumber *testRequest = nil;
        beforeEach(^{
            NSDictionary *initDict = @{
                                       SDLNameRequest: @{
                                               SDLNameParameters: @{
                                                       }
                                               }
                                       };
            
            testRequest = [[SDLDialNumber alloc] initWithDictionary:[initDict mutableCopy]];
        });
        
        it(@"should return nil for number", ^{
            expect(testRequest.number).to(beNil());
        });
    });
});

QuickSpecEnd