comparison GeoQuiz/Logic/PersistenceController.swift @ 16:1011e56b7832

implement user profile
author Dennis C. M. <dennis@denniscm.com>
date Thu, 20 Oct 2022 13:49:42 +0200
parents
children f140bb277c96
comparison
equal deleted inserted replaced
15:f1967f8cc67b 16:1011e56b7832
1 //
2 // PersistenceController.swift
3 // GeoQuiz
4 //
5 // Created by Dennis Concepción Martín on 19/10/22.
6 //
7
8 import CoreData
9 import Foundation
10
11 class PersistenceController: ObservableObject {
12
13 // Create mock data for previews
14 static var preview: PersistenceController = {
15 let result = PersistenceController()
16 let viewContext = result.container.viewContext
17
18 // for _ in 0..<10 {
19 // let playedGame = PlayedGame(context: viewContext)
20 // playedGame.id = UUID()
21 // playedGame.type = GameType(rawValue: Int16.random(in: 0...3))!
22 // playedGame.score = Int32.random(in: 0...50)
23 // playedGame.date = Date()
24 //
25 // if playedGame.type == .guessTheFlag || playedGame.type == .guessTheCapital {
26 // playedGame.correctAnswers = ["Bangladesh", "Belgium", "Burkina Faso", "Bermuda", "Jamaica"]
27 // playedGame.wrongAnswers = ["Belarus", "Russia"]
28 // } else {
29 // playedGame.correctAnswers = ["Herat", "Lobito", "Darregueira", "San Juan"]
30 // playedGame.wrongAnswers = ["San Luis", "Oranjestad"]
31 // }
32 // }
33 do {
34 try viewContext.save()
35 } catch {
36 let nsError = error as NSError
37 fatalError("Unresolved error \(nsError), \(nsError.userInfo)")
38 }
39 return result
40
41 }()
42
43 // Initialize container
44 let container = NSPersistentContainer(name: "GeoQuiz")
45
46 init() {
47 container.loadPersistentStores { description, error in
48 if let error = error {
49 print("Core Data failed to load: \(error.localizedDescription)")
50 }
51 }
52
53 container.viewContext.automaticallyMergesChangesFromParent = true
54 }
55 }