{"action":"created","comment":{"url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/comments/53610679","id":53610679,"diff_hunk":"@@ -22,52 +22,342 @@ class ThingIFSDKTests: XCTestCase {\n         super.tearDown()\n     }\n     \n-    func testSavedInstance(){\n+    func testSavedInstanceWithInit(){\n+        let setting = TestSetting()\n+        let app = setting.app\n+        let owner = setting.owner\n+\n+        // ThingIFAPI is not saved when ThingIFAPI is instantiation.\n+        ThingIFAPIBuilder(app:app, owner:owner).build()\n+        do{\n+            try ThingIFAPI.loadWithStoredInstance()\n+            XCTFail(\"Should raise exception\")\n+        }catch(_){\n+        }\n+    }\n+    func testSavedInstanceWithOnboard(){\n         let tags = [\"tag1\",\"tag2\"]\n         let setting = TestSetting()\n         let app = setting.app\n         let owner = setting.owner\n+        \n+        let api1 = ThingIFAPIBuilder(app:app, owner:owner).build()\n+        let api2 = ThingIFAPIBuilder(app:app, owner:owner, tag:tags[0]).build()\n+        let api3 = ThingIFAPIBuilder(app:app, owner:owner, tag:tags[1]).build()\n+        \n+        var expectation = self.expectationWithDescription(\"testSavedInstanceWithOnboard\")\n+        setMockResponse4Onboard(\"access-token-00000001\", thingID: \"th.00000001\", setting: setting)\n+        api1.onboard(\"vendor-0001\", thingPassword: \"password1\", thingType: \"smart-light\", thingProperties: nil) { ( target, error) -> Void in\n+            if error != nil{\n+                XCTFail(\"should success\")\n+            }\n+            expectation.fulfill()\n+        }\n+        self.waitForExpectationsWithTimeout(30.0) { (error) -> Void in\n+            if error != nil {\n+                XCTFail(\"execution timeout\")\n+            }\n+        }\n+\n+        expectation = self.expectationWithDescription(\"testSavedInstanceWithOnboard\")\n+        setMockResponse4Onboard(\"access-token-00000002\", thingID: \"th.00000002\", setting: setting)\n+        api2.onboard(\"vendor-0002\", thingPassword: \"password2\", thingType: \"smart-light\", thingProperties: nil) { ( target, error) -> Void in\n+            if error != nil{\n+                XCTFail(\"should success\")\n+            }\n+            expectation.fulfill()\n+        }\n+        self.waitForExpectationsWithTimeout(30.0) { (error) -> Void in\n+            if error != nil {\n+                XCTFail(\"execution timeout\")\n+            }\n+        }\n \n-        let api = ThingIFAPIBuilder(app:app, owner:owner).build()\n-        let api1 = ThingIFAPIBuilder(app:app, owner:owner, tag:tags[0]).build()\n-        let api2 = ThingIFAPIBuilder(app:app, owner:owner, tag:tags[1]).build()\n+        expectation = self.expectationWithDescription(\"testSavedInstanceWithOnboard\")\n+        setMockResponse4Onboard(\"access-token-00000003\", thingID: \"th.00000003\", setting: setting)\n+        api3.onboard(\"vendor-0002\", thingPassword: \"password2\", thingType: \"smart-light\", thingProperties: nil) { ( target, error) -> Void in\n+            if error != nil{\n+                XCTFail(\"should success\")\n+            }\n+            expectation.fulfill()\n+        }\n+        self.waitForExpectationsWithTimeout(30.0) { (error) -> Void in\n+            if error != nil {\n+                XCTFail(\"execution timeout\")\n+            }\n+        }\n+\n+        \n         do{\n             var temp = try ThingIFAPI.loadWithStoredInstance()\n-             XCTAssertEqual(api,temp , \"should be equal\")\n+            XCTAssertEqual(api1, temp , \"should be equal\")\n             temp = try ThingIFAPI.loadWithStoredInstance(tags[0])\n-            XCTAssertEqual(api1,temp , \"should be equal\")\n+            XCTAssertEqual(api2, temp , \"should be equal\")\n             temp = try ThingIFAPI.loadWithStoredInstance(tags[1])\n-            XCTAssertEqual(api2,temp , \"should be equal\")\n+            XCTAssertEqual(api3, temp , \"should be equal\")\n         }catch(_){\n-            XCTFail(\"Should not raise exception\")\n+            XCTFail(\"Should not raise exception \")\n         }\n-\n-\n+        \n         do{\n             ThingIFAPI.removeStoredInstances(nil)\n             try ThingIFAPI.loadWithStoredInstance()\n             XCTFail(\"Should raise exception\")\n         }catch(_){\n-\n+            \n         }\n         do{\n             ThingIFAPI.removeStoredInstances(tags[0])\n             try ThingIFAPI.loadWithStoredInstance(tags[0])\n             XCTFail(\"Should raise exception\")\n         }catch(_){\n+            \n+        }\n+        \n+        do{\n+            ThingIFAPI.removeAllStoredInstances()\n+            try ThingIFAPI.loadWithStoredInstance(tags[1])\n+            XCTFail(\"Should raise exception\")\n+        }catch(_){\n+            \n+        }\n+    }\n+    private func setMockResponse4Onboard(accessToken: String, thingID: String, setting:TestSetting) -> Void {\n+        let dict = [\"accessToken\":accessToken,\"thingID\":thingID]\n+        do {\n+            let jsonData = try NSJSONSerialization.dataWithJSONObject(dict, options: .PrettyPrinted)\n+            let urlResponse = NSHTTPURLResponse(URL: NSURL(string: setting.app.baseURL)!, statusCode: 200, HTTPVersion: nil, headerFields: nil)\n+            MockSession.mockResponse = (jsonData, urlResponse: urlResponse, error: nil)\n+        }catch(_){\n+            //should never reach this\n+            XCTFail(\"exception happened\")\n+            return;\n+        }\n+    }\n+    func testSavedInstanceWithInstallPush(){\n+        let tags = [\"tag1\",\"tag2\"]\n+        let setting = TestSetting()\n+        let app = setting.app\n+        let owner = setting.owner\n+        \n+        let api1 = ThingIFAPIBuilder(app:app, owner:owner).build()\n+        let api2 = ThingIFAPIBuilder(app:app, owner:owner, tag:tags[0]).build()\n+        let api3 = ThingIFAPIBuilder(app:app, owner:owner, tag:tags[1]).build()\n+        \n+        var expectation = self.expectationWithDescription(\"testSavedInstanceWithInstallPush\")\n+        setMockResponse4InstallPush(\"installationID-0001\", setting: setting);\n+        api1.installPush(\"deviceToken-0001\".dataUsingEncoding(NSUTF8StringEncoding)!, development: false) { (installID, error) -> Void in\n+            XCTAssertTrue(error==nil,\"should not error\")\n+            XCTAssertNotNil(installID,\"Should not nil\")\n+            expectation.fulfill()\n+        }\n+        self.waitForExpectationsWithTimeout(30.0) { (error) -> Void in\n+            if error != nil {\n+                XCTFail(\"execution timeout\")\n+            }\n+        }\n+        \n+        expectation = self.expectationWithDescription(\"testSavedInstanceWithInstallPush\")\n+        setMockResponse4InstallPush(\"installationID-0002\", setting: setting);\n+        api2.installPush(\"deviceToken-0002\".dataUsingEncoding(NSUTF8StringEncoding)!, development: false) { (installID, error) -> Void in\n+            XCTAssertTrue(error==nil,\"should not error\")\n+            XCTAssertNotNil(installID,\"Should not nil\")\n+            expectation.fulfill()\n+        }\n+        self.waitForExpectationsWithTimeout(30.0) { (error) -> Void in\n+            if error != nil {\n+                XCTFail(\"execution timeout\")\n+            }\n+        }\n \n+        expectation = self.expectationWithDescription(\"testSavedInstanceWithInstallPush\")\n+        setMockResponse4InstallPush(\"installationID-0003\", setting: setting);\n+        api3.installPush(\"deviceToken-0003\".dataUsingEncoding(NSUTF8StringEncoding)!, development: false) { (installID, error) -> Void in\n+            XCTAssertTrue(error==nil,\"should not error\")\n+            XCTAssertNotNil(installID,\"Should not nil\")\n+            expectation.fulfill()\n+        }\n+        self.waitForExpectationsWithTimeout(30.0) { (error) -> Void in\n+            if error != nil {\n+                XCTFail(\"execution timeout\")\n+            }\n         }\n \n         do{\n+            var temp = try ThingIFAPI.loadWithStoredInstance()\n+            XCTAssertEqual(api1, temp , \"should be equal\")\n+            temp = try ThingIFAPI.loadWithStoredInstance(tags[0])\n+            XCTAssertEqual(api2, temp , \"should be equal\")\n+            temp = try ThingIFAPI.loadWithStoredInstance(tags[1])\n+            XCTAssertEqual(api3, temp , \"should be equal\")\n+        }catch(_){\n+            XCTFail(\"Should not raise exception \")\n+        }\n+        \n+        do{\n+            ThingIFAPI.removeStoredInstances(nil)\n+            try ThingIFAPI.loadWithStoredInstance()\n+            XCTFail(\"Should raise exception\")\n+        }catch(_){\n+            \n+        }\n+        do{\n+            ThingIFAPI.removeStoredInstances(tags[0])\n+            try ThingIFAPI.loadWithStoredInstance(tags[0])\n+            XCTFail(\"Should raise exception\")\n+        }catch(_){\n+            \n+        }\n+        \n+        do{\n             ThingIFAPI.removeAllStoredInstances()\n             try ThingIFAPI.loadWithStoredInstance(tags[1])\n             XCTFail(\"Should raise exception\")\n         }catch(_){\n-\n+            \n+        }\n+    }\n+    private func setMockResponse4InstallPush(installationID: String, setting:TestSetting) -> Void {\n+        let dict = [\"installationID\":installationID]\n+        do {\n+            let jsonData = try NSJSONSerialization.dataWithJSONObject(dict, options: .PrettyPrinted)\n+            let urlResponse = NSHTTPURLResponse(URL: NSURL(string: setting.app.baseURL)!, statusCode: 200, HTTPVersion: nil, headerFields: nil)\n+            MockSession.mockResponse = (jsonData, urlResponse: urlResponse, error: nil)\n+        }catch(_){\n+            //should never reach this\n+            XCTFail(\"exception happened\")\n+            return;\n         }\n \n     }\n+    func testSavedInstanceWithCopyWithTarget(){\n+        let tags = [\"tag1\",\"tag2\"]\n+        let setting = TestSetting()\n+        let app = setting.app\n+        let owner = setting.owner\n+        \n+        let target1 = Target(typedID:TypedID(type: \"user\", id: \"user-00001\"), accessToken: \"token-00001\")\n+        let target2 = Target(typedID:TypedID(type: \"user\", id: \"user-00002\"), accessToken: \"token-00002\")\n+        let target3 = Target(typedID:TypedID(type: \"user\", id: \"user-00003\"), accessToken: \"token-00003\")\n+        \n+        var api1 = ThingIFAPIBuilder(app:app, owner:owner).build()\n+        var api2 = ThingIFAPIBuilder(app:app, owner:owner, tag:tags[0]).build()\n+        var api3 = ThingIFAPIBuilder(app:app, owner:owner, tag:tags[1]).build()\n+        \n+        api1 = api1.copyWithTarget(target1)\n+        api2 = api2.copyWithTarget(target2, tag: tags[0])\n+        api3 = api3.copyWithTarget(target3, tag: tags[1])\n+        do{\n+            var temp = try ThingIFAPI.loadWithStoredInstance()\n+            XCTAssertEqual(api1, temp , \"should be equal\")\n+            temp = try ThingIFAPI.loadWithStoredInstance(tags[0])\n+            XCTAssertEqual(api2, temp , \"should be equal\")\n+            temp = try ThingIFAPI.loadWithStoredInstance(tags[1])\n+            XCTAssertEqual(api3, temp , \"should be equal\")\n+        }catch(_){\n+            XCTFail(\"Should not raise exception \")\n+        }\n+        \n+        do{\n+            ThingIFAPI.removeStoredInstances(nil)\n+            try ThingIFAPI.loadWithStoredInstance()\n+            XCTFail(\"Should raise exception\")\n+        }catch(_){\n+            \n+        }\n+        do{\n+            ThingIFAPI.removeStoredInstances(tags[0])\n+            try ThingIFAPI.loadWithStoredInstance(tags[0])\n+            XCTFail(\"Should raise exception\")\n+        }catch(_){","path":"ThingIFSDK/ThingIFSDKTests/IoTCloudSDKTests.swift","position":263,"original_position":263,"commit_id":"739bbdfaa4da2c44ed477823ab12cdb80af2454a","original_commit_id":"739bbdfaa4da2c44ed477823ab12cdb80af2454a","user":{"login":"rizakii","id":2679922,"avatar_url":"https://avatars.githubusercontent.com/u/2679922?v=3","gravatar_id":"","url":"https://api.github.com/users/rizakii","html_url":"https://github.com/rizakii","followers_url":"https://api.github.com/users/rizakii/followers","following_url":"https://api.github.com/users/rizakii/following{/other_user}","gists_url":"https://api.github.com/users/rizakii/gists{/gist_id}","starred_url":"https://api.github.com/users/rizakii/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rizakii/subscriptions","organizations_url":"https://api.github.com/users/rizakii/orgs","repos_url":"https://api.github.com/users/rizakii/repos","events_url":"https://api.github.com/users/rizakii/events{/privacy}","received_events_url":"https://api.github.com/users/rizakii/received_events","type":"User","site_admin":false},"body":"```swift\r\ndo{\r\n...\r\n}catch(_){\r\n...\r\n}\r\n```\r\ncan is equual to \r\n```swift\r\ndo{\r\n...\r\n} catch {\r\n...\r\n}\r\n```\r\nso you can remove `(_)`","created_at":"2016-02-22T11:01:22Z","updated_at":"2016-02-22T11:01:22Z","html_url":"https://github.com/KiiPlatform/thing-if-iOSSDK/pull/87#discussion_r53610679","pull_request_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/87","_links":{"self":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/comments/53610679"},"html":{"href":"https://github.com/KiiPlatform/thing-if-iOSSDK/pull/87#discussion_r53610679"},"pull_request":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/87"}}},"pull_request":{"url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/87","id":60154800,"html_url":"https://github.com/KiiPlatform/thing-if-iOSSDK/pull/87","diff_url":"https://github.com/KiiPlatform/thing-if-iOSSDK/pull/87.diff","patch_url":"https://github.com/KiiPlatform/thing-if-iOSSDK/pull/87.patch","issue_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues/87","number":87,"state":"open","locked":false,"title":"Fixed the timing for saving instance","user":{"login":"nfukuzaki","id":1865615,"avatar_url":"https://avatars.githubusercontent.com/u/1865615?v=3","gravatar_id":"","url":"https://api.github.com/users/nfukuzaki","html_url":"https://github.com/nfukuzaki","followers_url":"https://api.github.com/users/nfukuzaki/followers","following_url":"https://api.github.com/users/nfukuzaki/following{/other_user}","gists_url":"https://api.github.com/users/nfukuzaki/gists{/gist_id}","starred_url":"https://api.github.com/users/nfukuzaki/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nfukuzaki/subscriptions","organizations_url":"https://api.github.com/users/nfukuzaki/orgs","repos_url":"https://api.github.com/users/nfukuzaki/repos","events_url":"https://api.github.com/users/nfukuzaki/events{/privacy}","received_events_url":"https://api.github.com/users/nfukuzaki/received_events","type":"User","site_admin":false},"body":"","created_at":"2016-02-22T10:49:45Z","updated_at":"2016-02-22T11:01:22Z","closed_at":null,"merged_at":null,"merge_commit_sha":"63008f25ae37325770aade434add25ead74677ad","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/87/commits","review_comments_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/87/comments","review_comment_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/comments{/number}","comments_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues/87/comments","statuses_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/statuses/739bbdfaa4da2c44ed477823ab12cdb80af2454a","head":{"label":"KiiPlatform:issue#781","ref":"issue#781","sha":"739bbdfaa4da2c44ed477823ab12cdb80af2454a","user":{"login":"KiiPlatform","id":3078752,"avatar_url":"https://avatars.githubusercontent.com/u/3078752?v=3","gravatar_id":"","url":"https://api.github.com/users/KiiPlatform","html_url":"https://github.com/KiiPlatform","followers_url":"https://api.github.com/users/KiiPlatform/followers","following_url":"https://api.github.com/users/KiiPlatform/following{/other_user}","gists_url":"https://api.github.com/users/KiiPlatform/gists{/gist_id}","starred_url":"https://api.github.com/users/KiiPlatform/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KiiPlatform/subscriptions","organizations_url":"https://api.github.com/users/KiiPlatform/orgs","repos_url":"https://api.github.com/users/KiiPlatform/repos","events_url":"https://api.github.com/users/KiiPlatform/events{/privacy}","received_events_url":"https://api.github.com/users/KiiPlatform/received_events","type":"Organization","site_admin":false},"repo":{"id":40101539,"name":"thing-if-iOSSDK","full_name":"KiiPlatform/thing-if-iOSSDK","owner":{"login":"KiiPlatform","id":3078752,"avatar_url":"https://avatars.githubusercontent.com/u/3078752?v=3","gravatar_id":"","url":"https://api.github.com/users/KiiPlatform","html_url":"https://github.com/KiiPlatform","followers_url":"https://api.github.com/users/KiiPlatform/followers","following_url":"https://api.github.com/users/KiiPlatform/following{/other_user}","gists_url":"https://api.github.com/users/KiiPlatform/gists{/gist_id}","starred_url":"https://api.github.com/users/KiiPlatform/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KiiPlatform/subscriptions","organizations_url":"https://api.github.com/users/KiiPlatform/orgs","repos_url":"https://api.github.com/users/KiiPlatform/repos","events_url":"https://api.github.com/users/KiiPlatform/events{/privacy}","received_events_url":"https://api.github.com/users/KiiPlatform/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/KiiPlatform/thing-if-iOSSDK","description":"","fork":false,"url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK","forks_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/forks","keys_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/teams","hooks_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/hooks","issue_events_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues/events{/number}","events_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/events","assignees_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/assignees{/user}","branches_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/branches{/branch}","tags_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/tags","blobs_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/refs{/sha}","trees_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/statuses/{sha}","languages_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/languages","stargazers_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/stargazers","contributors_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/contributors","subscribers_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/subscribers","subscription_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/subscription","commits_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/commits{/sha}","git_commits_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/commits{/sha}","comments_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/comments{/number}","issue_comment_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues/comments{/number}","contents_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/contents/{+path}","compare_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/merges","archive_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/downloads","issues_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues{/number}","pulls_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls{/number}","milestones_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/milestones{/number}","notifications_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/labels{/name}","releases_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/releases{/id}","deployments_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/deployments","created_at":"2015-08-03T02:37:23Z","updated_at":"2016-01-14T05:34:27Z","pushed_at":"2016-02-22T10:49:45Z","git_url":"git://github.com/KiiPlatform/thing-if-iOSSDK.git","ssh_url":"git@github.com:KiiPlatform/thing-if-iOSSDK.git","clone_url":"https://github.com/KiiPlatform/thing-if-iOSSDK.git","svn_url":"https://github.com/KiiPlatform/thing-if-iOSSDK","homepage":null,"size":4733,"stargazers_count":0,"watchers_count":0,"language":"Swift","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":10,"mirror_url":null,"open_issues_count":3,"forks":10,"open_issues":3,"watchers":0,"default_branch":"master"}},"base":{"label":"KiiPlatform:develop","ref":"develop","sha":"9b79907a73f9cf5bd7a31eb1c75f5f53f0f77c19","user":{"login":"KiiPlatform","id":3078752,"avatar_url":"https://avatars.githubusercontent.com/u/3078752?v=3","gravatar_id":"","url":"https://api.github.com/users/KiiPlatform","html_url":"https://github.com/KiiPlatform","followers_url":"https://api.github.com/users/KiiPlatform/followers","following_url":"https://api.github.com/users/KiiPlatform/following{/other_user}","gists_url":"https://api.github.com/users/KiiPlatform/gists{/gist_id}","starred_url":"https://api.github.com/users/KiiPlatform/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KiiPlatform/subscriptions","organizations_url":"https://api.github.com/users/KiiPlatform/orgs","repos_url":"https://api.github.com/users/KiiPlatform/repos","events_url":"https://api.github.com/users/KiiPlatform/events{/privacy}","received_events_url":"https://api.github.com/users/KiiPlatform/received_events","type":"Organization","site_admin":false},"repo":{"id":40101539,"name":"thing-if-iOSSDK","full_name":"KiiPlatform/thing-if-iOSSDK","owner":{"login":"KiiPlatform","id":3078752,"avatar_url":"https://avatars.githubusercontent.com/u/3078752?v=3","gravatar_id":"","url":"https://api.github.com/users/KiiPlatform","html_url":"https://github.com/KiiPlatform","followers_url":"https://api.github.com/users/KiiPlatform/followers","following_url":"https://api.github.com/users/KiiPlatform/following{/other_user}","gists_url":"https://api.github.com/users/KiiPlatform/gists{/gist_id}","starred_url":"https://api.github.com/users/KiiPlatform/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KiiPlatform/subscriptions","organizations_url":"https://api.github.com/users/KiiPlatform/orgs","repos_url":"https://api.github.com/users/KiiPlatform/repos","events_url":"https://api.github.com/users/KiiPlatform/events{/privacy}","received_events_url":"https://api.github.com/users/KiiPlatform/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/KiiPlatform/thing-if-iOSSDK","description":"","fork":false,"url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK","forks_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/forks","keys_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/teams","hooks_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/hooks","issue_events_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues/events{/number}","events_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/events","assignees_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/assignees{/user}","branches_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/branches{/branch}","tags_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/tags","blobs_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/refs{/sha}","trees_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/statuses/{sha}","languages_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/languages","stargazers_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/stargazers","contributors_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/contributors","subscribers_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/subscribers","subscription_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/subscription","commits_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/commits{/sha}","git_commits_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/git/commits{/sha}","comments_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/comments{/number}","issue_comment_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues/comments{/number}","contents_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/contents/{+path}","compare_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/merges","archive_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/downloads","issues_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues{/number}","pulls_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls{/number}","milestones_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/milestones{/number}","notifications_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/labels{/name}","releases_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/releases{/id}","deployments_url":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/deployments","created_at":"2015-08-03T02:37:23Z","updated_at":"2016-01-14T05:34:27Z","pushed_at":"2016-02-22T10:49:45Z","git_url":"git://github.com/KiiPlatform/thing-if-iOSSDK.git","ssh_url":"git@github.com:KiiPlatform/thing-if-iOSSDK.git","clone_url":"https://github.com/KiiPlatform/thing-if-iOSSDK.git","svn_url":"https://github.com/KiiPlatform/thing-if-iOSSDK","homepage":null,"size":4733,"stargazers_count":0,"watchers_count":0,"language":"Swift","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":10,"mirror_url":null,"open_issues_count":3,"forks":10,"open_issues":3,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/87"},"html":{"href":"https://github.com/KiiPlatform/thing-if-iOSSDK/pull/87"},"issue":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues/87"},"comments":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/issues/87/comments"},"review_comments":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/87/comments"},"review_comment":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/pulls/87/commits"},"statuses":{"href":"https://api.github.com/repos/KiiPlatform/thing-if-iOSSDK/statuses/739bbdfaa4da2c44ed477823ab12cdb80af2454a"}}}}