mirror of
https://github.com/mas-cli/mas
synced 2025-01-06 08:58:47 +00:00
62 lines
2 KiB
Swift
62 lines
2 KiB
Swift
|
//
|
||
|
// AppListFormatterSpec.swift
|
||
|
// MasKitTests
|
||
|
//
|
||
|
// Created by Ben Chatelain on 8/23/2020.
|
||
|
// Copyright © 2020 mas-cli. All rights reserved.
|
||
|
//
|
||
|
|
||
|
@testable import MasKit
|
||
|
import Nimble
|
||
|
import Quick
|
||
|
|
||
|
class AppListsFormatterSpec: QuickSpec {
|
||
|
override func spec() {
|
||
|
// static func reference
|
||
|
let format = AppListFormatter.format(products:)
|
||
|
var products: [SoftwareProduct] = []
|
||
|
|
||
|
describe("app list formatter") {
|
||
|
beforeEach {
|
||
|
products = []
|
||
|
}
|
||
|
it("formats nothing as empty string") {
|
||
|
let output = format(products)
|
||
|
expect(output) == ""
|
||
|
}
|
||
|
it("can format a single product") {
|
||
|
products = [SoftwareProductMock(
|
||
|
appName: "Awesome App",
|
||
|
bundleIdentifier: "",
|
||
|
bundlePath: "",
|
||
|
bundleVersion: "19.2.1",
|
||
|
itemIdentifier: 12345
|
||
|
)]
|
||
|
let output = format(products)
|
||
|
expect(output) == "12345 Awesome App (19.2.1)"
|
||
|
}
|
||
|
it("can format two products") {
|
||
|
products = [
|
||
|
SoftwareProductMock(
|
||
|
appName: "Awesome App",
|
||
|
bundleIdentifier: "",
|
||
|
bundlePath: "",
|
||
|
bundleVersion: "19.2.1",
|
||
|
itemIdentifier: 12345
|
||
|
),
|
||
|
SoftwareProductMock(
|
||
|
appName: "Even Better App",
|
||
|
bundleIdentifier: "",
|
||
|
bundlePath: "",
|
||
|
bundleVersion: "1.2.0",
|
||
|
itemIdentifier: 67890
|
||
|
)
|
||
|
]
|
||
|
let output = format(products)
|
||
|
expect(output) ==
|
||
|
"12345 Awesome App (19.2.1)\n67890 Even Better App (1.2.0)"
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|