summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrettyWhite <geekman3454@protonmail.com>2017-07-24 13:25:10 -0400
committerBrettyWhite <geekman3454@protonmail.com>2017-07-24 13:25:10 -0400
commitab4765e2e08d39400586109200e9e7170a33c6f0 (patch)
tree76d61a2db8667057f6f2076061954dbda2a8af1f
parent38dc7e0008299f818a2e9274e432a4b098c4d57e (diff)
downloadsdl_ios-feature/implement_SDL_0076_additional_languages.tar.gz
-rw-r--r--SmartDeviceLink/SDLLanguage.h65
-rw-r--r--SmartDeviceLink/SDLLanguage.m116
-rw-r--r--SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLLanguageSpec.m41
3 files changed, 221 insertions, 1 deletions
diff --git a/SmartDeviceLink/SDLLanguage.h b/SmartDeviceLink/SDLLanguage.h
index 662d43e4a..f1eef4909 100644
--- a/SmartDeviceLink/SDLLanguage.h
+++ b/SmartDeviceLink/SDLLanguage.h
@@ -28,6 +28,71 @@
*/
+ (NSArray *)values;
/*!
+ @abstract English_SA
+ */
++ (SDLLanguage *)EN_SA;
+
+/*!
+ @abstract Hebrew_IL
+ */
++ (SDLLanguage *)HE_IL;
+
+/*!
+ @abstract Romanian_RO
+ */
++ (SDLLanguage *)RO_RO;
+
+/*!
+ @abstract Ukrainian_UA
+ */
++ (SDLLanguage *)UK_UA;
+
+/*!
+ @abstract Indonesian_ID
+ */
++ (SDLLanguage *)ID_ID;
+
+/*!
+ @abstract Vietnamese_VN
+ */
++ (SDLLanguage *)VI_VN;
+
+/*!
+ @abstract Malay_MY
+ */
++ (SDLLanguage *)MS_MY;
+
+/*!
+ @abstract Hindi_IN
+ */
++ (SDLLanguage *)HI_IN;
+
+/*!
+ @abstract Dutch_BE
+ */
++ (SDLLanguage *)NL_BE;
+
+/*!
+ @abstract Greek_GR
+ */
++ (SDLLanguage *)EL_GR;
+
+/*!
+ @abstract Hungarian_HU
+ */
++ (SDLLanguage *)HU_HU;
+
+/*!
+ @abstract Finnish_FI
+ */
++ (SDLLanguage *)FI_FI;
+
+/*!
+ @abstract Slovak_SK
+ */
++ (SDLLanguage *)SK_SK;
+
+/*!
@abstract English_US
*/
+ (SDLLanguage *)EN_US;
diff --git a/SmartDeviceLink/SDLLanguage.m b/SmartDeviceLink/SDLLanguage.m
index bd56e3231..3fb564513 100644
--- a/SmartDeviceLink/SDLLanguage.m
+++ b/SmartDeviceLink/SDLLanguage.m
@@ -4,6 +4,19 @@
#import "SDLLanguage.h"
+SDLLanguage *SDLLanguage_EN_SA = nil;
+SDLLanguage *SDLLanguage_HE_IL = nil;
+SDLLanguage *SDLLanguage_RO_RO = nil;
+SDLLanguage *SDLLanguage_UK_UA = nil;
+SDLLanguage *SDLLanguage_ID_ID = nil;
+SDLLanguage *SDLLanguage_VI_VN = nil;
+SDLLanguage *SDLLanguage_MS_MY = nil;
+SDLLanguage *SDLLanguage_HI_IN = nil;
+SDLLanguage *SDLLanguage_NL_BE = nil;
+SDLLanguage *SDLLanguage_EL_GR = nil;
+SDLLanguage *SDLLanguage_HU_HU = nil;
+SDLLanguage *SDLLanguage_FI_FI = nil;
+SDLLanguage *SDLLanguage_SK_SK = nil;
SDLLanguage *SDLLanguage_EN_US = nil;
SDLLanguage *SDLLanguage_EN_IN = nil;
SDLLanguage *SDLLanguage_TH_TH = nil;
@@ -47,6 +60,19 @@ NSArray *SDLLanguage_values = nil;
+ (NSArray *)values {
if (SDLLanguage_values == nil) {
SDLLanguage_values = @[
+ SDLLanguage.EN_SA,
+ SDLLanguage.HE_IL,
+ SDLLanguage.RO_RO,
+ SDLLanguage.UK_UA,
+ SDLLanguage.ID_ID,
+ SDLLanguage.VI_VN,
+ SDLLanguage.MS_MY,
+ SDLLanguage.HI_IN,
+ SDLLanguage.NL_BE,
+ SDLLanguage.EL_GR,
+ SDLLanguage.HU_HU,
+ SDLLanguage.FI_FI,
+ SDLLanguage.SK_SK,
SDLLanguage.EN_US,
SDLLanguage.EN_IN,
SDLLanguage.TH_TH,
@@ -77,6 +103,96 @@ NSArray *SDLLanguage_values = nil;
}
return SDLLanguage_values;
}
++ (SDLLanguage *)EN_SA {
+ if (SDLLanguage_EN_SA == nil) {
+ SDLLanguage_EN_SA = [[SDLLanguage alloc] initWithValue:@"EN-SA"];
+ }
+ return SDLLanguage_EN_SA;
+}
+
++ (SDLLanguage *)HE_IL {
+ if (SDLLanguage_HE_IL == nil) {
+ SDLLanguage_HE_IL = [[SDLLanguage alloc] initWithValue:@"HE-IL"];
+ }
+ return SDLLanguage_HE_IL;
+}
+
++ (SDLLanguage *)RO_RO {
+ if (SDLLanguage_RO_RO == nil) {
+ SDLLanguage_RO_RO = [[SDLLanguage alloc] initWithValue:@"RO-RO"];
+ }
+ return SDLLanguage_RO_RO;
+}
+
++ (SDLLanguage *)UK_UA {
+ if (SDLLanguage_UK_UA == nil) {
+ SDLLanguage_UK_UA = [[SDLLanguage alloc] initWithValue:@"UK-UA"];
+ }
+ return SDLLanguage_UK_UA;
+}
+
++ (SDLLanguage *)ID_ID {
+ if (SDLLanguage_ID_ID == nil) {
+ SDLLanguage_ID_ID = [[SDLLanguage alloc] initWithValue:@"ID-ID"];
+ }
+ return SDLLanguage_ID_ID;
+}
+
++ (SDLLanguage *)VI_VN {
+ if (SDLLanguage_VI_VN == nil) {
+ SDLLanguage_VI_VN = [[SDLLanguage alloc] initWithValue:@"VI-VN"];
+ }
+ return SDLLanguage_VI_VN;
+}
+
++ (SDLLanguage *)MS_MY {
+ if (SDLLanguage_MS_MY == nil) {
+ SDLLanguage_MS_MY = [[SDLLanguage alloc] initWithValue:@"MS-MY"];
+ }
+ return SDLLanguage_MS_MY;
+}
+
++ (SDLLanguage *)HI_IN {
+ if (SDLLanguage_HI_IN == nil) {
+ SDLLanguage_HI_IN = [[SDLLanguage alloc] initWithValue:@"HI-IN"];
+ }
+ return SDLLanguage_HI_IN;
+}
+
++ (SDLLanguage *)NL_BE {
+ if (SDLLanguage_NL_BE == nil) {
+ SDLLanguage_NL_BE = [[SDLLanguage alloc] initWithValue:@"NL-BE"];
+ }
+ return SDLLanguage_NL_BE;
+}
+
++ (SDLLanguage *)EL_GR {
+ if (SDLLanguage_EL_GR == nil) {
+ SDLLanguage_EL_GR = [[SDLLanguage alloc] initWithValue:@"EL-GR"];
+ }
+ return SDLLanguage_EL_GR;
+}
+
++ (SDLLanguage *)HU_HU {
+ if (SDLLanguage_HU_HU == nil) {
+ SDLLanguage_HU_HU = [[SDLLanguage alloc] initWithValue:@"HU-HU"];
+ }
+ return SDLLanguage_HU_HU;
+}
+
++ (SDLLanguage *)FI_FI {
+ if (SDLLanguage_FI_FI == nil) {
+ SDLLanguage_FI_FI = [[SDLLanguage alloc] initWithValue:@"FI-FI"];
+ }
+ return SDLLanguage_FI_FI;
+}
+
++ (SDLLanguage *)SK_SK {
+ if (SDLLanguage_SK_SK == nil) {
+ SDLLanguage_SK_SK = [[SDLLanguage alloc] initWithValue:@"SK-SK"];
+ }
+ return SDLLanguage_SK_SK;
+}
+ (SDLLanguage *)EN_US {
if (SDLLanguage_EN_US == nil) {
diff --git a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLLanguageSpec.m b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLLanguageSpec.m
index 1177c8b84..1290710d7 100644
--- a/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLLanguageSpec.m
+++ b/SmartDeviceLinkTests/RPCSpecs/EnumSpecs/SDLLanguageSpec.m
@@ -14,6 +14,19 @@ QuickSpecBegin(SDLLanguageSpec)
describe(@"Individual Enum Value Tests", ^ {
it(@"Should match internal values", ^ {
+ expect([SDLLanguage EN_SA].value).to(equal(@"EN-SA"));
+ expect([SDLLanguage HE_IL].value).to(equal(@"HE-IL"));
+ expect([SDLLanguage RO_RO].value).to(equal(@"RO-RO"));
+ expect([SDLLanguage UK_UA].value).to(equal(@"UK-UA"));
+ expect([SDLLanguage ID_ID].value).to(equal(@"ID-ID"));
+ expect([SDLLanguage VI_VN].value).to(equal(@"VI-VN"));
+ expect([SDLLanguage MS_MY].value).to(equal(@"MS-MY"));
+ expect([SDLLanguage HI_IN].value).to(equal(@"HI-IN"));
+ expect([SDLLanguage NL_BE].value).to(equal(@"NL-BE"));
+ expect([SDLLanguage EL_GR].value).to(equal(@"EL-GR"));
+ expect([SDLLanguage HU_HU].value).to(equal(@"HU-HU"));
+ expect([SDLLanguage FI_FI].value).to(equal(@"FI-FI"));
+ expect([SDLLanguage SK_SK].value).to(equal(@"SK-SK"));
expect([SDLLanguage EN_US].value).to(equal(@"EN-US"));
expect([SDLLanguage EN_IN].value).to(equal(@"EN-IN"));
expect([SDLLanguage TH_TH].value).to(equal(@"TH-TH"));
@@ -44,6 +57,19 @@ describe(@"Individual Enum Value Tests", ^ {
});
describe(@"ValueOf Tests", ^ {
it(@"Should return correct values when valid", ^ {
+ expect([SDLLanguage valueOf:@"EN-SA"]).to(equal([SDLLanguage EN_SA]));
+ expect([SDLLanguage valueOf:@"HE-IL"]).to(equal([SDLLanguage HE_IL]));
+ expect([SDLLanguage valueOf:@"RO-RO"]).to(equal([SDLLanguage RO_RO]));
+ expect([SDLLanguage valueOf:@"UK-UA"]).to(equal([SDLLanguage UK_UA]));
+ expect([SDLLanguage valueOf:@"ID-ID"]).to(equal([SDLLanguage ID_ID]));
+ expect([SDLLanguage valueOf:@"VI-VN"]).to(equal([SDLLanguage VI_VN]));
+ expect([SDLLanguage valueOf:@"MS-MY"]).to(equal([SDLLanguage MS_MY]));
+ expect([SDLLanguage valueOf:@"HI-IN"]).to(equal([SDLLanguage HI_IN]));
+ expect([SDLLanguage valueOf:@"NL-BE"]).to(equal([SDLLanguage NL_BE]));
+ expect([SDLLanguage valueOf:@"EL-GR"]).to(equal([SDLLanguage EL_GR]));
+ expect([SDLLanguage valueOf:@"HU-HU"]).to(equal([SDLLanguage HU_HU]));
+ expect([SDLLanguage valueOf:@"FI-FI"]).to(equal([SDLLanguage FI_FI]));
+ expect([SDLLanguage valueOf:@"SK-SK"]).to(equal([SDLLanguage SK_SK]));
expect([SDLLanguage valueOf:@"EN-US"]).to(equal([SDLLanguage EN_US]));
expect([SDLLanguage valueOf:@"EN-IN"]).to(equal([SDLLanguage EN_IN]));
expect([SDLLanguage valueOf:@"TH-TH"]).to(equal([SDLLanguage TH_TH]));
@@ -81,7 +107,20 @@ describe(@"Value List Tests", ^ {
NSArray* storedValues = [SDLLanguage values];
__block NSArray* definedValues;
beforeSuite(^ {
- definedValues = [@[[SDLLanguage EN_US],
+ definedValues = [@[[SDLLanguage EN_SA],
+ [SDLLanguage HE_IL],
+ [SDLLanguage RO_RO],
+ [SDLLanguage UK_UA],
+ [SDLLanguage ID_ID],
+ [SDLLanguage VI_VN],
+ [SDLLanguage MS_MY],
+ [SDLLanguage HI_IN],
+ [SDLLanguage NL_BE],
+ [SDLLanguage EL_GR],
+ [SDLLanguage HU_HU],
+ [SDLLanguage FI_FI],
+ [SDLLanguage SK_SK],
+ [SDLLanguage EN_US],
[SDLLanguage EN_IN],
[SDLLanguage TH_TH],
[SDLLanguage ES_MX],