{"action":"created","comment":{"url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/comments/227626400","pull_request_review_id":167710736,"id":227626400,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyNzYyNjQwMA==","diff_hunk":"@@ -0,0 +1,306 @@\n+package seedu.address.logic.commands;\n+\n+import static java.util.Objects.requireNonNull;\n+import static org.junit.Assert.assertEquals;\n+import static org.junit.Assert.assertFalse;\n+import static org.junit.Assert.assertTrue;\n+import static seedu.address.testutil.AnakinTypicalCards.CARD_A;\n+import static seedu.address.testutil.AnakinTypicalCards.CARD_B;\n+\n+import java.util.ArrayList;\n+import java.util.Arrays;\n+import java.util.function.Predicate;\n+\n+import org.junit.Rule;\n+import org.junit.Test;\n+import org.junit.rules.ExpectedException;\n+\n+import javafx.collections.ObservableList;\n+import seedu.address.logic.CommandHistory;\n+import seedu.address.logic.anakincommands.AnakinNewCardCommand;\n+import seedu.address.logic.commands.exceptions.CommandException;\n+import seedu.address.model.Anakin;\n+import seedu.address.model.AnakinModel;\n+import seedu.address.model.AnakinModelManager;\n+import seedu.address.model.AnakinReadOnlyAnakin;\n+import seedu.address.model.anakindeck.AnakinCard;\n+import seedu.address.model.anakindeck.AnakinDeck;\n+import seedu.address.testutil.AnakinCardBuilder;\n+import seedu.address.testutil.AnakinDeckBuilder;\n+\n+\n+public class AnakinNewCardCommandTest {\n+\n+    private static final CommandHistory EMPTY_COMMAND_HISTORY = new CommandHistory();\n+\n+    @Rule\n+    public ExpectedException thrown = ExpectedException.none();\n+\n+    private CommandHistory commandHistory = new CommandHistory();\n+\n+    private AnakinModel testModel = new AnakinModelManager();\n+\n+    @Test\n+    public void constructor_nullCard_throwsNullPointerException() {\n+        thrown.expect(NullPointerException.class);\n+        new AnakinNewCardCommand(null);\n+    }\n+\n+    @Test\n+    public void execute_CardAcceptedByModel_addSuccessful() throws Exception {\n+        ModelStubAcceptingCardAdded modelStub = new ModelStubAcceptingCardAdded();\n+        AnakinCard validCard = CARD_A;\n+\n+        CommandResult commandResult = new AnakinNewCardCommand(validCard).\n+                execute(modelStub, commandHistory);\n+\n+        assertEquals(String.format(\n+                AnakinNewCardCommand.MESSAGE_NEW_CARD_SUCCESS,\n+                validCard), commandResult.feedbackToUser);\n+        assertEquals(Arrays.asList(validCard), modelStub.cardsAdded);\n+        assertEquals(EMPTY_COMMAND_HISTORY, commandHistory);\n+    }\n+\n+    @Test\n+    public void execute_duplicateCard_throwsCommandException() throws Exception {\n+        AnakinCard validCard = CARD_B;\n+        AnakinNewCardCommand newCardCommand = new AnakinNewCardCommand(validCard);\n+        ModelStub modelStub = new ModelStubWithCard(validCard);\n+\n+        thrown.expect(CommandException.class);\n+        thrown.expectMessage(AnakinNewCardCommand.MESSAGE_DUPLICATE_CARD);\n+        newCardCommand.execute(modelStub, commandHistory);\n+    }\n+\n+    @Test\n+    public void execute_validCardButNotInDeck_throwsRuntimeException() throws Exception{\n+        AnakinCard validCard = CARD_B;\n+        AnakinNewCardCommand newCardCommand = new AnakinNewCardCommand(validCard);\n+        AnakinModel model = testModel;\n+        thrown.expect(RuntimeException.class);\n+        newCardCommand.execute(model,commandHistory);\n+\n+    }\n+\n+    // Integrated test\n+    @Test\n+    public void execute_validCardInDeck_success() throws Exception{\n+        AnakinCard validCard = CARD_B;\n+        AnakinNewCardCommand newCardCommand = new AnakinNewCardCommand(validCard);\n+        AnakinDeck validDeck =  new AnakinDeckBuilder().\n+                withName(\"Deck with Card B\").build();\n+\n+        AnakinModel model = testModel;\n+        model.goIntoDeck(validDeck);\n+\n+        CommandResult commandResult = newCardCommand.execute(model,commandHistory);\n+\n+        assertEquals(String.format(\n+                AnakinNewCardCommand.MESSAGE_NEW_CARD_SUCCESS,\n+                validCard), commandResult.feedbackToUser);\n+\n+    }\n+\n+\n+    @Test\n+    public void equals() {\n+        AnakinCard firstCard = new AnakinCardBuilder().\n+                withQuestion(\"Test Card1\").withAnswer(\"A1\").build();\n+        AnakinCard secondCard = new AnakinCardBuilder().\n+                withQuestion(\"Test Card2\").withAnswer(\"A2\").build();\n+        AnakinNewCardCommand addFirstCardCommand =\n+                new AnakinNewCardCommand(firstCard);\n+        AnakinNewCardCommand addSecondCardCommand =\n+                new AnakinNewCardCommand(secondCard);\n+\n+        // same object -> returns true\n+        assertTrue(addFirstCardCommand.equals(addFirstCardCommand));\n+\n+        // same values -> returns true\n+        AnakinNewCardCommand addFirstCardCommandCopy =\n+                new AnakinNewCardCommand(firstCard);\n+        assertTrue(addFirstCardCommand.equals(addFirstCardCommandCopy));\n+\n+        // different types -> returns false\n+        assertFalse(addFirstCardCommand.equals(1));\n+\n+        // null -> returns false\n+        assertFalse(addFirstCardCommand.equals(null));\n+\n+        // different card -> returns false\n+        assertFalse(addFirstCardCommand.equals(addSecondCardCommand));\n+    }\n+\n+\n+    /**\n+     * A default model stub that have all of the methods failing.\n+     */\n+    private class ModelStub implements AnakinModel {\n+\n+        @Override\n+        public void resetData(AnakinReadOnlyAnakin anakin) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void addDeck(AnakinDeck deck) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public boolean hasDeck(AnakinDeck target) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void addCard(AnakinCard card) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public AnakinReadOnlyAnakin getAnakin() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void deleteDeck(AnakinDeck target) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void updateDeck(AnakinDeck target, AnakinDeck newdeck) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void updateCard(AnakinCard target, AnakinCard newcard) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+\n+        @Override\n+        public boolean hasCard(AnakinCard card) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void deleteCard(AnakinCard card) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void getOutOfDeck() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void goIntoDeck(AnakinDeck target) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public ObservableList<AnakinCard> getFilteredCardList() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public ObservableList<AnakinDeck> getFilteredDeckList() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void updateFilteredDeckList(Predicate<AnakinDeck> predicate) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void updateFilteredCardList(Predicate<AnakinCard> predicate) {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+\n+        @Override\n+        public boolean canUndoAnakin() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public boolean canRedoAnakin() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void undoAnakin() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void redoAnakin() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void commitAnakin() {\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public boolean isInsideDeck(){\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+        @Override\n+        public void sort(){\n+            throw new AssertionError(\"This method should not be called.\");\n+        }\n+\n+    }\n+\n+    /**\n+     * A Model stub that contains a single person.","path":"src/test/java/seedu/address/logic/commands/AnakinNewCardCommandTest.java","position":260,"original_position":260,"commit_id":"72dfd326736629fb8747bb25ae639b2bae90c548","original_commit_id":"72dfd326736629fb8747bb25ae639b2bae90c548","user":{"login":"truongthanh2606","id":36496138,"node_id":"MDQ6VXNlcjM2NDk2MTM4","avatar_url":"https://avatars2.githubusercontent.com/u/36496138?v=4","gravatar_id":"","url":"https://api.github.com/users/truongthanh2606","html_url":"https://github.com/truongthanh2606","followers_url":"https://api.github.com/users/truongthanh2606/followers","following_url":"https://api.github.com/users/truongthanh2606/following{/other_user}","gists_url":"https://api.github.com/users/truongthanh2606/gists{/gist_id}","starred_url":"https://api.github.com/users/truongthanh2606/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/truongthanh2606/subscriptions","organizations_url":"https://api.github.com/users/truongthanh2606/orgs","repos_url":"https://api.github.com/users/truongthanh2606/repos","events_url":"https://api.github.com/users/truongthanh2606/events{/privacy}","received_events_url":"https://api.github.com/users/truongthanh2606/received_events","type":"User","site_admin":false},"body":"```suggestion\r\n     * A Model stub that contains a single deck.\r\n```","created_at":"2018-10-24T02:39:41Z","updated_at":"2018-10-24T02:41:40Z","html_url":"https://github.com/CS2103-AY1819S1-T09-2/main/pull/136#discussion_r227626400","pull_request_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/136","author_association":"NONE","_links":{"self":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/comments/227626400"},"html":{"href":"https://github.com/CS2103-AY1819S1-T09-2/main/pull/136#discussion_r227626400"},"pull_request":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/136"}}},"pull_request":{"url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/136","id":224903228,"node_id":"MDExOlB1bGxSZXF1ZXN0MjI0OTAzMjI4","html_url":"https://github.com/CS2103-AY1819S1-T09-2/main/pull/136","diff_url":"https://github.com/CS2103-AY1819S1-T09-2/main/pull/136.diff","patch_url":"https://github.com/CS2103-AY1819S1-T09-2/main/pull/136.patch","issue_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/issues/136","number":136,"state":"open","locked":false,"title":"Card Create/Delete unit tests","user":{"login":"Lessthanfree","id":35485082,"node_id":"MDQ6VXNlcjM1NDg1MDgy","avatar_url":"https://avatars1.githubusercontent.com/u/35485082?v=4","gravatar_id":"","url":"https://api.github.com/users/Lessthanfree","html_url":"https://github.com/Lessthanfree","followers_url":"https://api.github.com/users/Lessthanfree/followers","following_url":"https://api.github.com/users/Lessthanfree/following{/other_user}","gists_url":"https://api.github.com/users/Lessthanfree/gists{/gist_id}","starred_url":"https://api.github.com/users/Lessthanfree/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Lessthanfree/subscriptions","organizations_url":"https://api.github.com/users/Lessthanfree/orgs","repos_url":"https://api.github.com/users/Lessthanfree/repos","events_url":"https://api.github.com/users/Lessthanfree/events{/privacy}","received_events_url":"https://api.github.com/users/Lessthanfree/received_events","type":"User","site_admin":false},"body":"Unit tests for NewCardCommand, DelCardCommand.","created_at":"2018-10-23T05:47:54Z","updated_at":"2018-10-24T02:41:40Z","closed_at":null,"merged_at":null,"merge_commit_sha":"eb982304ef6590c6f5703357639416b2507d0c2e","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":1073573488,"node_id":"MDU6TGFiZWwxMDczNTczNDg4","url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/labels/priority.High","name":"priority.High","color":"5fb51e","default":false},{"id":1095182695,"node_id":"MDU6TGFiZWwxMDk1MTgyNjk1","url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/labels/type.Test","name":"type.Test","color":"c43e2f","default":false}],"milestone":{"url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/milestones/3","html_url":"https://github.com/CS2103-AY1819S1-T09-2/main/milestone/3","labels_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/milestones/3/labels","id":3635684,"node_id":"MDk6TWlsZXN0b25lMzYzNTY4NA==","number":3,"title":"v1.3","description":"Continue to enhance features.\r\nRelease as a jar file, release updated user guide, peer-test released products, verify code authorship.","creator":{"login":"Lessthanfree","id":35485082,"node_id":"MDQ6VXNlcjM1NDg1MDgy","avatar_url":"https://avatars1.githubusercontent.com/u/35485082?v=4","gravatar_id":"","url":"https://api.github.com/users/Lessthanfree","html_url":"https://github.com/Lessthanfree","followers_url":"https://api.github.com/users/Lessthanfree/followers","following_url":"https://api.github.com/users/Lessthanfree/following{/other_user}","gists_url":"https://api.github.com/users/Lessthanfree/gists{/gist_id}","starred_url":"https://api.github.com/users/Lessthanfree/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Lessthanfree/subscriptions","organizations_url":"https://api.github.com/users/Lessthanfree/orgs","repos_url":"https://api.github.com/users/Lessthanfree/repos","events_url":"https://api.github.com/users/Lessthanfree/events{/privacy}","received_events_url":"https://api.github.com/users/Lessthanfree/received_events","type":"User","site_admin":false},"open_issues":20,"closed_issues":12,"state":"open","created_at":"2018-09-08T15:23:05Z","updated_at":"2018-10-23T16:21:02Z","due_on":"2018-10-31T07:00:00Z","closed_at":null},"commits_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/136/commits","review_comments_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/136/comments","review_comment_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/comments{/number}","comments_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/issues/136/comments","statuses_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/statuses/72dfd326736629fb8747bb25ae639b2bae90c548","head":{"label":"Lessthanfree:cardCrudUnitTests","ref":"cardCrudUnitTests","sha":"72dfd326736629fb8747bb25ae639b2bae90c548","user":{"login":"Lessthanfree","id":35485082,"node_id":"MDQ6VXNlcjM1NDg1MDgy","avatar_url":"https://avatars1.githubusercontent.com/u/35485082?v=4","gravatar_id":"","url":"https://api.github.com/users/Lessthanfree","html_url":"https://github.com/Lessthanfree","followers_url":"https://api.github.com/users/Lessthanfree/followers","following_url":"https://api.github.com/users/Lessthanfree/following{/other_user}","gists_url":"https://api.github.com/users/Lessthanfree/gists{/gist_id}","starred_url":"https://api.github.com/users/Lessthanfree/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Lessthanfree/subscriptions","organizations_url":"https://api.github.com/users/Lessthanfree/orgs","repos_url":"https://api.github.com/users/Lessthanfree/repos","events_url":"https://api.github.com/users/Lessthanfree/events{/privacy}","received_events_url":"https://api.github.com/users/Lessthanfree/received_events","type":"User","site_admin":false},"repo":{"id":148265826,"node_id":"MDEwOlJlcG9zaXRvcnkxNDgyNjU4MjY=","name":"Main","full_name":"Lessthanfree/Main","private":false,"owner":{"login":"Lessthanfree","id":35485082,"node_id":"MDQ6VXNlcjM1NDg1MDgy","avatar_url":"https://avatars1.githubusercontent.com/u/35485082?v=4","gravatar_id":"","url":"https://api.github.com/users/Lessthanfree","html_url":"https://github.com/Lessthanfree","followers_url":"https://api.github.com/users/Lessthanfree/followers","following_url":"https://api.github.com/users/Lessthanfree/following{/other_user}","gists_url":"https://api.github.com/users/Lessthanfree/gists{/gist_id}","starred_url":"https://api.github.com/users/Lessthanfree/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Lessthanfree/subscriptions","organizations_url":"https://api.github.com/users/Lessthanfree/orgs","repos_url":"https://api.github.com/users/Lessthanfree/repos","events_url":"https://api.github.com/users/Lessthanfree/events{/privacy}","received_events_url":"https://api.github.com/users/Lessthanfree/received_events","type":"User","site_admin":false},"html_url":"https://github.com/Lessthanfree/Main","description":":ab::four: Address Book sample application (Level 4)","fork":true,"url":"https://api.github.com/repos/Lessthanfree/Main","forks_url":"https://api.github.com/repos/Lessthanfree/Main/forks","keys_url":"https://api.github.com/repos/Lessthanfree/Main/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Lessthanfree/Main/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Lessthanfree/Main/teams","hooks_url":"https://api.github.com/repos/Lessthanfree/Main/hooks","issue_events_url":"https://api.github.com/repos/Lessthanfree/Main/issues/events{/number}","events_url":"https://api.github.com/repos/Lessthanfree/Main/events","assignees_url":"https://api.github.com/repos/Lessthanfree/Main/assignees{/user}","branches_url":"https://api.github.com/repos/Lessthanfree/Main/branches{/branch}","tags_url":"https://api.github.com/repos/Lessthanfree/Main/tags","blobs_url":"https://api.github.com/repos/Lessthanfree/Main/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Lessthanfree/Main/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Lessthanfree/Main/git/refs{/sha}","trees_url":"https://api.github.com/repos/Lessthanfree/Main/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Lessthanfree/Main/statuses/{sha}","languages_url":"https://api.github.com/repos/Lessthanfree/Main/languages","stargazers_url":"https://api.github.com/repos/Lessthanfree/Main/stargazers","contributors_url":"https://api.github.com/repos/Lessthanfree/Main/contributors","subscribers_url":"https://api.github.com/repos/Lessthanfree/Main/subscribers","subscription_url":"https://api.github.com/repos/Lessthanfree/Main/subscription","commits_url":"https://api.github.com/repos/Lessthanfree/Main/commits{/sha}","git_commits_url":"https://api.github.com/repos/Lessthanfree/Main/git/commits{/sha}","comments_url":"https://api.github.com/repos/Lessthanfree/Main/comments{/number}","issue_comment_url":"https://api.github.com/repos/Lessthanfree/Main/issues/comments{/number}","contents_url":"https://api.github.com/repos/Lessthanfree/Main/contents/{+path}","compare_url":"https://api.github.com/repos/Lessthanfree/Main/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Lessthanfree/Main/merges","archive_url":"https://api.github.com/repos/Lessthanfree/Main/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Lessthanfree/Main/downloads","issues_url":"https://api.github.com/repos/Lessthanfree/Main/issues{/number}","pulls_url":"https://api.github.com/repos/Lessthanfree/Main/pulls{/number}","milestones_url":"https://api.github.com/repos/Lessthanfree/Main/milestones{/number}","notifications_url":"https://api.github.com/repos/Lessthanfree/Main/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Lessthanfree/Main/labels{/name}","releases_url":"https://api.github.com/repos/Lessthanfree/Main/releases{/id}","deployments_url":"https://api.github.com/repos/Lessthanfree/Main/deployments","created_at":"2018-09-11T05:36:47Z","updated_at":"2018-10-15T10:23:06Z","pushed_at":"2018-10-23T16:15:44Z","git_url":"git://github.com/Lessthanfree/Main.git","ssh_url":"git@github.com:Lessthanfree/Main.git","clone_url":"https://github.com/Lessthanfree/Main.git","svn_url":"https://github.com/Lessthanfree/Main","homepage":"https://cs2103-ay1819s1-t09-2.github.io/Main/","size":14018,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"CS2103-AY1819S1-T09-2:master","ref":"master","sha":"301d7172128f5740ada85faaf8914aed3cc62936","user":{"login":"CS2103-AY1819S1-T09-2","id":43093700,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQzMDkzNzAw","avatar_url":"https://avatars0.githubusercontent.com/u/43093700?v=4","gravatar_id":"","url":"https://api.github.com/users/CS2103-AY1819S1-T09-2","html_url":"https://github.com/CS2103-AY1819S1-T09-2","followers_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/followers","following_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/following{/other_user}","gists_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/gists{/gist_id}","starred_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/subscriptions","organizations_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/orgs","repos_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/repos","events_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/events{/privacy}","received_events_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/received_events","type":"Organization","site_admin":false},"repo":{"id":147942703,"node_id":"MDEwOlJlcG9zaXRvcnkxNDc5NDI3MDM=","name":"main","full_name":"CS2103-AY1819S1-T09-2/main","private":false,"owner":{"login":"CS2103-AY1819S1-T09-2","id":43093700,"node_id":"MDEyOk9yZ2FuaXphdGlvbjQzMDkzNzAw","avatar_url":"https://avatars0.githubusercontent.com/u/43093700?v=4","gravatar_id":"","url":"https://api.github.com/users/CS2103-AY1819S1-T09-2","html_url":"https://github.com/CS2103-AY1819S1-T09-2","followers_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/followers","following_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/following{/other_user}","gists_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/gists{/gist_id}","starred_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/subscriptions","organizations_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/orgs","repos_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/repos","events_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/events{/privacy}","received_events_url":"https://api.github.com/users/CS2103-AY1819S1-T09-2/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/CS2103-AY1819S1-T09-2/main","description":"Anakin. CLI for Flashcards.","fork":true,"url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main","forks_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/forks","keys_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/keys{/key_id}","collaborators_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/teams","hooks_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/hooks","issue_events_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/issues/events{/number}","events_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/events","assignees_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/assignees{/user}","branches_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/branches{/branch}","tags_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/tags","blobs_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/git/refs{/sha}","trees_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/git/trees{/sha}","statuses_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/statuses/{sha}","languages_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/languages","stargazers_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/stargazers","contributors_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/contributors","subscribers_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/subscribers","subscription_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/subscription","commits_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/commits{/sha}","git_commits_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/git/commits{/sha}","comments_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/comments{/number}","issue_comment_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/issues/comments{/number}","contents_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/contents/{+path}","compare_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/compare/{base}...{head}","merges_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/merges","archive_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/downloads","issues_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/issues{/number}","pulls_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls{/number}","milestones_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/milestones{/number}","notifications_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/labels{/name}","releases_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/releases{/id}","deployments_url":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/deployments","created_at":"2018-09-08T14:53:12Z","updated_at":"2018-10-23T10:52:05Z","pushed_at":"2018-10-23T16:18:21Z","git_url":"git://github.com/CS2103-AY1819S1-T09-2/main.git","ssh_url":"git@github.com:CS2103-AY1819S1-T09-2/main.git","clone_url":"https://github.com/CS2103-AY1819S1-T09-2/main.git","svn_url":"https://github.com/CS2103-AY1819S1-T09-2/main","homepage":"https://cs2103-ay1819s1-t09-2.github.io/main/","size":14090,"stargazers_count":2,"watchers_count":2,"language":"Java","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":true,"forks_count":5,"mirror_url":null,"archived":false,"open_issues_count":23,"license":{"key":"other","name":"Other","spdx_id":"NOASSERTION","url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":5,"open_issues":23,"watchers":2,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/136"},"html":{"href":"https://github.com/CS2103-AY1819S1-T09-2/main/pull/136"},"issue":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/issues/136"},"comments":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/issues/136/comments"},"review_comments":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/136/comments"},"review_comment":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/pulls/136/commits"},"statuses":{"href":"https://api.github.com/repos/CS2103-AY1819S1-T09-2/main/statuses/72dfd326736629fb8747bb25ae639b2bae90c548"}},"author_association":"NONE"}}
{"actor":{"display_login":"truongthanh2606"}}