Files
SwiftShell/SwiftShellTests/Stream_Iteration_Tests.swift
T
Kare Morstol 3e35e0db13 Changed from XCTAssert to XCTAssertEqual, since that works now.
Removed tests for strange apparently local bug.
2014-08-22 02:18:43 +02:00

40 lines
1.4 KiB
Swift

//
// Stream_Iteration_Tests.swift
// SwiftShell
//
// Created by Kåre Morstøl on 18/07/14.
// Copyright (c) 2014 NotTooBad Software. All rights reserved.
//
import XCTest
import SwiftShell
class Stream_Iteration_Tests: XCTestCase {
func testIterateOverFileHandle() {
var filehandletest = ""
for line in stream("line 1\nline 2\n").lines() {
filehandletest += line + "\n"
}
XCTAssertEqual(filehandletest , "line 1\nline 2\n")
XCTAssertEqual(["line 1","line 2"] , Array(stream("line 1\nline 2").lines()))
XCTAssertEqual(["line 1"] , Array(stream("line 1\n").lines()))
XCTAssertEqual(["line 1"] , Array(stream("line 1").lines()))
XCTAssertEqual(["line 1", "", "line 3"] , Array(stream("line 1\n\nline 3").lines()))
XCTAssertEqual(["", "line 2", "line 3"] , Array(stream("\nline 2\nline 3").lines()))
XCTAssertEqual(["", "", "line 3"] , Array(stream("\n\nline 3").lines()))
}
func testIterateOverStreamInPieces () {
XCTAssertEqual(["line 1","line 2"] , Array(stream(["line"," 1\nline 2"]).lines()))
XCTAssertEqual(["line 1"] , Array(stream(["line 1","\n"]).lines()))
XCTAssertEqual(["line 1"] , Array(stream(["li","ne"," 1"]).lines()))
XCTAssertEqual(["line 1", "", "line 3"] , Array(stream(["line 1\n","\n","line 3"]).lines()))
XCTAssertEqual(["", "line 2", "line 3"] , Array(stream(["\nline 2\n","line 3"]).lines()))
XCTAssertEqual(["", "", "line 3"] , Array(stream(["\n","\nli","ne 3"]).lines()))
}
}