mirror of
https://github.com/tsolomko/SWCompression.git
synced 2026-06-23 14:56:41 +00:00
[Tests] Add a simple test for TarContainer.create
This commit is contained in:
@@ -85,6 +85,7 @@
|
||||
06A960651F1E7DF60078E6D1 /* 7zCoderInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06A960641F1E7DF60078E6D1 /* 7zCoderInfo.swift */; };
|
||||
06A9606A1F1E7E0D0078E6D1 /* 7zSubstreamInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06A960691F1E7E0D0078E6D1 /* 7zSubstreamInfo.swift */; };
|
||||
06ADB2D91EBCEFA60053A188 /* TarContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06ADB2D81EBCEFA60053A188 /* TarContainer.swift */; };
|
||||
06B15D9D210E17FC00AF2EA1 /* TarCreateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06B15D9C210E17FC00AF2EA1 /* TarCreateTests.swift */; };
|
||||
06B689581F278815007C9316 /* 7zProperty.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06B689571F278815007C9316 /* 7zProperty.swift */; };
|
||||
06BAC5941F8CFF28002443F4 /* ZipEntryInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06BAC5931F8CFF28002443F4 /* ZipEntryInfo.swift */; };
|
||||
06BB8F301E0C2C720079FB9E /* LZMA2.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06BB8F2F1E0C2C720079FB9E /* LZMA2.swift */; };
|
||||
@@ -295,6 +296,7 @@
|
||||
06A960641F1E7DF60078E6D1 /* 7zCoderInfo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = 7zCoderInfo.swift; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };
|
||||
06A960691F1E7E0D0078E6D1 /* 7zSubstreamInfo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = 7zSubstreamInfo.swift; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.swift; };
|
||||
06ADB2D81EBCEFA60053A188 /* TarContainer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TarContainer.swift; sourceTree = "<group>"; };
|
||||
06B15D9C210E17FC00AF2EA1 /* TarCreateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TarCreateTests.swift; sourceTree = "<group>"; };
|
||||
06B689571F278815007C9316 /* 7zProperty.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = 7zProperty.swift; sourceTree = "<group>"; };
|
||||
06BAC5931F8CFF28002443F4 /* ZipEntryInfo.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ZipEntryInfo.swift; sourceTree = "<group>"; };
|
||||
06BB8F2F1E0C2C720079FB9E /* LZMA2.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LZMA2.swift; sourceTree = "<group>"; };
|
||||
@@ -653,6 +655,7 @@
|
||||
06F065AA1FFB763300312A82 /* SevenZipTests.swift */,
|
||||
069401AA20EFDD000044B696 /* TarGenerateContainerDataTests.swift */,
|
||||
066C309A20E9379F000F320C /* TarExtendedHeaderTests.swift */,
|
||||
06B15D9C210E17FC00AF2EA1 /* TarCreateTests.swift */,
|
||||
06F065A61FFB763300312A82 /* TarTests.swift */,
|
||||
06F065A91FFB763300312A82 /* XzTests.swift */,
|
||||
06F065A41FFB763300312A82 /* ZipTests.swift */,
|
||||
@@ -1153,6 +1156,7 @@
|
||||
06F066141FFB763300312A82 /* DeflateCompressionTests.swift in Sources */,
|
||||
06F066171FFB763300312A82 /* BZip2Tests.swift in Sources */,
|
||||
06F066181FFB763300312A82 /* TarTests.swift in Sources */,
|
||||
06B15D9D210E17FC00AF2EA1 /* TarCreateTests.swift in Sources */,
|
||||
06F066191FFB763300312A82 /* GzipTests.swift in Sources */,
|
||||
069401AB20EFDD000044B696 /* TarGenerateContainerDataTests.swift in Sources */,
|
||||
06D42DA72067B71000C1A98B /* TestZipExtraField.swift in Sources */,
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
// Copyright (c) 2018 Timofey Solomko
|
||||
// Licensed under MIT License
|
||||
//
|
||||
// See LICENSE for license information
|
||||
|
||||
import XCTest
|
||||
import SWCompression
|
||||
|
||||
class TarCreateTests: XCTestCase {
|
||||
|
||||
func test() throws {
|
||||
var info = TarEntryInfo(name: "file.txt", type: .regular)
|
||||
info.ownerUserName = "timofeysolomko"
|
||||
info.ownerGroupName = "staff"
|
||||
info.ownerID = 501
|
||||
info.groupID = 20
|
||||
info.permissions = Permissions(rawValue: 420)
|
||||
let date = Date()
|
||||
info.modificationTime = date
|
||||
info.creationTime = date
|
||||
info.accessTime = date
|
||||
info.comment = "comment"
|
||||
|
||||
let data = "Hello, World!\n".data(using: .utf8)!
|
||||
let entry = TarEntry(info: info, data: data)
|
||||
let containerData = try TarContainer.create(from: [entry])
|
||||
let newEntries = try TarContainer.open(container: containerData)
|
||||
|
||||
XCTAssertEqual(newEntries.count, 1)
|
||||
XCTAssertEqual(newEntries[0].info.name, "file.txt")
|
||||
XCTAssertEqual(newEntries[0].info.type, .regular)
|
||||
XCTAssertEqual(newEntries[0].info.size, 14)
|
||||
XCTAssertEqual(newEntries[0].info.ownerUserName, "timofeysolomko")
|
||||
XCTAssertEqual(newEntries[0].info.ownerGroupName, "staff")
|
||||
XCTAssertEqual(newEntries[0].info.ownerID, 501)
|
||||
XCTAssertEqual(newEntries[0].info.groupID, 20)
|
||||
XCTAssertEqual(newEntries[0].info.permissions, Permissions(rawValue: 420))
|
||||
XCTAssertEqual(newEntries[0].info.comment, "comment")
|
||||
XCTAssertEqual(newEntries[0].data, data)
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user