diff options
author | NicoleYarroch <nicole@livio.io> | 2019-03-06 16:12:29 -0500 |
---|---|---|
committer | NicoleYarroch <nicole@livio.io> | 2019-03-06 16:12:29 -0500 |
commit | 7555bfad168e548b2daad681d5670ef396859888 (patch) | |
tree | 4b5f3f302bcd2b8e603de81f0f7d8bfbe7341a1c | |
parent | ac2b9f1a843ffb6c2d4f443eccab06ea1803a8a6 (diff) | |
download | sdl_ios-7555bfad168e548b2daad681d5670ef396859888.tar.gz |
Added conv. init to `AppServiceData`
-rw-r--r-- | SmartDeviceLink/SDLAppServiceData.h | 11 | ||||
-rw-r--r-- | SmartDeviceLink/SDLAppServiceData.m | 4 | ||||
-rw-r--r-- | SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLAppServiceDataSpec.m | 12 |
3 files changed, 27 insertions, 0 deletions
diff --git a/SmartDeviceLink/SDLAppServiceData.h b/SmartDeviceLink/SDLAppServiceData.h index 29071708f..af2ec4ded 100644 --- a/SmartDeviceLink/SDLAppServiceData.h +++ b/SmartDeviceLink/SDLAppServiceData.h @@ -8,6 +8,8 @@ #import "SDLRPCRequest.h" +#import "SDLAppServiceType.h" + @class SDLMediaServiceData; @class SDLNavigationServiceData; @class SDLWeatherServiceData; @@ -30,6 +32,15 @@ NS_ASSUME_NONNULL_BEGIN - (instancetype)initWithServiceType:(NSString *)serviceType serviceId:(NSString *)serviceId NS_DESIGNATED_INITIALIZER; /** + * Convenience init for service type and service id. + * + * @param serviceType The type of service that is to be offered by this app. + * @param serviceId A unique ID tied to this specific service record. + * @return A SDLAppServiceData object + */ +- (instancetype)initWithAppServiceType:(SDLAppServiceType)serviceType serviceId:(NSString *)serviceId; + +/** * Convenience init for media service data. * * @param mediaServiceData The media service data diff --git a/SmartDeviceLink/SDLAppServiceData.m b/SmartDeviceLink/SDLAppServiceData.m index 2efd5e07d..8453278ff 100644 --- a/SmartDeviceLink/SDLAppServiceData.m +++ b/SmartDeviceLink/SDLAppServiceData.m @@ -31,6 +31,10 @@ NS_ASSUME_NONNULL_BEGIN return self; } +- (instancetype)initWithAppServiceType:(SDLAppServiceType)serviceType serviceId:(NSString *)serviceId { + return [self initWithServiceType:serviceType serviceId:serviceId]; +} + - (instancetype)initWithMediaServiceData:(SDLMediaServiceData *)mediaServiceData serviceId:(NSString *)serviceId { self = [self initWithServiceType:SDLAppServiceTypeMedia serviceId:serviceId]; if (!self) { diff --git a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLAppServiceDataSpec.m b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLAppServiceDataSpec.m index 30d149b56..3e94c5def 100644 --- a/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLAppServiceDataSpec.m +++ b/SmartDeviceLinkTests/RPCSpecs/StructSpecs/SDLAppServiceDataSpec.m @@ -20,6 +20,7 @@ QuickSpecBegin(SDLAppServiceDataSpec) describe(@"Getter/Setter Tests", ^{ __block NSString *testServiceType = nil; + __block SDLAppServiceType testAppServiceType = nil; __block NSString *testServiceId = nil; __block SDLMediaServiceData *testMediaServiceData = nil; __block SDLWeatherServiceData *testWeatherServiceData = nil; @@ -27,6 +28,7 @@ describe(@"Getter/Setter Tests", ^{ beforeEach(^{ testServiceType = SDLAppServiceTypeMedia; + testAppServiceType = SDLAppServiceTypeNavigation; testServiceId = @"a1*54z"; testMediaServiceData = [[SDLMediaServiceData alloc] init]; testWeatherServiceData = [[SDLWeatherServiceData alloc] init]; @@ -74,6 +76,16 @@ describe(@"Getter/Setter Tests", ^{ expect(testStruct.navigationServiceData).to(beNil()); }); + it(@"Should get correctly when initialized with initWithAppServiceType:serviceId:", ^{ + SDLAppServiceData *testStruct = [[SDLAppServiceData alloc] initWithAppServiceType:testAppServiceType serviceId:testServiceId]; + + expect(testStruct.serviceType).to(equal(testAppServiceType)); + expect(testStruct.serviceId).to(equal(testServiceId)); + expect(testStruct.mediaServiceData).to(beNil()); + expect(testStruct.weatherServiceData).to(beNil()); + expect(testStruct.navigationServiceData).to(beNil()); + }); + it(@"Should get correctly when initialized with initWithMediaServiceData:serviceId:", ^{ SDLAppServiceData *testStruct = [[SDLAppServiceData alloc] initWithMediaServiceData:testMediaServiceData serviceId:testServiceId]; |