1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef REMOTING_IOS_HOST_REFRESH_TEST_HELPER_H_ 6 #define REMOTING_IOS_HOST_REFRESH_TEST_HELPER_H_ 7 8 #import <Foundation/Foundation.h> 9 10 namespace remoting { 11 12 class HostRefreshTestHelper { 13 public: 14 constexpr static NSString* CloseTag = @"\","; 15 16 constexpr static NSString* CreatedTimeTag = @"\"createdTime\":\""; 17 constexpr static NSString* HostIdTag = @"\"hostId\":\""; 18 constexpr static NSString* HostNameTag = @"\"hostName\":\""; 19 constexpr static NSString* HostVersionTag = @"\"hostVersion\":\""; 20 constexpr static NSString* KindTag = @"\"kind\":\""; 21 constexpr static NSString* JabberIdTag = @"\"jabberId\":\""; 22 constexpr static NSString* PublicKeyTag = @"\"publicKey\":\""; 23 constexpr static NSString* StatusTag = @"\"status\":\""; 24 constexpr static NSString* UpdatedTimeTag = @"\"updatedTime\":\""; 25 26 constexpr static NSString* CreatedTimeTest = @"2000-01-01T00:00:01.000Z"; 27 constexpr static NSString* HostIdTest = @"Host1"; 28 constexpr static NSString* HostNameTest = @"HostName1"; 29 constexpr static NSString* HostVersionTest = @"2.22.5.4"; 30 constexpr static NSString* KindTest = @"chromoting#host"; 31 constexpr static NSString* JabberIdTest = @"JabberingOn"; 32 constexpr static NSString* PublicKeyTest = @"AAAAABBBBBZZZZZ"; 33 constexpr static NSString* StatusTest = @"TESTING"; 34 constexpr static NSString* UpdatedTimeTest = @"2004-01-01T00:00:01.000Z"; 35 36 static NSMutableData* GetHostList(int numHosts) { 37 return [NSMutableData 38 dataWithData:[GetMultipleHosts(numHosts) 39 dataUsingEncoding:NSUTF8StringEncoding]]; 40 } 41 42 static NSMutableData* GetHostList(NSString* hostList) { 43 return [NSMutableData 44 dataWithData:[hostList dataUsingEncoding:NSUTF8StringEncoding]]; 45 } 46 47 static NSString* GetMultipleHosts(int numHosts) { 48 NSString* client = [NSString 49 stringWithFormat: 50 @"%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@%@", 51 @"{", 52 CreatedTimeTag, 53 CreatedTimeTest, 54 CloseTag, 55 HostIdTag, 56 HostIdTest, 57 CloseTag, 58 HostNameTag, 59 HostNameTest, 60 CloseTag, 61 HostNameTag, 62 HostNameTest, 63 CloseTag, 64 HostVersionTag, 65 HostVersionTest, 66 CloseTag, 67 KindTag, 68 KindTest, 69 CloseTag, 70 JabberIdTag, 71 JabberIdTest, 72 CloseTag, 73 PublicKeyTag, 74 PublicKeyTest, 75 CloseTag, 76 StatusTag, 77 StatusTest, 78 CloseTag, 79 UpdatedTimeTag, 80 UpdatedTimeTest, 81 @"\"}"]; 82 83 NSMutableString* hostList = [NSMutableString 84 stringWithString: 85 @"{\"data\":{\"kind\":\"chromoting#hostList\",\"items\":["]; 86 87 for (int i = 0; i < numHosts; i++) { 88 [hostList appendString:client]; 89 if (i < numHosts - 1) { 90 [hostList appendString:@","]; // common separated 91 } 92 } 93 94 [hostList appendString:@"]}}"]; 95 96 return [hostList copy]; 97 } 98 }; 99 100 } // namespace remoting 101 102 #endif // REMOTING_IOS_HOST_REFRESH_TEST_HELPER_H_