Files
SwiftShell/SwiftShellTests/String_Partition_Tests.swift
T

63 lines
2.0 KiB
Swift

//
// String_Partition_Tests.swift
// SwiftShell
//
// Created by Kåre Morstøl on 20/07/14.
// Copyright (c) 2014 NotTooBad Software. All rights reserved.
//
import XCTest
import SwiftShell
class String_Partition_Tests: XCTestCase {
func testPartitionWithSeparatorInTheMiddle() {
let text = "the first part\nthe second part"
let (firstpart, returnedseparator, secondpart) = text.partition ("\n")
XCTAssertEqual( firstpart, "the first part")
XCTAssertEqual( returnedseparator, "\n")
XCTAssertEqual( secondpart, "the second part")
}
func testPartitionWithNoSeparatorFound() {
let text = "the first partthe second part"
let (firstpart, returnedseparator, secondpart) = text.partition ("\n")
XCTAssertEqual( firstpart, "the first partthe second part")
XCTAssertEqual( returnedseparator, "")
XCTAssertEqual( secondpart, "")
}
func testPartitionWithSeparatorAtTheEnd() {
let text = "the first partthe second part\n"
let (firstpart, returnedseparator, secondpart) = text.partition ("\n")
XCTAssertEqual( firstpart, "the first partthe second part")
XCTAssertEqual( returnedseparator, "\n")
XCTAssertEqual( secondpart, "")
}
func testPartitionWithSeparatorAtTheBeginning() {
let text = "\nthe first partthe second part\n"
let (firstpart, returnedseparator, secondpart) = text.partition ("\n")
XCTAssertEqual( firstpart, "")
XCTAssertEqual( returnedseparator, "\n")
XCTAssertEqual( secondpart, "the first partthe second part\n")
}
func testPartitionWithSeveralSeparators() {
let text = "the first partthe second part"
let (firstpart, returnedseparator, secondpart) = text.partition ("part")
XCTAssertEqual( firstpart, "the first ")
XCTAssertEqual( returnedseparator, "part")
XCTAssertEqual( secondpart, "the second part")
}
func testPartitionWithEmptyText() {
let text = ""
let (firstpart, returnedseparator, secondpart) = text.partition ("part")
XCTAssertEqual( firstpart, "")
XCTAssertEqual( returnedseparator, "")
XCTAssertEqual( secondpart, "")
}
}