mirror of
https://github.com/gosticks/SwiftGit2.git
synced 2025-10-16 11:55:34 +00:00
Remove trailing whitespace
This commit is contained in:
parent
69413a0540
commit
c7bf00201e
@ -67,11 +67,11 @@ public class CommitIterator: IteratorProtocol, Sequence {
|
||||
return result
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public func makeIterator() -> CommitIterator {
|
||||
return self
|
||||
}
|
||||
|
||||
|
||||
public private(set) var underestimatedCount: Int = 0
|
||||
public func map<T>(_ transform: (Result<Commit, NSError>) throws -> T) rethrows -> [T] {
|
||||
var new: [T] = []
|
||||
@ -80,7 +80,7 @@ public class CommitIterator: IteratorProtocol, Sequence {
|
||||
}
|
||||
return new
|
||||
}
|
||||
|
||||
|
||||
public func filter(_ isIncluded: (Result<Commit, NSError>) throws -> Bool) rethrows -> [Result<Commit, NSError>] {
|
||||
var new: [Result<Commit, NSError>] = []
|
||||
for item in self {
|
||||
@ -90,53 +90,53 @@ public class CommitIterator: IteratorProtocol, Sequence {
|
||||
}
|
||||
return new
|
||||
}
|
||||
|
||||
|
||||
public func forEach(_ body: (Result<Commit, NSError>) throws -> Void) rethrows {
|
||||
for item in self {
|
||||
try body(item)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private func notImplemented(functionName: Any) {
|
||||
assert(false, "CommitIterator does not implement \(functionName)")
|
||||
}
|
||||
private init(repo: Repository) {
|
||||
self.repo = repo
|
||||
}
|
||||
|
||||
|
||||
public func dropFirst(_ n: Int) -> AnySequence<Iterator.Element> {
|
||||
notImplemented(functionName: self.dropFirst)
|
||||
return AnySequence<Iterator.Element> { return CommitIterator(repo: self.repo) }
|
||||
}
|
||||
|
||||
|
||||
public func dropLast(_ n: Int) -> AnySequence<Iterator.Element> {
|
||||
notImplemented(functionName: self.dropLast)
|
||||
return AnySequence<Iterator.Element> { return CommitIterator(repo: self.repo) }
|
||||
}
|
||||
|
||||
|
||||
public func drop(while predicate: (Result<Commit, NSError>) throws -> Bool) rethrows -> AnySequence<Iterator.Element> {
|
||||
notImplemented(functionName: self.drop)
|
||||
return AnySequence<Iterator.Element> { return CommitIterator(repo: self.repo) }
|
||||
}
|
||||
|
||||
|
||||
public func prefix(_ maxLength: Int) -> AnySequence<Iterator.Element> {
|
||||
notImplemented(functionName: "prefix(_ maxLength:")
|
||||
return AnySequence<Iterator.Element> { return CommitIterator(repo: self.repo) }
|
||||
}
|
||||
|
||||
|
||||
public func prefix(while predicate: (Result<Commit, NSError>) throws -> Bool) rethrows -> AnySequence<Iterator.Element> {
|
||||
notImplemented(functionName: "prefix(with predicate:")
|
||||
return AnySequence<Iterator.Element> { return CommitIterator(repo: self.repo) }
|
||||
}
|
||||
|
||||
|
||||
public func suffix(_ maxLength: Int) -> AnySequence<Iterator.Element> {
|
||||
notImplemented(functionName: self.suffix)
|
||||
return AnySequence<Iterator.Element> { return CommitIterator(repo: self.repo) }
|
||||
}
|
||||
|
||||
|
||||
public func split(maxSplits: Int, omittingEmptySubsequences: Bool, whereSeparator isSeparator: (Result<Commit, NSError>) throws -> Bool) rethrows -> [AnySequence<Iterator.Element>] {
|
||||
notImplemented(functionName: self.split)
|
||||
return [AnySequence<Iterator.Element> { return CommitIterator(repo: self.repo) }]
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -102,9 +102,9 @@ public struct Branch: ReferenceType {
|
||||
return nil
|
||||
}
|
||||
name = String(validatingUTF8: namePointer!)!
|
||||
|
||||
|
||||
longName = String(validatingUTF8: git_reference_name(pointer))!
|
||||
|
||||
|
||||
var oid: OID
|
||||
if git_reference_type(pointer).rawValue == GIT_REF_SYMBOLIC.rawValue {
|
||||
var resolved: OpaquePointer? = nil
|
||||
|
||||
@ -528,7 +528,7 @@ final public class Repository {
|
||||
progress: CheckoutProgressBlock? = nil) -> Result<(), NSError> {
|
||||
return setHEAD(reference).flatMap { self.checkout(strategy: strategy, progress: progress) }
|
||||
}
|
||||
|
||||
|
||||
/// Load all commits in the specified branch in topological & time order descending
|
||||
///
|
||||
/// :param: branch The branch to get all commits from
|
||||
|
||||
@ -18,7 +18,7 @@ class RepositorySpec: QuickSpec {
|
||||
let repo = Fixtures.simpleRepository
|
||||
expect(repo.directoryURL).notTo(beNil())
|
||||
}
|
||||
|
||||
|
||||
it("should fail if the repo doesn't exist") {
|
||||
let url = URL(fileURLWithPath: "blah")
|
||||
let result = Repository.at(url)
|
||||
@ -45,68 +45,68 @@ class RepositorySpec: QuickSpec {
|
||||
let remoteRepo = Fixtures.simpleRepository
|
||||
let localURL = self.temporaryURL(forPurpose: "local-clone")
|
||||
let result = Repository.clone(from: remoteRepo.directoryURL!, to: localURL, localClone: true)
|
||||
|
||||
|
||||
expect(result.error).to(beNil())
|
||||
|
||||
|
||||
if case .success(let clonedRepo) = result {
|
||||
expect(clonedRepo.directoryURL).notTo(beNil())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
it("should handle bare clones") {
|
||||
let remoteRepo = Fixtures.simpleRepository
|
||||
let localURL = self.temporaryURL(forPurpose: "bare-clone")
|
||||
let result = Repository.clone(from: remoteRepo.directoryURL!, to: localURL, localClone: true, bare: true)
|
||||
|
||||
|
||||
expect(result.error).to(beNil())
|
||||
|
||||
|
||||
if case .success(let clonedRepo) = result {
|
||||
expect(clonedRepo.directoryURL).to(beNil())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
it("should have set a valid remote url") {
|
||||
let remoteRepo = Fixtures.simpleRepository
|
||||
let localURL = self.temporaryURL(forPurpose: "valid-remote-clone")
|
||||
let cloneResult = Repository.clone(from: remoteRepo.directoryURL!, to: localURL, localClone: true)
|
||||
|
||||
|
||||
expect(cloneResult.error).to(beNil())
|
||||
|
||||
|
||||
if case .success(let clonedRepo) = cloneResult {
|
||||
let remoteResult = clonedRepo.remote(named: "origin")
|
||||
expect(remoteResult.error).to(beNil())
|
||||
|
||||
|
||||
if case .success(let remote) = remoteResult {
|
||||
expect(remote.URL).to(equal(remoteRepo.directoryURL?.absoluteString))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
it("should be able to clone a remote repository") {
|
||||
let remoteRepoURL = URL(string: "https://github.com/libgit2/libgit2.github.com.git")
|
||||
let localURL = self.temporaryURL(forPurpose: "public-remote-clone")
|
||||
let cloneResult = Repository.clone(from: remoteRepoURL!, to: localURL)
|
||||
|
||||
|
||||
expect(cloneResult.error).to(beNil())
|
||||
|
||||
|
||||
if case .success(let clonedRepo) = cloneResult {
|
||||
let remoteResult = clonedRepo.remote(named: "origin")
|
||||
expect(remoteResult.error).to(beNil())
|
||||
|
||||
|
||||
if case .success(let remote) = remoteResult {
|
||||
expect(remote.URL).to(equal(remoteRepoURL?.absoluteString))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
let env = ProcessInfo.processInfo.environment
|
||||
|
||||
|
||||
if let privateRepo = env["SG2TestPrivateRepo"],
|
||||
let gitUsername = env["SG2TestUsername"],
|
||||
let publicKey = env["SG2TestPublicKey"],
|
||||
let privateKey = env["SG2TestPrivateKey"],
|
||||
let passphrase = env["SG2TestPassphrase"] {
|
||||
|
||||
|
||||
it("should be able to clone a remote repository requiring credentials") {
|
||||
let remoteRepoURL = URL(string: privateRepo)
|
||||
let localURL = self.temporaryURL(forPurpose: "private-remote-clone")
|
||||
@ -114,15 +114,15 @@ class RepositorySpec: QuickSpec {
|
||||
publicKey: publicKey,
|
||||
privateKey: privateKey,
|
||||
passphrase: passphrase)
|
||||
|
||||
|
||||
let cloneResult = Repository.clone(from: remoteRepoURL!, to: localURL, credentials: credentials)
|
||||
|
||||
|
||||
expect(cloneResult.error).to(beNil())
|
||||
|
||||
|
||||
if case .success(let clonedRepo) = cloneResult {
|
||||
let remoteResult = clonedRepo.remote(named: "origin")
|
||||
expect(remoteResult.error).to(beNil())
|
||||
|
||||
|
||||
if case .success(let remote) = remoteResult {
|
||||
expect(remote.URL).to(equal(remoteRepoURL?.absoluteString))
|
||||
}
|
||||
@ -130,115 +130,115 @@ class RepositorySpec: QuickSpec {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.blob(_:)") {
|
||||
it("should return the commit if it exists") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "41078396f5187daed5f673e4a13b185bbad71fba")!
|
||||
|
||||
|
||||
let result = repo.blob(oid)
|
||||
expect(result.map { $0.oid }.value) == oid
|
||||
}
|
||||
|
||||
|
||||
it("should error if the blob doesn't exist") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")!
|
||||
|
||||
|
||||
let result = repo.blob(oid)
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
|
||||
|
||||
it("should error if the oid doesn't point to a blob") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
// This is a tree in the repository
|
||||
let oid = OID(string: "f93e3a1a1525fb5b91020da86e44810c87a2d7bc")!
|
||||
|
||||
|
||||
let result = repo.blob(oid)
|
||||
expect(result.error).notTo(beNil())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.commit(_:)") {
|
||||
it("should return the commit if it exists") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "dc220a3f0c22920dab86d4a8d3a3cb7e69d6205a")!
|
||||
|
||||
|
||||
let result = repo.commit(oid)
|
||||
expect(result.map { $0.oid }.value) == oid
|
||||
}
|
||||
|
||||
|
||||
it("should error if the commit doesn't exist") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")!
|
||||
|
||||
|
||||
let result = repo.commit(oid)
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
|
||||
|
||||
it("should error if the oid doesn't point to a commit") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
// This is a tree in the repository
|
||||
let oid = OID(string: "f93e3a1a1525fb5b91020da86e44810c87a2d7bc")!
|
||||
|
||||
|
||||
let result = repo.commit(oid)
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.tag(_:)") {
|
||||
it("should return the tag if it exists") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "57943b8ee00348180ceeedc960451562750f6d33")!
|
||||
|
||||
|
||||
let result = repo.tag(oid)
|
||||
expect(result.map { $0.oid }.value) == oid
|
||||
}
|
||||
|
||||
|
||||
it("should error if the tag doesn't exist") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")!
|
||||
|
||||
|
||||
let result = repo.tag(oid)
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
|
||||
|
||||
it("should error if the oid doesn't point to a tag") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
// This is a commit in the repository
|
||||
let oid = OID(string: "dc220a3f0c22920dab86d4a8d3a3cb7e69d6205a")!
|
||||
|
||||
|
||||
let result = repo.tag(oid)
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.tree(_:)") {
|
||||
it("should return the tree if it exists") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "f93e3a1a1525fb5b91020da86e44810c87a2d7bc")!
|
||||
|
||||
|
||||
let result = repo.tree(oid)
|
||||
expect(result.map { $0.oid }.value) == oid
|
||||
}
|
||||
|
||||
|
||||
it("should error if the tree doesn't exist") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")!
|
||||
|
||||
|
||||
let result = repo.tree(oid)
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
|
||||
|
||||
it("should error if the oid doesn't point to a tree") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
// This is a commit in the repository
|
||||
let oid = OID(string: "dc220a3f0c22920dab86d4a8d3a3cb7e69d6205a")!
|
||||
|
||||
|
||||
let result = repo.tree(oid)
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.object(_:)") {
|
||||
it("should work with a blob") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
@ -247,7 +247,7 @@ class RepositorySpec: QuickSpec {
|
||||
let result = repo.object(oid)
|
||||
expect(result.map { $0 as! Blob }.value) == blob
|
||||
}
|
||||
|
||||
|
||||
it("should work with a commit") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "dc220a3f0c22920dab86d4a8d3a3cb7e69d6205a")!
|
||||
@ -255,7 +255,7 @@ class RepositorySpec: QuickSpec {
|
||||
let result = repo.object(oid)
|
||||
expect(result.map { $0 as! Commit }.value) == commit
|
||||
}
|
||||
|
||||
|
||||
it("should work with a tag") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "57943b8ee00348180ceeedc960451562750f6d33")!
|
||||
@ -263,7 +263,7 @@ class RepositorySpec: QuickSpec {
|
||||
let result = repo.object(oid)
|
||||
expect(result.map { $0 as! Tag }.value) == tag
|
||||
}
|
||||
|
||||
|
||||
it("should work with a tree") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "f93e3a1a1525fb5b91020da86e44810c87a2d7bc")!
|
||||
@ -271,7 +271,7 @@ class RepositorySpec: QuickSpec {
|
||||
let result = repo.object(oid)
|
||||
expect(result.map { $0 as! Tree }.value) == tree
|
||||
}
|
||||
|
||||
|
||||
it("should error if there's no object with that oid") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")!
|
||||
@ -279,94 +279,94 @@ class RepositorySpec: QuickSpec {
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.object(from: PointerTo)") {
|
||||
it("should work with commits") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "dc220a3f0c22920dab86d4a8d3a3cb7e69d6205a")!
|
||||
|
||||
|
||||
let pointer = PointerTo<Commit>(oid)
|
||||
let commit = repo.commit(oid).value!
|
||||
expect(repo.object(from: pointer).value) == commit
|
||||
}
|
||||
|
||||
|
||||
it("should work with trees") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "f93e3a1a1525fb5b91020da86e44810c87a2d7bc")!
|
||||
|
||||
|
||||
let pointer = PointerTo<Tree>(oid)
|
||||
let tree = repo.tree(oid).value!
|
||||
expect(repo.object(from: pointer).value) == tree
|
||||
}
|
||||
|
||||
|
||||
it("should work with blobs") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "41078396f5187daed5f673e4a13b185bbad71fba")!
|
||||
|
||||
|
||||
let pointer = PointerTo<Blob>(oid)
|
||||
let blob = repo.blob(oid).value!
|
||||
expect(repo.object(from: pointer).value) == blob
|
||||
}
|
||||
|
||||
|
||||
it("should work with tags") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "57943b8ee00348180ceeedc960451562750f6d33")!
|
||||
|
||||
|
||||
let pointer = PointerTo<Tag>(oid)
|
||||
let tag = repo.tag(oid).value!
|
||||
expect(repo.object(from: pointer).value) == tag
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.object(from: Pointer)") {
|
||||
it("should work with commits") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "dc220a3f0c22920dab86d4a8d3a3cb7e69d6205a")!
|
||||
|
||||
|
||||
let pointer = Pointer.commit(oid)
|
||||
let commit = repo.commit(oid).value!
|
||||
let result = repo.object(from: pointer).map { $0 as! Commit }
|
||||
expect(result.value) == commit
|
||||
}
|
||||
|
||||
|
||||
it("should work with trees") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "f93e3a1a1525fb5b91020da86e44810c87a2d7bc")!
|
||||
|
||||
|
||||
let pointer = Pointer.tree(oid)
|
||||
let tree = repo.tree(oid).value!
|
||||
let result = repo.object(from: pointer).map { $0 as! Tree }
|
||||
expect(result.value) == tree
|
||||
}
|
||||
|
||||
|
||||
it("should work with blobs") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "41078396f5187daed5f673e4a13b185bbad71fba")!
|
||||
|
||||
|
||||
let pointer = Pointer.blob(oid)
|
||||
let blob = repo.blob(oid).value!
|
||||
let result = repo.object(from: pointer).map { $0 as! Blob }
|
||||
expect(result.value) == blob
|
||||
}
|
||||
|
||||
|
||||
it("should work with tags") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "57943b8ee00348180ceeedc960451562750f6d33")!
|
||||
|
||||
|
||||
let pointer = Pointer.tag(oid)
|
||||
let tag = repo.tag(oid).value!
|
||||
let result = repo.object(from: pointer).map { $0 as! Tag }
|
||||
expect(result.value) == tag
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.allRemotes()") {
|
||||
it("should return an empty list if there are no remotes") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let result = repo.allRemotes()
|
||||
expect(result.value) == []
|
||||
}
|
||||
|
||||
|
||||
it("should return all the remotes") {
|
||||
let repo = Fixtures.mantleRepository
|
||||
let remotes = repo.allRemotes()
|
||||
@ -375,21 +375,21 @@ class RepositorySpec: QuickSpec {
|
||||
expect(names.value).to(contain("origin", "upstream"))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.remote(named:)") {
|
||||
it("should return the remote if it exists") {
|
||||
let repo = Fixtures.mantleRepository
|
||||
let result = repo.remote(named: "upstream")
|
||||
expect(result.map { $0.name }.value) == "upstream"
|
||||
}
|
||||
|
||||
|
||||
it("should error if the remote doesn't exist") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let result = repo.remote(named: "nonexistent")
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.reference(named:)") {
|
||||
it("should return a local branch if it exists") {
|
||||
let name = "refs/heads/master"
|
||||
@ -397,33 +397,33 @@ class RepositorySpec: QuickSpec {
|
||||
expect(result.map { $0.longName }.value) == name
|
||||
expect(result.value as? Branch).notTo(beNil())
|
||||
}
|
||||
|
||||
|
||||
it("should return a remote branch if it exists") {
|
||||
let name = "refs/remotes/upstream/master"
|
||||
let result = Fixtures.mantleRepository.reference(named: name)
|
||||
expect(result.map { $0.longName }.value) == name
|
||||
expect(result.value as? Branch).notTo(beNil())
|
||||
}
|
||||
|
||||
|
||||
it("should return a tag if it exists") {
|
||||
let name = "refs/tags/tag-2"
|
||||
let result = Fixtures.simpleRepository.reference(named: name)
|
||||
expect(result.value?.longName).to(equal(name))
|
||||
expect(result.value as? TagReference).notTo(beNil())
|
||||
}
|
||||
|
||||
|
||||
it("should return the reference if it exists") {
|
||||
let name = "refs/other-ref"
|
||||
let result = Fixtures.simpleRepository.reference(named: name)
|
||||
expect(result.value?.longName).to(equal(name))
|
||||
}
|
||||
|
||||
|
||||
it("should error if the reference doesn't exist") {
|
||||
let result = Fixtures.simpleRepository.reference(named: "refs/heads/nonexistent")
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.localBranches()") {
|
||||
it("should return all the local branches") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
@ -435,7 +435,7 @@ class RepositorySpec: QuickSpec {
|
||||
expect(repo.localBranches().value).to(equal(expected))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.remoteBranches()") {
|
||||
it("should return all the remote branches") {
|
||||
let repo = Fixtures.mantleRepository
|
||||
@ -466,31 +466,31 @@ class RepositorySpec: QuickSpec {
|
||||
expect(actual.map { $0.name }).to(equal(expectedNames))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.localBranch(named:)") {
|
||||
it("should return the branch if it exists") {
|
||||
let result = Fixtures.simpleRepository.localBranch(named: "master")
|
||||
expect(result.value?.longName).to(equal("refs/heads/master"))
|
||||
}
|
||||
|
||||
|
||||
it("should error if the branch doesn't exists") {
|
||||
let result = Fixtures.simpleRepository.localBranch(named: "nonexistent")
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.remoteBranch(named:)") {
|
||||
it("should return the branch if it exists") {
|
||||
let result = Fixtures.mantleRepository.remoteBranch(named: "upstream/master")
|
||||
expect(result.value?.longName).to(equal("refs/remotes/upstream/master"))
|
||||
}
|
||||
|
||||
|
||||
it("should error if the branch doesn't exists") {
|
||||
let result = Fixtures.simpleRepository.remoteBranch(named: "origin/nonexistent")
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.allTags()") {
|
||||
it("should return all the tags") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
@ -501,19 +501,19 @@ class RepositorySpec: QuickSpec {
|
||||
expect(repo.allTags().value).to(equal(expected))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.tag(named:)") {
|
||||
it("should return the tag if it exists") {
|
||||
let result = Fixtures.simpleRepository.tag(named: "tag-2")
|
||||
expect(result.value?.longName).to(equal("refs/tags/tag-2"))
|
||||
}
|
||||
|
||||
|
||||
it("should error if the branch doesn't exists") {
|
||||
let result = Fixtures.simpleRepository.tag(named: "nonexistent")
|
||||
expect(result.error?.domain) == libGit2ErrorDomain
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.HEAD()") {
|
||||
it("should work when on a branch") {
|
||||
let result = Fixtures.simpleRepository.HEAD()
|
||||
@ -521,7 +521,7 @@ class RepositorySpec: QuickSpec {
|
||||
expect(result.value?.shortName).to(equal("master"))
|
||||
expect(result.value as? Branch).notTo(beNil())
|
||||
}
|
||||
|
||||
|
||||
it("should work when on a detached HEAD") {
|
||||
let result = Fixtures.detachedHeadRepository.HEAD()
|
||||
expect(result.value?.longName).to(equal("HEAD"))
|
||||
@ -530,87 +530,87 @@ class RepositorySpec: QuickSpec {
|
||||
expect(result.value as? Reference).notTo(beNil())
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.setHEAD(OID)") {
|
||||
it("should set HEAD to the OID") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "315b3f344221db91ddc54b269f3c9af422da0f2e")!
|
||||
expect(repo.HEAD().value?.shortName).to(equal("master"))
|
||||
|
||||
|
||||
expect(repo.setHEAD(oid).error).to(beNil())
|
||||
let HEAD = repo.HEAD().value
|
||||
expect(HEAD?.longName).to(equal("HEAD"))
|
||||
expect(HEAD?.oid).to(equal(oid))
|
||||
|
||||
|
||||
expect(repo.setHEAD(repo.localBranch(named: "master").value!).error).to(beNil())
|
||||
expect(repo.HEAD().value?.shortName).to(equal("master"))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.setHEAD(ReferenceType)") {
|
||||
it("should set HEAD to a branch") {
|
||||
let repo = Fixtures.detachedHeadRepository
|
||||
let oid = repo.HEAD().value!.oid
|
||||
expect(repo.HEAD().value?.longName).to(equal("HEAD"))
|
||||
|
||||
|
||||
let branch = repo.localBranch(named: "another-branch").value!
|
||||
expect(repo.setHEAD(branch).error).to(beNil())
|
||||
expect(repo.HEAD().value?.shortName).to(equal(branch.name))
|
||||
|
||||
|
||||
expect(repo.setHEAD(oid).error).to(beNil())
|
||||
expect(repo.HEAD().value?.longName).to(equal("HEAD"))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.checkout()") {
|
||||
// We're not really equipped to test this yet. :(
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.checkout(OID)") {
|
||||
it("should set HEAD") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "315b3f344221db91ddc54b269f3c9af422da0f2e")!
|
||||
expect(repo.HEAD().value?.shortName).to(equal("master"))
|
||||
|
||||
|
||||
expect(repo.checkout(oid, strategy: CheckoutStrategy.None).error).to(beNil())
|
||||
let HEAD = repo.HEAD().value
|
||||
expect(HEAD?.longName).to(equal("HEAD"))
|
||||
expect(HEAD?.oid).to(equal(oid))
|
||||
|
||||
|
||||
expect(repo.checkout(repo.localBranch(named: "master").value!, strategy: CheckoutStrategy.None).error).to(beNil())
|
||||
expect(repo.HEAD().value?.shortName).to(equal("master"))
|
||||
}
|
||||
|
||||
|
||||
it("should call block on progress") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
let oid = OID(string: "315b3f344221db91ddc54b269f3c9af422da0f2e")!
|
||||
expect(repo.HEAD().value?.shortName).to(equal("master"))
|
||||
|
||||
|
||||
expect(repo.checkout(oid, strategy: .None, progress: { (_, completedSteps, totalSteps) -> Void in
|
||||
expect(completedSteps).to(beLessThanOrEqualTo(totalSteps))
|
||||
}).error).to(beNil())
|
||||
|
||||
|
||||
let HEAD = repo.HEAD().value
|
||||
expect(HEAD?.longName).to(equal("HEAD"))
|
||||
expect(HEAD?.oid).to(equal(oid))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.checkout(ReferenceType)") {
|
||||
it("should set HEAD") {
|
||||
let repo = Fixtures.detachedHeadRepository
|
||||
let oid = repo.HEAD().value!.oid
|
||||
expect(repo.HEAD().value?.longName).to(equal("HEAD"))
|
||||
|
||||
|
||||
let branch = repo.localBranch(named: "another-branch").value!
|
||||
expect(repo.checkout(branch, strategy: CheckoutStrategy.None).error).to(beNil())
|
||||
expect(repo.HEAD().value?.shortName).to(equal(branch.name))
|
||||
|
||||
|
||||
expect(repo.checkout(oid, strategy: CheckoutStrategy.None).error).to(beNil())
|
||||
expect(repo.HEAD().value?.longName).to(equal("HEAD"))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
describe("Repository.allCommits(in:)") {
|
||||
it("should return all (9) commits") {
|
||||
let repo = Fixtures.simpleRepository
|
||||
@ -638,7 +638,7 @@ class RepositorySpec: QuickSpec {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
func temporaryURL(forPurpose purpose: String) -> URL {
|
||||
let globallyUniqueString = ProcessInfo.processInfo.globallyUniqueString
|
||||
let path = "\(NSTemporaryDirectory())\(globallyUniqueString)_\(purpose)"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user