+ * You use the returned builder to set various properties, then call {@link GHCreateRepositoryBuilder#create()}
+ * to finally createa repository.
+ */
+ public GHCreateRepositoryBuilder createRepository(String name) throws IOException {
+ return new GHCreateRepositoryBuilder(root,"/orgs/"+login+"/repos",name);
}
/**
@@ -185,7 +198,7 @@ public GHTeam createTeam(String name, Permission p, Collection
+ * You use the returned builder to set various properties, then call {@link GHCreateRepositoryBuilder#create()}
+ * to finally createa repository.
+ *
+ *
+ * To create a repository in an organization, see
+ * {@link GHOrganization#createRepository(String, String, String, GHTeam, boolean)}
+ */
+ public GHCreateRepositoryBuilder createRepository(String name) {
+ return new GHCreateRepositoryBuilder(this,"/user/repos",name);
}
/**
diff --git a/src/test/java/org/kohsuke/github/AppTest.java b/src/test/java/org/kohsuke/github/AppTest.java
index 5d5e0a5fef..c8d523cd81 100755
--- a/src/test/java/org/kohsuke/github/AppTest.java
+++ b/src/test/java/org/kohsuke/github/AppTest.java
@@ -38,6 +38,21 @@ public void testRepoCRUD() throws Exception {
getUser().getRepository(targetName).delete();
}
+ @Test
+ public void testRepositoryWithAutoInitializationCRUD() throws IOException {
+ String name = "github-api-test-autoinit";
+ deleteRepository(name);
+ GHRepository r = gitHub.createRepository(name)
+ .description("a test repository for auto init")
+ .homepage("http://github-api.kohsuke.org/")
+ .autoInit(true).create();
+ r.enableIssueTracker(false);
+ r.enableDownloads(false);
+ r.enableWiki(false);
+ assertNotNull(r.getReadme());
+ getUser().getRepository(name).delete();
+ }
+
private void deleteRepository(final String name) throws IOException {
GHRepository repository = getUser().getRepository(name);
if(repository != null) {
@@ -326,6 +341,8 @@ public void testCommit() throws Exception {
System.out.println(commit);
assertEquals(1, commit.getParents().size());
assertEquals(1,commit.getFiles().size());
+ assertEquals("https://github.com/jenkinsci/jenkins/commit/08c1c9970af4d609ae754fbe803e06186e3206f7",
+ commit.getHtmlUrl().toString());
File f = commit.getFiles().get(0);
assertEquals(48,f.getLinesChanged());
@@ -774,7 +791,7 @@ public void markDown() throws Exception {
assertTrue(actual.contains("href=\"https://github.com/kohsuke\""));
assertTrue(actual.contains("href=\"https://github.com/kohsuke/github-api/pull/1\""));
assertTrue(actual.contains("class=\"user-mention\""));
- assertTrue(actual.contains("class=\"issue-link\""));
+ assertTrue(actual.contains("class=\"issue-link "));
assertTrue(actual.contains("to fix issue"));
}
diff --git a/src/test/java/org/kohsuke/github/GHOrganizationTest.java b/src/test/java/org/kohsuke/github/GHOrganizationTest.java
new file mode 100644
index 0000000000..a1c5d3b921
--- /dev/null
+++ b/src/test/java/org/kohsuke/github/GHOrganizationTest.java
@@ -0,0 +1,43 @@
+package org.kohsuke.github;
+
+import org.junit.After;
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.io.IOException;
+
+public class GHOrganizationTest extends AbstractGitHubApiTestBase {
+
+ public static final String GITHUB_API_TEST = "github-api-test";
+ private GHOrganization org;
+
+ @Override
+ public void setUp() throws Exception {
+ super.setUp();
+ org = gitHub.getOrganization("github-api-test-org");
+ }
+
+ @Test
+ public void testCreateRepository() throws IOException {
+ GHRepository repository = org.createRepository(GITHUB_API_TEST,
+ "a test repository used to test kohsuke's github-api", "http://github-api.kohsuke.org/", "Core Developers", true);
+ Assert.assertNotNull(repository);
+ }
+
+ @Test
+ public void testCreateRepositoryWithAutoInitialization() throws IOException {
+ GHRepository repository = org.createRepository(GITHUB_API_TEST)
+ .description("a test repository used to test kohsuke's github-api")
+ .homepage("http://github-api.kohsuke.org/")
+ .team(org.getTeamByName("Core Developers"))
+ .autoInit(true).create();
+ Assert.assertNotNull(repository);
+ Assert.assertNotNull(repository.getReadme());
+ }
+
+ @After
+ public void cleanUp() throws Exception {
+ GHRepository repository = org.getRepository(GITHUB_API_TEST);
+ repository.delete();
+ }
+}