diff --git a/SwiftGit2/Repository.swift b/SwiftGit2/Repository.swift index 1908a10..58ae306 100644 --- a/SwiftGit2/Repository.swift +++ b/SwiftGit2/Repository.swift @@ -104,7 +104,7 @@ final public class Repository { /// URL - The URL of the repository. /// /// Returns a `Result` with a `Repository` or an error. - class public func createAt(_ url: URL) -> Result { + class public func create(at url: URL) -> Result { var pointer: OpaquePointer? = nil let result = url.withUnsafeFileSystemRepresentation { git_repository_init(&pointer, $0, 0) diff --git a/SwiftGit2Tests/RepositorySpec.swift b/SwiftGit2Tests/RepositorySpec.swift index 9d0efdd..4083cb2 100644 --- a/SwiftGit2Tests/RepositorySpec.swift +++ b/SwiftGit2Tests/RepositorySpec.swift @@ -30,6 +30,20 @@ class RepositorySpec: QuickSpec { } } + describe("Repository.Type.create(at:)") { + it("should create a new repo at the specified location") { + let remoteRepo = Fixtures.simpleRepository + let localURL = self.temporaryURL(forPurpose: "local-create") + let result = Repository.create(at: localURL) + + expect(result).to(haveSucceeded()) + + if case .success(let clonedRepo) = result { + expect(clonedRepo.directoryURL).notTo(beNil()) + } + } + } + describe("Repository.Type.clone(from:to:)") { it("should handle local clones") { let remoteRepo = Fixtures.simpleRepository