Fix some error when value and replaceIn
Some checks failed
gitea-openium/resgen.swift/pipeline/pr-master There was a failure building this commit

This commit is contained in:
Loris Perret 2024-07-18 11:31:23 +02:00
parent df173406d4
commit 6ea31a8030
4 changed files with 26 additions and 17 deletions

View File

@ -26,10 +26,14 @@ class FirebaseAnalyticsManager: AnalyticsManagerProtocol {
path: String, path: String,
params: [String: Any]? params: [String: Any]?
) { ) {
let parameters = [ var parameters = [
AnalyticsParameterScreenName: name as NSObject AnalyticsParameterScreenName: name as NSObject
] ]
if path.isEmpty == false {
parameters["path"] = path + "/iOS" as NSObject
}
if let supplementaryParameters = params { if let supplementaryParameters = params {
for (newKey, newValue) in supplementaryParameters { for (newKey, newValue) in supplementaryParameters {
if parameters.contains(where: { (key: String, value: NSObject) in if parameters.contains(where: { (key: String, value: NSObject) in
@ -55,11 +59,17 @@ class FirebaseAnalyticsManager: AnalyticsManagerProtocol {
params: [String: Any]? params: [String: Any]?
) { ) {
var parameters: [String:NSObject] = [ var parameters: [String:NSObject] = [
AnalyticsParameterItemName: name.replacingOccurrences(of: " ", with: "_") as NSObject, AnalyticsParameterItemName: name.replacingOccurrences(of: " ", with: "_") as NSObject
AnalyticsParameterItemCategory: category as NSObject,
"action": action as NSObject,
] ]
if category.isEmpty == false {
parameters["AnalyticsParameterItemCategory"] = category as NSObject
}
if action.isEmpty == false {
parameters["action"] = action as NSObject
}
if let supplementaryParameters = params { if let supplementaryParameters = params {
for (newKey, newValue) in supplementaryParameters { for (newKey, newValue) in supplementaryParameters {
if parameters.contains(where: { (key: String, value: NSObject) in if parameters.contains(where: { (key: String, value: NSObject) in
@ -136,11 +146,11 @@ class AnalyticsManager {
// MARK: - section_one // MARK: - section_one
static func logScreenS1DefOne(title: String, test2: String = "test") { static func logScreenS1DefOne() {
AnalyticsManager.shared.logScreen( AnalyticsManager.shared.logScreen(
name: "s1 def one \(title)", name: "s1 def one \(title)",
path: "", path: "s1_def_one/\(title)",
params: ["test2": test2] params: nil
) )
} }
@ -167,7 +177,7 @@ class AnalyticsManager {
static func logScreenS2DefOne() { static func logScreenS2DefOne() {
AnalyticsManager.shared.logScreen( AnalyticsManager.shared.logScreen(
name: "s2 def one", name: "s2 def one",
path: "", path: "s2_def_one/",
params: nil params: nil
) )
} }

View File

@ -9,14 +9,8 @@ categories:
parameters: parameters:
- name: title - name: title
type: String type: String
value: try test
replaceIn: name,path replaceIn: name,path
- name: test
type: String
value: test
replaceIn: name,path
- name: test2
type: String
defaultValue: test
events: events:
- id: s1_def_two - id: s1_def_two

View File

@ -48,10 +48,9 @@ class AnalyticsDefinition {
} }
private func getParameters() -> String { private func getParameters() -> String {
var params = parameters
var result: String var result: String
let paramsString = params.compactMap { parameter -> String? in let paramsString = parameters.compactMap { parameter -> String? in
guard parameter.value.isEmpty else { return nil } guard parameter.value.isEmpty else { return nil }
let defaultValue: String let defaultValue: String

View File

@ -68,6 +68,12 @@ class AnalyticsFileParser {
Analytics.exit(withError: error) Analytics.exit(withError: error)
} }
if dtoParameter.value != nil, dtoParameter.replaceIn != nil {
let error = AnalyticsError.invalidParameter("you can't set 'value' and 'replaceIn' for \(dtoParameter.name)")
print(error.description)
Analytics.exit(withError: error)
}
verify(value: dtoParameter.value, for: typeEnum) verify(value: dtoParameter.value, for: typeEnum)
verify(value: dtoParameter.defaultValue, for: typeEnum) verify(value: dtoParameter.defaultValue, for: typeEnum)