Add parse error

This commit is contained in:
2023-12-11 11:19:19 +01:00
committed by Loris Perret
parent 31d20bfe2e
commit f0d9ac3337
5 changed files with 33 additions and 21 deletions

View File

@ -22,7 +22,8 @@ class AnalyticsFileParser {
do {
let tagFile = try YAMLDecoder().decode(AnalyticsFile.self, from: data)
return tagFile
} catch let error {
} catch {
let error = AnalyticsError.parseFailed(error.localizedDescription)
print(error.description)
Analytics.exit(withError: error)
}
@ -32,15 +33,15 @@ class AnalyticsFileParser {
parameters.map { dtoParameter in
// Type
let type = value.type.uppercasedFirst()
let type = dtoParameter.type.uppercasedFirst()
guard
type == "String" ||
type == "Int" ||
type == "Double" ||
type == "Bool"
else {
let error = AnalyticsError.invalidParameter("type of \(value.name)")
let error = AnalyticsError.invalidParameter("type of \(dtoParameter.name)")
print(error.description)
Analytics.exit(withError: error)
}
@ -93,7 +94,7 @@ class AnalyticsFileParser {
parameters: screen.parameters
)
if target.contains(Analytics.TargetType.matomo.value) {
if target.contains(TrackerType.matomo.value) {
// Path
guard let path = screen.path else {
@ -120,7 +121,7 @@ class AnalyticsFileParser {
parameters: event.parameters
)
if target.contains(Analytics.TargetType.matomo.value) {
if target.contains(TrackerType.matomo.value) {
// Category
guard let category = event.category else {
let error = AnalyticsError.missingElement("event category")