Early exit if settings is nil and use short format for nil checking

This commit is contained in:
Sergey Abramchuk
2017-04-22 22:36:23 +03:00
parent a18620102d
commit 0bbc860b6f
2 changed files with 7 additions and 9 deletions

View File

@@ -75,15 +75,9 @@ class OpenVPNConfigurationTests: XCTestCase {
configuration.settings = [:]
XCTAssert(configuration.settings == nil, "Empty settings should return nil")
}
func testCreateConfiguration() {
let configuration = OpenVPNConfiguration()
let some = configuration.fileContent
let test = "Some String".data(using: .utf8)
configuration.fileContent = test
configuration.settings = nil
XCTAssert(configuration.settings == nil, "Empty settings should return nil")
}
}

View File

@@ -32,7 +32,7 @@ using namespace openvpn;
}
- (void)setFileContent:(NSData *)fileContent {
_config.content = fileContent != nil ? std::string((const char *)fileContent.bytes) : "";
_config.content = fileContent ? std::string((const char *)fileContent.bytes) : "";
}
- (NSDictionary<NSString *,NSString *> *)settings {
@@ -55,6 +55,10 @@ using namespace openvpn;
- (void)setSettings:(NSDictionary<NSString *,NSString *> *)settings {
_config.contentList.clear();
if (!settings) {
return;
}
[settings enumerateKeysAndObjectsUsingBlock:^(NSString * _Nonnull key, NSString * _Nonnull obj, BOOL * _Nonnull stop) {
ClientAPI::KeyValue param = ClientAPI::KeyValue(std::string([key UTF8String]), std::string([obj UTF8String]));
_config.contentList.push_back(param);