summaryrefslogtreecommitdiff
path: root/SmartDeviceLinkTests/ProtocolSpecs
diff options
context:
space:
mode:
authorSho Amano <samano@xevo.com>2018-03-07 23:01:30 +0900
committerSho Amano <samano@xevo.com>2018-07-05 13:14:58 +0900
commitd848659b055f634812783c78dca934654b92f6c6 (patch)
tree38c66cad6f42ba349b7b65120496e8bfff1d557e /SmartDeviceLinkTests/ProtocolSpecs
parent05823a3b097d14624ce0840031dfc45efa8d468d (diff)
downloadsdl_ios-d848659b055f634812783c78dca934654b92f6c6.tar.gz
Add new BSON params in Start Service ACK frame
Diffstat (limited to 'SmartDeviceLinkTests/ProtocolSpecs')
-rw-r--r--SmartDeviceLinkTests/ProtocolSpecs/SDLControlFramePayloadRPCStartServiceAckSpec.m76
1 files changed, 63 insertions, 13 deletions
diff --git a/SmartDeviceLinkTests/ProtocolSpecs/SDLControlFramePayloadRPCStartServiceAckSpec.m b/SmartDeviceLinkTests/ProtocolSpecs/SDLControlFramePayloadRPCStartServiceAckSpec.m
index 7397f5713..8a198c63e 100644
--- a/SmartDeviceLinkTests/ProtocolSpecs/SDLControlFramePayloadRPCStartServiceAckSpec.m
+++ b/SmartDeviceLinkTests/ProtocolSpecs/SDLControlFramePayloadRPCStartServiceAckSpec.m
@@ -14,6 +14,9 @@ describe(@"Test encoding data", ^{
__block int32_t testHashId = 0;
__block int64_t testMTU = 0;
__block NSString *testProtocolVersion = nil;
+ __block NSArray<NSString *> *testSecondaryTransports = nil;
+ __block NSArray<NSNumber *> *testAudioServiceTransports = nil;
+ __block NSArray<NSNumber *> *testVideoServiceTransports = nil;
context(@"with paramaters", ^{
beforeEach(^{
@@ -21,7 +24,7 @@ describe(@"Test encoding data", ^{
testMTU = 5984649;
testProtocolVersion = @"1.32.32";
- testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:testHashId mtu:testMTU protocolVersion:testProtocolVersion];
+ testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:testHashId mtu:testMTU protocolVersion:testProtocolVersion secondaryTransports:nil audioServiceTransports:nil videoServiceTransports:nil];
});
it(@"should create the correct data", ^{
@@ -29,12 +32,29 @@ describe(@"Test encoding data", ^{
});
});
+ context(@"with secondary transport paramaters", ^{
+ beforeEach(^{
+ testHashId = 987654;
+ testMTU = 4096;
+ testProtocolVersion = @"5.10.01";
+ testSecondaryTransports = @[@"TCP_WIFI", @"IAP_USB"];
+ testAudioServiceTransports = @[@(2)];
+ testVideoServiceTransports = @[(@2), @(1)];
+
+ testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:testHashId mtu:testMTU protocolVersion:testProtocolVersion secondaryTransports:testSecondaryTransports audioServiceTransports:testAudioServiceTransports videoServiceTransports:testVideoServiceTransports];
+ });
+
+ it(@"should create the correct data", ^{
+ expect(testPayload.data.description).to(equal(@"<c3000000 04766964 656f5365 72766963 65547261 6e73706f 72747300 13000000 10300002 00000010 31000100 00000010 68617368 49640006 120f0012 6d747500 00100000 00000000 04736563 6f6e6461 72795472 616e7370 6f727473 00240000 00023000 09000000 5443505f 57494649 00023100 08000000 4941505f 55534200 00046175 64696f53 65727669 63655472 616e7370 6f727473 000c0000 00103000 02000000 00027072 6f746f63 6f6c5665 7273696f 6e000800 0000352e 31302e30 310000>"));
+ });
+ });
+
context(@"without parameters", ^{
beforeEach(^{
testHashId = SDLControlFrameInt32NotFound;
testMTU = SDLControlFrameInt64NotFound;
- testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:testHashId mtu:testMTU protocolVersion:nil];
+ testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:testHashId mtu:testMTU protocolVersion:nil secondaryTransports:nil audioServiceTransports:nil videoServiceTransports:nil];
});
it(@"should create no data", ^{
@@ -49,22 +69,52 @@ describe(@"Test decoding data", ^{
__block int32_t testHashId = 0;
__block int64_t testMTU = 0;
__block NSString *testProtocolVersion = nil;
+ __block NSArray<NSString *> *testSecondaryTransports = nil;
+ __block NSArray<NSNumber *> *testAudioServiceTransports = nil;
+ __block NSArray<NSNumber *> *testVideoServiceTransports = nil;
- beforeEach(^{
- testHashId = 1545784;
- testMTU = 989786483;
- testProtocolVersion = @"3.89.5";
+ context(@"with paramaters", ^{
+ beforeEach(^{
+ testHashId = 1545784;
+ testMTU = 989786483;
+ testProtocolVersion = @"3.89.5";
- SDLControlFramePayloadRPCStartServiceAck *firstPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:testHashId mtu:testMTU protocolVersion:testProtocolVersion];
- testData = firstPayload.data;
+ SDLControlFramePayloadRPCStartServiceAck *firstPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:testHashId mtu:testMTU protocolVersion:testProtocolVersion secondaryTransports:nil audioServiceTransports:nil videoServiceTransports:nil];
+ testData = firstPayload.data;
- testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithData:testData];
+ testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithData:testData];
+ });
+
+ it(@"should output the correct params", ^{
+ expect(testPayload.hashId).to(equal(testHashId));
+ expect(testPayload.mtu).to(equal(testMTU));
+ expect(testPayload.protocolVersion).to(equal(testProtocolVersion));
+ });
});
- it(@"should output the correct params", ^{
- expect(testPayload.hashId).to(equal(testHashId));
- expect(testPayload.mtu).to(equal(testMTU));
- expect(testPayload.protocolVersion).to(equal(testProtocolVersion));
+ context(@"with secondary transportparamaters", ^{
+ beforeEach(^{
+ testHashId = 17999024;
+ testMTU = 1798250;
+ testProtocolVersion = @"6.01.00";
+ testSecondaryTransports = @[@"TCP_WIFI"];
+ testAudioServiceTransports = @[@(2), @(1)];
+ testVideoServiceTransports = @[@(1)];
+
+ SDLControlFramePayloadRPCStartServiceAck *firstPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithHashId:testHashId mtu:testMTU protocolVersion:testProtocolVersion secondaryTransports:testSecondaryTransports audioServiceTransports:testAudioServiceTransports videoServiceTransports:testVideoServiceTransports];
+ testData = firstPayload.data;
+
+ testPayload = [[SDLControlFramePayloadRPCStartServiceAck alloc] initWithData:testData];
+ });
+
+ it(@"should output the correct params", ^{
+ expect(testPayload.hashId).to(equal(testHashId));
+ expect(testPayload.mtu).to(equal(testMTU));
+ expect(testPayload.protocolVersion).to(equal(testProtocolVersion));
+ expect(testPayload.secondaryTransports).to(equal(testSecondaryTransports));
+ expect(testPayload.audioServiceTransports).to(equal(testAudioServiceTransports));
+ expect(testPayload.videoServiceTransports).to(equal(testVideoServiceTransports));
+ });
});
});