fix: Tags -> Anlytics
This commit is contained in:
120
Tests/ResgenSwiftTests/Analytics/AnalyticsDefinitionTests.swift
Normal file
120
Tests/ResgenSwiftTests/Analytics/AnalyticsDefinitionTests.swift
Normal file
@ -0,0 +1,120 @@
|
||||
//
|
||||
// AnalyticsDefinitionTests.swift
|
||||
//
|
||||
//
|
||||
// Created by Loris Perret on 06/12/2023.
|
||||
//
|
||||
|
||||
import Foundation
|
||||
import XCTest
|
||||
|
||||
@testable import ResgenSwift
|
||||
|
||||
final class AnalyticsDefinitionTests: XCTestCase {
|
||||
|
||||
// MARK: - Matching tags
|
||||
|
||||
func testMatchingAnalyticss() {
|
||||
// Given
|
||||
let definition = AnalyticsDefinition(id: "definition_name", name: "", type: .screen)
|
||||
definition.tags = ["ios","iosonly","notranslation"]
|
||||
|
||||
// When
|
||||
let match1 = definition.hasOneOrMoreMatchingTags(inputTags: ["ios"])
|
||||
let match2 = definition.hasOneOrMoreMatchingTags(inputTags: ["iosonly"])
|
||||
let match3 = definition.hasOneOrMoreMatchingTags(inputTags: ["notranslation"])
|
||||
|
||||
|
||||
// Expect
|
||||
XCTAssertTrue(match1)
|
||||
XCTAssertTrue(match2)
|
||||
XCTAssertTrue(match3)
|
||||
}
|
||||
|
||||
func testNotMatchingAnalyticss() {
|
||||
// Given
|
||||
let definition = AnalyticsDefinition(id: "definition_name", name: "", type: .screen)
|
||||
definition.tags = ["ios","iosonly","notranslation"]
|
||||
|
||||
// When
|
||||
let match1 = definition.hasOneOrMoreMatchingTags(inputTags: ["droid"])
|
||||
let match2 = definition.hasOneOrMoreMatchingTags(inputTags: ["droidonly"])
|
||||
let match3 = definition.hasOneOrMoreMatchingTags(inputTags: ["azerty"])
|
||||
|
||||
// Expect
|
||||
XCTAssertFalse(match1)
|
||||
XCTAssertFalse(match2)
|
||||
XCTAssertFalse(match3)
|
||||
}
|
||||
|
||||
// MARK: - Raw properties
|
||||
|
||||
func testGeneratedRawPropertyScreen() {
|
||||
// Given
|
||||
let definition = AnalyticsDefinition(id: "definition_name", name: "Ecran un", type: .screen)
|
||||
|
||||
|
||||
// When
|
||||
let propertyScreen = definition.getProperty()
|
||||
|
||||
// Expect
|
||||
let expectScreen = """
|
||||
func logScreenEcranUn() {
|
||||
logScreen(name: "Ecran un", path: "ecran_un/")
|
||||
}
|
||||
"""
|
||||
|
||||
XCTAssertEqual(propertyScreen.adaptForXCTest(), expectScreen.adaptForXCTest())
|
||||
}
|
||||
|
||||
func testGeneratedRawPropertyEvent() {
|
||||
// Given
|
||||
let definition = AnalyticsDefinition(id: "definition_name", name: "Ecran un", type: .screen)
|
||||
|
||||
// When
|
||||
let propertyEvent = definition.getProperty()
|
||||
|
||||
// Expect
|
||||
let expectEvent = """
|
||||
func logEventEcranUn() {
|
||||
logEvent(name: "Ecran un")
|
||||
}
|
||||
"""
|
||||
|
||||
XCTAssertEqual(propertyEvent.adaptForXCTest(), expectEvent.adaptForXCTest())
|
||||
}
|
||||
|
||||
func testGeneratedRawStaticPropertyScreen() {
|
||||
// Given
|
||||
let definition = AnalyticsDefinition(id: "definition_name", name: "Ecran un", type: .screen)
|
||||
|
||||
// When
|
||||
let propertyScreen = definition.getStaticProperty()
|
||||
|
||||
// Expect
|
||||
let expectScreen = """
|
||||
static func logScreenEcranUn() {
|
||||
logScreen(name: "Ecran un", path: "ecran_un/")
|
||||
}
|
||||
"""
|
||||
|
||||
XCTAssertEqual(propertyScreen.adaptForXCTest(), expectScreen.adaptForXCTest())
|
||||
}
|
||||
|
||||
func testGeneratedRawStaticPropertyEvent() {
|
||||
// Given
|
||||
let definition = AnalyticsDefinition(id: "definition_name", name: "Ecran un", type: .screen)
|
||||
|
||||
// When
|
||||
let propertyEvent = definition.getStaticProperty()
|
||||
|
||||
// Expect
|
||||
let expectEvent = """
|
||||
static func logEventEcranUn() {
|
||||
logEvent(name: "Ecran un")
|
||||
}
|
||||
"""
|
||||
|
||||
XCTAssertEqual(propertyEvent.adaptForXCTest(), expectEvent.adaptForXCTest())
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user