Files
SWCompression/Tests/SWCompressionTests.swift
T
2016-10-30 14:44:17 +03:00

62 lines
3.0 KiB
Swift

//
// SWCompressionTests.swift
// SWCompressionTests
//
// Created by Timofey Solomko on 16.10.16.
// Copyright © 2016 Timofey Solomko. All rights reserved.
//
import XCTest
@testable import SWCompression
class SWCompressionTests: XCTestCase {
func testHelloWorldFile() {
let testData = try? Data(contentsOf: Constants.helloWorldArchivePath)
XCTAssertNotNil(testData, "Failed to load test archive")
let decompressedData = try? GzipArchive.unarchive(archiveData: testData!)
XCTAssertNotNil(decompressedData, "Failed to decompress")
guard decompressedData != nil else { return }
let decompressedString = String(data: decompressedData!, encoding: .utf8)
XCTAssertNotNil(decompressedString, "Failed to convert decompressed data to string")
XCTAssertEqual(decompressedString!, "Hello, World!\n", "Decompression was incorrect")
}
func testSecondTestFile() {
let testData = try? Data(contentsOf: Constants.secondTestArchivePath)
XCTAssertNotNil(testData, "Failed to load test archive")
let decompressedData = try? GzipArchive.unarchive(archiveData: testData!)
XCTAssertNotNil(decompressedData, "Failed to decompress")
guard decompressedData != nil else { return }
let decompressedString = String(data: decompressedData!, encoding: .utf8)
XCTAssertNotNil(decompressedString, "Failed to convert decompressed data to string")
let answerString = try? String(contentsOf: Constants.secondTestAnswerPath, encoding: .utf8)
XCTAssertNotNil(answerString, "Failed to get the answer")
guard answerString != nil else { return }
XCTAssertEqual(decompressedString!, answerString!, "Decompression was incorrect")
}
func testEmptyFile() {
let testData = try? Data(contentsOf: Constants.emptyFileArchivePath)
XCTAssertNotNil(testData, "Failed to load test archive")
let decompressedData = try? GzipArchive.unarchive(archiveData: testData!)
XCTAssertNotNil(decompressedData, "Failed to decompress")
guard decompressedData != nil else { return }
let decompressedString = String(data: decompressedData!, encoding: .utf8)
XCTAssertNotNil(decompressedString, "Failed to convert decompressed data to string")
XCTAssertEqual(decompressedString!, "")
}
func testHelloWorldZlibFile() {
let testData = try? Data(contentsOf: Constants.helloWorldZlibPath)
XCTAssertNotNil(testData, "Failed to load test archive")
let decompressedData = try? ZlibArchive.unarchive(archiveData: testData!)
XCTAssertNotNil(decompressedData, "Failed to decompress")
guard decompressedData != nil else { return }
let decompressedString = String(data: decompressedData!, encoding: .utf8)
XCTAssertNotNil(decompressedString, "Failed to convert decompressed data to string")
XCTAssertEqual(decompressedString!, "Hello, World!\n", "Decompression was incorrect")
}
}