Prise en compte des premiers retorus
This commit is contained in:
parent
c8cfe82109
commit
636584ca45
@ -7,30 +7,26 @@
|
|||||||
|
|
||||||
import Foundation
|
import Foundation
|
||||||
|
|
||||||
struct ImageContent: Codable, Equatable {
|
struct AssetContent: Codable, Equatable {
|
||||||
let images: [Image]
|
let images: [AssetImageDescription]
|
||||||
let info: Info
|
let info: AssetInfo
|
||||||
|
|
||||||
static func == (lhs: ImageContent, rhs: ImageContent) -> Bool {
|
static func == (lhs: AssetContent, rhs: AssetContent) -> Bool {
|
||||||
let lhsImagesCount = lhs.images.count
|
guard lhs.images.count == rhs.images.count else { return false }
|
||||||
let lhsImages = lhs.images.sorted(by: { $0.scale < $1.scale })
|
let lhsImages = lhs.images.sorted(by: { $0.scale < $1.scale })
|
||||||
let lhsInfo = lhs.info
|
|
||||||
|
|
||||||
let rhsImagesCount = rhs.images.count
|
|
||||||
let rhsImages = rhs.images.sorted(by: { $0.scale < $1.scale })
|
let rhsImages = rhs.images.sorted(by: { $0.scale < $1.scale })
|
||||||
let rhsInfo = rhs.info
|
|
||||||
|
|
||||||
return lhsImagesCount == rhsImagesCount && lhsImages == rhsImages && lhsInfo == rhsInfo
|
return lhsImages == rhsImages
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Image: Codable, Equatable {
|
struct AssetImageDescription: Codable, Equatable {
|
||||||
let idiom: String
|
let idiom: String
|
||||||
let scale: String
|
let scale: String
|
||||||
let filename: String
|
let filename: String
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Info: Codable, Equatable {
|
struct AssetInfo: Codable, Equatable {
|
||||||
let version: Int
|
let version: Int
|
||||||
let author: String
|
let author: String
|
||||||
}
|
}
|
||||||
|
@ -46,31 +46,35 @@ struct ParsedImage {
|
|||||||
let encoder = JSONEncoder()
|
let encoder = JSONEncoder()
|
||||||
encoder.outputFormatting = .prettyPrinted
|
encoder.outputFormatting = .prettyPrinted
|
||||||
|
|
||||||
guard let data = try? encoder.encode(imageContent) else { return nil }
|
guard let data = try? encoder.encode(imageContent) else {
|
||||||
|
let error = ImagesError.writeFile("Contents.json", "Error encoding json file")
|
||||||
|
print(error.description)
|
||||||
|
Images.exit(withError: error)
|
||||||
|
}
|
||||||
|
|
||||||
return String(data: data, encoding: .utf8)
|
return String(data: data, encoding: .utf8)
|
||||||
}
|
}
|
||||||
|
|
||||||
var imageContent: ImageContent {
|
var imageContent: AssetContent {
|
||||||
return ImageContent(
|
return AssetContent(
|
||||||
images: [
|
images: [
|
||||||
Image(
|
AssetImageDescription(
|
||||||
idiom: "universal",
|
idiom: "universal",
|
||||||
scale: "1x",
|
scale: "1x",
|
||||||
filename: "\(name).\(XcassetsGenerator.outputImageExtension)"
|
filename: "\(name).\(XcassetsGenerator.outputImageExtension)"
|
||||||
),
|
),
|
||||||
Image(
|
AssetImageDescription(
|
||||||
idiom: "universal",
|
idiom: "universal",
|
||||||
scale: "2x",
|
scale: "2x",
|
||||||
filename: "\(name)@2x.\(XcassetsGenerator.outputImageExtension)"
|
filename: "\(name)@2x.\(XcassetsGenerator.outputImageExtension)"
|
||||||
),
|
),
|
||||||
Image(
|
AssetImageDescription(
|
||||||
idiom: "universal",
|
idiom: "universal",
|
||||||
scale: "3x",
|
scale: "3x",
|
||||||
filename: "\(name)@3x.\(XcassetsGenerator.outputImageExtension)"
|
filename: "\(name)@3x.\(XcassetsGenerator.outputImageExtension)"
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
info: Info(
|
info: AssetInfo(
|
||||||
version: 1,
|
version: 1,
|
||||||
author: "ResgenSwift-Imagium"
|
author: "ResgenSwift-Imagium"
|
||||||
)
|
)
|
||||||
|
@ -130,25 +130,25 @@ final class ParsedImageTests: XCTestCase {
|
|||||||
let property = parsedImage.imageContent
|
let property = parsedImage.imageContent
|
||||||
|
|
||||||
// Expect
|
// Expect
|
||||||
let expect = ImageContent(
|
let expect = AssetContent(
|
||||||
images: [
|
images: [
|
||||||
Image(
|
AssetImageDescription(
|
||||||
idiom: "universal",
|
idiom: "universal",
|
||||||
scale: "1x",
|
scale: "1x",
|
||||||
filename: "\(parsedImage.name).\(XcassetsGenerator.outputImageExtension)"
|
filename: "\(parsedImage.name).\(XcassetsGenerator.outputImageExtension)"
|
||||||
),
|
),
|
||||||
Image(
|
AssetImageDescription(
|
||||||
idiom: "universal",
|
idiom: "universal",
|
||||||
scale: "2x",
|
scale: "2x",
|
||||||
filename: "\(parsedImage.name)@2x.\(XcassetsGenerator.outputImageExtension)"
|
filename: "\(parsedImage.name)@2x.\(XcassetsGenerator.outputImageExtension)"
|
||||||
),
|
),
|
||||||
Image(
|
AssetImageDescription(
|
||||||
idiom: "universal",
|
idiom: "universal",
|
||||||
scale: "3x",
|
scale: "3x",
|
||||||
filename: "\(parsedImage.name)@3x.\(XcassetsGenerator.outputImageExtension)"
|
filename: "\(parsedImage.name)@3x.\(XcassetsGenerator.outputImageExtension)"
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
info: Info(
|
info: AssetInfo(
|
||||||
version: 1,
|
version: 1,
|
||||||
author: "ResgenSwift-Imagium"
|
author: "ResgenSwift-Imagium"
|
||||||
)
|
)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user