Files
resgen.swift/Tests/ResgenSwiftTests/Generate/FontsConfigurationTests.swift
Thibaut Schmitt 5ad219ae89
All checks were successful
gitea-openium/resgen.swift/pipeline/head This commit looks good
feat(RES-57): Add visibility to control scope of generated code (#18)
Add visibility parameter: public, package, internal, private
Impacted command: analytics, colors, fonts, images, strings, tags

Reviewed-on: #18
2025-07-21 16:56:05 +02:00

84 lines
2.3 KiB
Swift

//
// FontsConfigurationTests.swift
//
//
// Created by Thibaut Schmitt on 04/11/2022.
//
import Foundation
import XCTest
@testable import ResgenSwift
final class FontsConfigurationTests: XCTestCase {
let projectDirectory = "projectDirectory/"
func test_argsGeneration_requiredArgs() {
// Given
let testingConfiguration = FontsConfiguration(
inputFile: "path/to/fonts.txt",
extensionOutputPath: nil,
extensionName: nil,
extensionNameUIKit: nil,
extensionSuffix: nil,
infoPlistPaths: nil,
visibility: nil,
staticMembers: nil
)
// When
let arguments = testingConfiguration.getArguments(
projectDirectory: projectDirectory,
force: false
)
// Expect
let expectedArguments = [
"projectDirectory/path/to/fonts.txt"
]
XCTAssertEqual(arguments, expectedArguments)
}
func test_argsGeneration_allArguments() {
// Given
let testingConfiguration = FontsConfiguration(
inputFile: "path/to/fonts.txt",
extensionOutputPath: "Fonts/Generated",
extensionName: "AppUIFont",
extensionNameUIKit: "AppFont",
extensionSuffix: "Testing",
infoPlistPaths: "path/to/plist1.plist path/to/plist2.plist",
visibility: "package",
staticMembers: true
)
// When
let arguments = testingConfiguration.getArguments(
projectDirectory: projectDirectory,
force: true
)
// Expect
let expectedArguments = [
"-f",
"projectDirectory/path/to/fonts.txt",
"--extension-output-path",
"projectDirectory/Fonts/Generated",
"--extension-name",
"AppUIFont",
"--extension-name-ui-kit",
"AppFont",
"--extension-suffix",
"Testing",
"--visibility",
"package",
"--static-members",
"true",
"--info-plist-paths",
"projectDirectory/path/to/plist1.plist projectDirectory/path/to/plist2.plist"
]
XCTAssertEqual(arguments, expectedArguments)
}
}