From 25d228f6cce836d52bd60e3b23c4155312a4ba45 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 09:44:35 +0200 Subject: [PATCH 001/125] Add empty project for prototype --- Prototype/Prototype.xcodeproj/project.pbxproj | 338 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + Prototype/Prototype/AppDelegate.swift | 36 ++ .../AccentColor.colorset/Contents.json | 11 + .../AppIcon.appiconset/Contents.json | 35 ++ .../Prototype/Assets.xcassets/Contents.json | 6 + .../Base.lproj/LaunchScreen.storyboard | 25 ++ .../Prototype/Base.lproj/Main.storyboard | 32 ++ Prototype/Prototype/Info.plist | 25 ++ Prototype/Prototype/SceneDelegate.swift | 52 +++ 10 files changed, 567 insertions(+) create mode 100644 Prototype/Prototype.xcodeproj/project.pbxproj create mode 100644 Prototype/Prototype.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 Prototype/Prototype/AppDelegate.swift create mode 100644 Prototype/Prototype/Assets.xcassets/AccentColor.colorset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/Contents.json create mode 100644 Prototype/Prototype/Base.lproj/LaunchScreen.storyboard create mode 100644 Prototype/Prototype/Base.lproj/Main.storyboard create mode 100644 Prototype/Prototype/Info.plist create mode 100644 Prototype/Prototype/SceneDelegate.swift diff --git a/Prototype/Prototype.xcodeproj/project.pbxproj b/Prototype/Prototype.xcodeproj/project.pbxproj new file mode 100644 index 0000000..596608d --- /dev/null +++ b/Prototype/Prototype.xcodeproj/project.pbxproj @@ -0,0 +1,338 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 77; + objects = { + +/* Begin PBXFileReference section */ + 405418852DA7ADA9000C2721 /* Prototype.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Prototype.app; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ + 405418972DA7ADAA000C2721 /* Exceptions for "Prototype" folder in "Prototype" target */ = { + isa = PBXFileSystemSynchronizedBuildFileExceptionSet; + membershipExceptions = ( + Info.plist, + ); + target = 405418842DA7ADA9000C2721 /* Prototype */; + }; +/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ + +/* Begin PBXFileSystemSynchronizedRootGroup section */ + 405418872DA7ADA9000C2721 /* Prototype */ = { + isa = PBXFileSystemSynchronizedRootGroup; + exceptions = ( + 405418972DA7ADAA000C2721 /* Exceptions for "Prototype" folder in "Prototype" target */, + ); + path = Prototype; + sourceTree = ""; + }; +/* End PBXFileSystemSynchronizedRootGroup section */ + +/* Begin PBXFrameworksBuildPhase section */ + 405418822DA7ADA9000C2721 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 4054187C2DA7ADA9000C2721 = { + isa = PBXGroup; + children = ( + 405418872DA7ADA9000C2721 /* Prototype */, + 405418862DA7ADA9000C2721 /* Products */, + ); + sourceTree = ""; + }; + 405418862DA7ADA9000C2721 /* Products */ = { + isa = PBXGroup; + children = ( + 405418852DA7ADA9000C2721 /* Prototype.app */, + ); + name = Products; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 405418842DA7ADA9000C2721 /* Prototype */ = { + isa = PBXNativeTarget; + buildConfigurationList = 405418982DA7ADAA000C2721 /* Build configuration list for PBXNativeTarget "Prototype" */; + buildPhases = ( + 405418812DA7ADA9000C2721 /* Sources */, + 405418822DA7ADA9000C2721 /* Frameworks */, + 405418832DA7ADA9000C2721 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + fileSystemSynchronizedGroups = ( + 405418872DA7ADA9000C2721 /* Prototype */, + ); + name = Prototype; + packageProductDependencies = ( + ); + productName = Prototype; + productReference = 405418852DA7ADA9000C2721 /* Prototype.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 4054187D2DA7ADA9000C2721 /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastSwiftUpdateCheck = 1620; + LastUpgradeCheck = 1620; + TargetAttributes = { + 405418842DA7ADA9000C2721 = { + CreatedOnToolsVersion = 16.2; + }; + }; + }; + buildConfigurationList = 405418802DA7ADA9000C2721 /* Build configuration list for PBXProject "Prototype" */; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 4054187C2DA7ADA9000C2721; + minimizedProjectReferenceProxies = 1; + preferredProjectObjectVersion = 77; + productRefGroup = 405418862DA7ADA9000C2721 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 405418842DA7ADA9000C2721 /* Prototype */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 405418832DA7ADA9000C2721 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 405418812DA7ADA9000C2721 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 405418992DA7ADAA000C2721 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = V73WZ9Y4HH; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_FILE = Prototype/Info.plist; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen; + INFOPLIST_KEY_UIMainStoryboardFile = Main; + INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = me.crisfe.EssentialFeed.Prototype; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 4054189A2DA7ADAA000C2721 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = V73WZ9Y4HH; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_FILE = Prototype/Info.plist; + INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES; + INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen; + INFOPLIST_KEY_UIMainStoryboardFile = Main; + INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = me.crisfe.EssentialFeed.Prototype; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + 4054189B2DA7ADAA000C2721 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 18.2; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 4054189C2DA7ADAA000C2721 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 18.2; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 405418802DA7ADA9000C2721 /* Build configuration list for PBXProject "Prototype" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4054189B2DA7ADAA000C2721 /* Debug */, + 4054189C2DA7ADAA000C2721 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 405418982DA7ADAA000C2721 /* Build configuration list for PBXNativeTarget "Prototype" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 405418992DA7ADAA000C2721 /* Debug */, + 4054189A2DA7ADAA000C2721 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 4054187D2DA7ADA9000C2721 /* Project object */; +} diff --git a/Prototype/Prototype.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Prototype/Prototype.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..919434a --- /dev/null +++ b/Prototype/Prototype.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Prototype/Prototype/AppDelegate.swift b/Prototype/Prototype/AppDelegate.swift new file mode 100644 index 0000000..721294d --- /dev/null +++ b/Prototype/Prototype/AppDelegate.swift @@ -0,0 +1,36 @@ +// +// AppDelegate.swift +// Prototype +// +// Created by Cristian Felipe Patiño Rojas on 10/4/25. +// + +import UIKit + +@main +class AppDelegate: UIResponder, UIApplicationDelegate { + + + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + // Override point for customization after application launch. + return true + } + + // MARK: UISceneSession Lifecycle + + func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration { + // Called when a new scene session is being created. + // Use this method to select a configuration to create the new scene with. + return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role) + } + + func application(_ application: UIApplication, didDiscardSceneSessions sceneSessions: Set) { + // Called when the user discards a scene session. + // If any sessions were discarded while the application was not running, this will be called shortly after application:didFinishLaunchingWithOptions. + // Use this method to release any resources that were specific to the discarded scenes, as they will not return. + } + + +} + diff --git a/Prototype/Prototype/Assets.xcassets/AccentColor.colorset/Contents.json b/Prototype/Prototype/Assets.xcassets/AccentColor.colorset/Contents.json new file mode 100644 index 0000000..eb87897 --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/AccentColor.colorset/Contents.json @@ -0,0 +1,11 @@ +{ + "colors" : [ + { + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Contents.json b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..2305880 --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,35 @@ +{ + "images" : [ + { + "idiom" : "universal", + "platform" : "ios", + "size" : "1024x1024" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "idiom" : "universal", + "platform" : "ios", + "size" : "1024x1024" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "tinted" + } + ], + "idiom" : "universal", + "platform" : "ios", + "size" : "1024x1024" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Assets.xcassets/Contents.json b/Prototype/Prototype/Assets.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Base.lproj/LaunchScreen.storyboard b/Prototype/Prototype/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000..865e932 --- /dev/null +++ b/Prototype/Prototype/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Prototype/Prototype/Base.lproj/Main.storyboard b/Prototype/Prototype/Base.lproj/Main.storyboard new file mode 100644 index 0000000..2efaa08 --- /dev/null +++ b/Prototype/Prototype/Base.lproj/Main.storyboard @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Prototype/Prototype/Info.plist b/Prototype/Prototype/Info.plist new file mode 100644 index 0000000..dd3c9af --- /dev/null +++ b/Prototype/Prototype/Info.plist @@ -0,0 +1,25 @@ + + + + + UIApplicationSceneManifest + + UIApplicationSupportsMultipleScenes + + UISceneConfigurations + + UIWindowSceneSessionRoleApplication + + + UISceneConfigurationName + Default Configuration + UISceneDelegateClassName + $(PRODUCT_MODULE_NAME).SceneDelegate + UISceneStoryboardFile + Main + + + + + + diff --git a/Prototype/Prototype/SceneDelegate.swift b/Prototype/Prototype/SceneDelegate.swift new file mode 100644 index 0000000..ab7f525 --- /dev/null +++ b/Prototype/Prototype/SceneDelegate.swift @@ -0,0 +1,52 @@ +// +// SceneDelegate.swift +// Prototype +// +// Created by Cristian Felipe Patiño Rojas on 10/4/25. +// + +import UIKit + +class SceneDelegate: UIResponder, UIWindowSceneDelegate { + + var window: UIWindow? + + + func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { + // Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`. + // If using a storyboard, the `window` property will automatically be initialized and attached to the scene. + // This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead). + guard let _ = (scene as? UIWindowScene) else { return } + } + + func sceneDidDisconnect(_ scene: UIScene) { + // Called as the scene is being released by the system. + // This occurs shortly after the scene enters the background, or when its session is discarded. + // Release any resources associated with this scene that can be re-created the next time the scene connects. + // The scene may re-connect later, as its session was not necessarily discarded (see `application:didDiscardSceneSessions` instead). + } + + func sceneDidBecomeActive(_ scene: UIScene) { + // Called when the scene has moved from an inactive state to an active state. + // Use this method to restart any tasks that were paused (or not yet started) when the scene was inactive. + } + + func sceneWillResignActive(_ scene: UIScene) { + // Called when the scene will move from an active state to an inactive state. + // This may occur due to temporary interruptions (ex. an incoming phone call). + } + + func sceneWillEnterForeground(_ scene: UIScene) { + // Called as the scene transitions from the background to the foreground. + // Use this method to undo the changes made on entering the background. + } + + func sceneDidEnterBackground(_ scene: UIScene) { + // Called as the scene transitions from the foreground to the background. + // Use this method to save data, release shared resources, and store enough scene-specific state information + // to restore the scene back to its current state. + } + + +} + From af42ac1d637ca120d43332b6004fadc2b5291136 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 10:00:58 +0200 Subject: [PATCH 002/125] Add prototype table view --- .../pin.imageset/Contents.json | 23 ++++ .../Assets.xcassets/pin.imageset/pin.png | Bin 0 -> 888 bytes .../Assets.xcassets/pin.imageset/pin@2x.png | Bin 0 -> 1767 bytes .../Assets.xcassets/pin.imageset/pin@3x.png | Bin 0 -> 2783 bytes .../Prototype/Base.lproj/Main.storyboard | 129 ++++++++++++++++-- 5 files changed, 141 insertions(+), 11 deletions(-) create mode 100644 Prototype/Prototype/Assets.xcassets/pin.imageset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/pin.imageset/pin.png create mode 100644 Prototype/Prototype/Assets.xcassets/pin.imageset/pin@2x.png create mode 100644 Prototype/Prototype/Assets.xcassets/pin.imageset/pin@3x.png diff --git a/Prototype/Prototype/Assets.xcassets/pin.imageset/Contents.json b/Prototype/Prototype/Assets.xcassets/pin.imageset/Contents.json new file mode 100644 index 0000000..ab7c630 --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/pin.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "pin.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "pin@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "pin@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Assets.xcassets/pin.imageset/pin.png b/Prototype/Prototype/Assets.xcassets/pin.imageset/pin.png new file mode 100644 index 0000000000000000000000000000000000000000..6acdd6152ef8a95d3d0ceb2061c338297dc13057 GIT binary patch literal 888 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 literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Base.lproj/Main.storyboard b/Prototype/Prototype/Base.lproj/Main.storyboard index 2efaa08..6623152 100644 --- a/Prototype/Prototype/Base.lproj/Main.storyboard +++ b/Prototype/Prototype/Base.lproj/Main.storyboard @@ -1,30 +1,137 @@ - + - - - + + - - + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + From 0fc7eb49d904c3784e6f0c48f5de1e2fa6606672 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 10:37:22 +0200 Subject: [PATCH 003/125] Add FeedViewController and header + footer --- .../Prototype/Base.lproj/Main.storyboard | 18 ++++++++++++++---- Prototype/Prototype/FeedViewController.swift | 19 +++++++++++++++++++ 2 files changed, 33 insertions(+), 4 deletions(-) create mode 100644 Prototype/Prototype/FeedViewController.swift diff --git a/Prototype/Prototype/Base.lproj/Main.storyboard b/Prototype/Prototype/Base.lproj/Main.storyboard index 6623152..a5a0184 100644 --- a/Prototype/Prototype/Base.lproj/Main.storyboard +++ b/Prototype/Prototype/Base.lproj/Main.storyboard @@ -7,17 +7,27 @@ - + - + + + + + + + + + + + - + @@ -105,7 +115,7 @@ Location - + diff --git a/Prototype/Prototype/FeedViewController.swift b/Prototype/Prototype/FeedViewController.swift new file mode 100644 index 0000000..c7a5c9e --- /dev/null +++ b/Prototype/Prototype/FeedViewController.swift @@ -0,0 +1,19 @@ +// +// FeedViewController.swift +// Prototype +// +// Created by Cristian Felipe Patiño Rojas on 10/4/25. +// + +import UIKit + +final class FeedViewController: UITableViewController { + + override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + return 10 + } + + override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + return tableView.dequeueReusableCell(withIdentifier: "FeedImageCell")! + } +} From f64d4d19e848434778500edd61f1798343f7f014 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 10:47:48 +0200 Subject: [PATCH 004/125] Add prototype feed data for demoing purposes --- .../image-0.imageset/Contents.json | 21 ++++++ .../image-0.imageset/image-0.jpg | Bin 0 -> 125633 bytes .../image-1.imageset/Contents.json | 21 ++++++ .../image-1.imageset/image-1.jpg | Bin 0 -> 204398 bytes .../image-2.imageset/Contents.json | 21 ++++++ .../image-2.imageset/image-2.jpg | Bin 0 -> 104042 bytes .../image-3.imageset/Contents.json | 21 ++++++ .../image-3.imageset/image-3.jpg | Bin 0 -> 126212 bytes .../image-4.imageset/Contents.json | 21 ++++++ .../image-4.imageset/image-4.jpg | Bin 0 -> 131782 bytes .../image-5.imageset/Contents.json | 21 ++++++ .../image-5.imageset/image-5.jpg | Bin 0 -> 117227 bytes Prototype/Prototype/FeedImageCell.swift | 0 .../FeedImageViewModel+PrototypeData.swift | 63 ++++++++++++++++++ Prototype/Prototype/FeedViewController.swift | 6 ++ 15 files changed, 195 insertions(+) create mode 100644 Prototype/Prototype/Assets.xcassets/image-0.imageset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/image-0.imageset/image-0.jpg create mode 100644 Prototype/Prototype/Assets.xcassets/image-1.imageset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/image-1.imageset/image-1.jpg create mode 100644 Prototype/Prototype/Assets.xcassets/image-2.imageset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/image-2.imageset/image-2.jpg create mode 100644 Prototype/Prototype/Assets.xcassets/image-3.imageset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/image-3.imageset/image-3.jpg create mode 100644 Prototype/Prototype/Assets.xcassets/image-4.imageset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/image-4.imageset/image-4.jpg create mode 100644 Prototype/Prototype/Assets.xcassets/image-5.imageset/Contents.json create mode 100644 Prototype/Prototype/Assets.xcassets/image-5.imageset/image-5.jpg create mode 100644 Prototype/Prototype/FeedImageCell.swift create mode 100644 Prototype/Prototype/FeedImageViewModel+PrototypeData.swift diff --git a/Prototype/Prototype/Assets.xcassets/image-0.imageset/Contents.json b/Prototype/Prototype/Assets.xcassets/image-0.imageset/Contents.json new file mode 100644 index 0000000..044adfc --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/image-0.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "image-0.jpg", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Assets.xcassets/image-0.imageset/image-0.jpg b/Prototype/Prototype/Assets.xcassets/image-0.imageset/image-0.jpg new file mode 100644 index 0000000000000000000000000000000000000000..5430479070446a2a09b52ad50934938e60f3da1f GIT binary patch literal 125633 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
  • +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 fc}BTPppf*L^Fcf#eF>zc2O?DGv@5 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 literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/image-1.imageset/Contents.json b/Prototype/Prototype/Assets.xcassets/image-1.imageset/Contents.json new file mode 100644 index 0000000..b0b39ec --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/image-1.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "image-1.jpg", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Assets.xcassets/image-1.imageset/image-1.jpg b/Prototype/Prototype/Assets.xcassets/image-1.imageset/image-1.jpg new file mode 100644 index 0000000000000000000000000000000000000000..10bef47f184d97f0e311280ec50c826b1b9fed44 GIT binary patch literal 204398 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%0D5&f3xfN}K7QrPXgaY6Zn%bprV{ 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 z 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 literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/image-2.imageset/Contents.json b/Prototype/Prototype/Assets.xcassets/image-2.imageset/Contents.json new file mode 100644 index 0000000..fde9a98 --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/image-2.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "image-2.jpg", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Assets.xcassets/image-2.imageset/image-2.jpg b/Prototype/Prototype/Assets.xcassets/image-2.imageset/image-2.jpg new file mode 100644 index 0000000000000000000000000000000000000000..233c8f5ef09ce31dec7c8430cdbe621815267e97 GIT binary patch literal 104042 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 Nx|+w5bJ5eE|Jg*NJLdoZ literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/image-3.imageset/Contents.json b/Prototype/Prototype/Assets.xcassets/image-3.imageset/Contents.json new file mode 100644 index 0000000..455757b --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/image-3.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "image-3.jpg", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Assets.xcassets/image-3.imageset/image-3.jpg b/Prototype/Prototype/Assets.xcassets/image-3.imageset/image-3.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6c40d62d0b3c32bf6d8ffaf4f6e43e31678fa995 GIT binary patch literal 126212 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

      AFQVcO9g86v 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 &YB?*H`r@xf;^0} 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

      vwFD+maw%YI@7udjV!kh>Rf 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

      !<7=sSh$0za*! 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 literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/image-5.imageset/Contents.json b/Prototype/Prototype/Assets.xcassets/image-5.imageset/Contents.json new file mode 100644 index 0000000..6c2a924 --- /dev/null +++ b/Prototype/Prototype/Assets.xcassets/image-5.imageset/Contents.json @@ -0,0 +1,21 @@ +{ + "images" : [ + { + "filename" : "image-5.jpg", + "idiom" : "universal", + "scale" : "1x" + }, + { + "idiom" : "universal", + "scale" : "2x" + }, + { + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Prototype/Prototype/Assets.xcassets/image-5.imageset/image-5.jpg b/Prototype/Prototype/Assets.xcassets/image-5.imageset/image-5.jpg new file mode 100644 index 0000000000000000000000000000000000000000..685196a1ef495d32e5e6042b7e1287290e58c001 GIT binary patch literal 117227 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 Int { From 98560c5b20fec8969ffc40696701731516c2ab09 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 10:52:39 +0200 Subject: [PATCH 005/125] Add `FeedImageCell` with storyboard connections --- Prototype/Prototype/Base.lproj/Main.storyboard | 8 +++++++- Prototype/Prototype/FeedImageCell.swift | 15 +++++++++++++++ 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/Prototype/Prototype/Base.lproj/Main.storyboard b/Prototype/Prototype/Base.lproj/Main.storyboard index a5a0184..ff787e5 100644 --- a/Prototype/Prototype/Base.lproj/Main.storyboard +++ b/Prototype/Prototype/Base.lproj/Main.storyboard @@ -26,7 +26,7 @@ - + @@ -108,6 +108,12 @@ Location + + + + + + diff --git a/Prototype/Prototype/FeedImageCell.swift b/Prototype/Prototype/FeedImageCell.swift index e69de29..c15381a 100644 --- a/Prototype/Prototype/FeedImageCell.swift +++ b/Prototype/Prototype/FeedImageCell.swift @@ -0,0 +1,15 @@ +// +// FeedImageCell.swift +// Prototype +// +// Created by Cristian Felipe Patiño Rojas on 10/4/25. +// + +import UIKit + +final class FeedImageCell: UITableViewCell { + @IBOutlet private(set) var locationContainer: UIView! + @IBOutlet private(set) var locationLabel: UILabel! + @IBOutlet private(set) var feedImageView: UIImageView! + @IBOutlet private(set) var descriptionLabel: UILabel! +} From 0e139caa4e2e5e6ecaff801309e3de15fe0825fd Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 10:57:11 +0200 Subject: [PATCH 006/125] Fix width of location label (set constraint equal to its superview so it can take all the space and not be cropped) --- Prototype/Prototype/Base.lproj/Main.storyboard | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Prototype/Prototype/Base.lproj/Main.storyboard b/Prototype/Prototype/Base.lproj/Main.storyboard index ff787e5..428583b 100644 --- a/Prototype/Prototype/Base.lproj/Main.storyboard +++ b/Prototype/Prototype/Base.lproj/Main.storyboard @@ -37,7 +37,7 @@ - + @@ -57,7 +57,7 @@ - + From 115af9009dc5f8ea33fb3b568be3126fb11670f2 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 10:57:48 +0200 Subject: [PATCH 007/125] Render prototype feed data on the table view --- Prototype/Prototype/FeedViewController.swift | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/Prototype/Prototype/FeedViewController.swift b/Prototype/Prototype/FeedViewController.swift index aaf51e6..0281632 100644 --- a/Prototype/Prototype/FeedViewController.swift +++ b/Prototype/Prototype/FeedViewController.swift @@ -14,12 +14,28 @@ struct FeedImageViewModel { } final class FeedViewController: UITableViewController { + private let feed = FeedImageViewModel.prototypeFeed override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { - return 10 + return feed.count } override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { - return tableView.dequeueReusableCell(withIdentifier: "FeedImageCell")! + let cell = tableView.dequeueReusableCell(withIdentifier: "FeedImageCell") as! FeedImageCell + let model = feed[indexPath.row] + cell.configure(with: model) + return cell + } +} + +extension FeedImageCell { + func configure(with model: FeedImageViewModel) { + locationLabel.text = model.location + locationContainer.isHidden = model.location == nil + + descriptionLabel.text = model.description + descriptionLabel.isHidden = model.description == nil + + feedImageView.image = UIImage(named: model.imageName) } } From 22d846916a09737d47f51b95e89882c9d7df2ba8 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:00:47 +0200 Subject: [PATCH 008/125] Add fade in animation to simulate asynchronous image loading --- Prototype/Prototype/FeedImageCell.swift | 24 ++++++++++++++++++++ Prototype/Prototype/FeedViewController.swift | 2 +- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/Prototype/Prototype/FeedImageCell.swift b/Prototype/Prototype/FeedImageCell.swift index c15381a..d30c960 100644 --- a/Prototype/Prototype/FeedImageCell.swift +++ b/Prototype/Prototype/FeedImageCell.swift @@ -12,4 +12,28 @@ final class FeedImageCell: UITableViewCell { @IBOutlet private(set) var locationLabel: UILabel! @IBOutlet private(set) var feedImageView: UIImageView! @IBOutlet private(set) var descriptionLabel: UILabel! + + override func awakeFromNib() { + super.awakeFromNib() + feedImageView.alpha = 0 + } + + override func prepareForReuse() { + super.prepareForReuse() + + feedImageView.alpha = 0 + } + + func fadeIn(_ image: UIImage?) { + feedImageView.image = image + + UIView.animate( + withDuration: 0.3, + delay: 0.3, + options: [], + animations: { + self.feedImageView.alpha = 1 + } + ) + } } diff --git a/Prototype/Prototype/FeedViewController.swift b/Prototype/Prototype/FeedViewController.swift index 0281632..9c1fe34 100644 --- a/Prototype/Prototype/FeedViewController.swift +++ b/Prototype/Prototype/FeedViewController.swift @@ -36,6 +36,6 @@ extension FeedImageCell { descriptionLabel.text = model.description descriptionLabel.isHidden = model.description == nil - feedImageView.image = UIImage(named: model.imageName) + fadeIn(UIImage(named: model.imageName)) } } From 1a2a0b1a9d14638c1af6165036e1dc58ccd9a7b4 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:01:35 +0200 Subject: [PATCH 009/125] Add prototype icon --- .../AppIcon.appiconset/Contents.json | 121 +++++++++++++++--- .../AppIcon.appiconset/Icon-1024.png | Bin 0 -> 595955 bytes .../AppIcon.appiconset/Icon-120.png | Bin 0 -> 14411 bytes .../AppIcon.appiconset/Icon-121.png | Bin 0 -> 14411 bytes .../AppIcon.appiconset/Icon-152.png | Bin 0 -> 20310 bytes .../AppIcon.appiconset/Icon-167.png | Bin 0 -> 22905 bytes .../AppIcon.appiconset/Icon-180.png | Bin 0 -> 25198 bytes .../AppIcon.appiconset/Icon-20.png | Bin 0 -> 1035 bytes .../AppIcon.appiconset/Icon-29.png | Bin 0 -> 1852 bytes .../AppIcon.appiconset/Icon-40.png | Bin 0 -> 3028 bytes .../AppIcon.appiconset/Icon-41.png | Bin 0 -> 3028 bytes .../AppIcon.appiconset/Icon-42.png | Bin 0 -> 3028 bytes .../AppIcon.appiconset/Icon-58.png | Bin 0 -> 5380 bytes .../AppIcon.appiconset/Icon-59.png | Bin 0 -> 5380 bytes .../AppIcon.appiconset/Icon-60.png | Bin 0 -> 5745 bytes .../AppIcon.appiconset/Icon-76.png | Bin 0 -> 7976 bytes .../AppIcon.appiconset/Icon-80.png | Bin 0 -> 8661 bytes .../AppIcon.appiconset/Icon-81.png | Bin 0 -> 8661 bytes .../AppIcon.appiconset/Icon-87.png | Bin 0 -> 9124 bytes 19 files changed, 101 insertions(+), 20 deletions(-) create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-1024.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-120.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-121.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-152.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-167.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-180.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-20.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-29.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-40.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-41.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-42.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-58.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-59.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-60.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-76.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-80.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-81.png create mode 100644 Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-87.png diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Contents.json b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Contents.json index 2305880..bb127f9 100644 --- a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,30 +1,111 @@ { "images" : [ { - "idiom" : "universal", - "platform" : "ios", - "size" : "1024x1024" + "filename" : "Icon-40.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "20x20" }, { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "dark" - } - ], - "idiom" : "universal", - "platform" : "ios", - "size" : "1024x1024" + "filename" : "Icon-60.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "20x20" + }, + { + "filename" : "Icon-58.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "29x29" + }, + { + "filename" : "Icon-87.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "29x29" + }, + { + "filename" : "Icon-80.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "40x40" + }, + { + "filename" : "Icon-120.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "40x40" + }, + { + "filename" : "Icon-121.png", + "idiom" : "iphone", + "scale" : "2x", + "size" : "60x60" + }, + { + "filename" : "Icon-180.png", + "idiom" : "iphone", + "scale" : "3x", + "size" : "60x60" + }, + { + "filename" : "Icon-20.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "20x20" + }, + { + "filename" : "Icon-41.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "20x20" + }, + { + "filename" : "Icon-29.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "29x29" + }, + { + "filename" : "Icon-59.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "29x29" + }, + { + "filename" : "Icon-42.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "40x40" + }, + { + "filename" : "Icon-81.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "40x40" + }, + { + "filename" : "Icon-76.png", + "idiom" : "ipad", + "scale" : "1x", + "size" : "76x76" + }, + { + "filename" : "Icon-152.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "76x76" + }, + { + "filename" : "Icon-167.png", + "idiom" : "ipad", + "scale" : "2x", + "size" : "83.5x83.5" }, { - "appearances" : [ - { - "appearance" : "luminosity", - "value" : "tinted" - } - ], - "idiom" : "universal", - "platform" : "ios", + "filename" : "Icon-1024.png", + "idiom" : "ios-marketing", + "scale" : "1x", "size" : "1024x1024" } ], diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-1024.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-1024.png new file mode 100644 index 0000000000000000000000000000000000000000..946eaa924dd7af8e93d1fcede6d7ca0f4480eacc GIT binary patch literal 595955 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

      YcmaG!KxGiPTd8&z7wI`yY)>$9zibxIN7SOtiQ~ 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�SqWhq(+Oz!N7F<(uhGSlRyD}T-g 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�zmh_)@LFwGP4R5e+By*>u$y4`j<9b%vR4dZz7v`Ws-kZ}2# z331-o#v$B_OY1|`iEy=#q`$ve1txzGMzYHjLKGVDDUia~O5t4+o(D@~8XQ|h$!f$2 z!;cBGM`BeaDybz5`3HWXbj%w_4ujbcByYUn)B{zGl{cCE{pU=QxuA8vy4u@# zqH}7rGUY4Ag}>RrrV(zscVB+ zT)hMjD$GcY@-G&>6e@kR0S)Wvu)zV^4JL=3>E#Z`LF?^Qy_AH+;FRTqd){CW-eqe? z2tHJxui_w40^VaIo@_|8djr|?IA!=D8={sL^%m(gb)b0@rbtkb?E!;eLVf4Y_l#!QP=nQpqw=iYe2|tc`;;sN6W~1;(NorazJsYvpqyYj>BH_E$ipi!&0zlY1 zw>U;N1-?Mn7<}n8$eDz<7Q=SJ)~&b3pgbzj-~eivuh6}J*aKIaVc;ZaBT~`Lvqo;nDJ;N3|aJ2qk9olAqee0SUF-H%*} zuNtCHc0>JsDFL;`K0|Vt`#0r$iGw8=k^6g!kz%Z0G&Y0(z%(B5GE7)P440cp?5AA@ z^T{b1DGQ4P3P*UmvoX2jZk^Hhm4`|zg@bTz;-`V0hc1Km{1Lv{)h*aG;A^(F!RIcI zQKhf<8vVoL5~EIO+K70}m}5XI=h)q>!BSuRYLcq(%&MS>=?O@*2@`EmT$9}J}J>m!^h)NiQ=jO{Zy8tdoOf+DicCVy$g?wFqIEMeO&*udA!0s5;)_pzRgeZLJ z;4TGT*$~DJvU(a-`9Ip9!N_CwpzX`kmFDuq5kcaoE}H)ZE$6afo14n`!r1x9DM-pN zM?amuoSdV(jcVc5J^i2>I)cpA4<_xzp$`Q6=a8e(A^{z?liJ_2fSD5v1NAc-!$9AZ zn1o#fZaUCCM)pcy;M-4ITz>XdlqL9APVCIS*+uyofWc;Vq_*~u+=`ZeV7Q@Uhu+-l4wgPClzBqdNC@kd{3#C|s`#ajz3)2CnA;=Dl*@QUljqD8v{0)RZx! zg2SyxH(`6Nnh%S-Mmt3<2Vf^{+}bx?G(Z`wo<_i*dR%q8+To&fQ2G6qOI@X$Qg2_J zbaG!|!Mk|4L!6;B?<&@aY_q2~9R(V?kk^*?brV$P>KQp?@TpvW)izgceV*!?vc!_U z;b8!G%vYuFP%tg2j;%0S&Z7bIz%x+Us&$J*pu_RA_`g3;4E*d zXi!!04*8P2^#S-9_XV_MIrXw-phb-Ib+8RYnbpFP(#ox+#eK4|TYELeEMgc-(8#!B zx;Dc>O;UeXs+5%l1*YT+tOVg}Z-z<+YR;#|^Or;ICbSo*TNqY^yLMt>={Z6eVQ6idw4q%ex7>ZF<*!NoRaEzs>t!NoJN8 z@zv9=pVCHu&2K0u?Y&AcxEZcJ{6sIf*bt~RC~5hRq7H+NW`D8$N87zBK!4G|?{;l4 z;b(V;wNv+(q^8dJ)+>~6Fs#RhEb)*amiUAw9@=a75%IxKkf7w&9IL;?Y5kXwa@a#s zO&Vfuxw)USWVZI!<{X#5?x3I#1&)|w@}uA;)=)JkEGo`gP%-)vLI+kI;x=ztj>p;4oL{ZfLQ~94nTy6(w*n96^a`S z6u{ZRyzr1ACiaMiQgKpr@eW{FAqoN1?V|wDck7E-|ErM}%^hTXG-u8BEU@!|y0R;p zRT5xC@2AFCp>nkkRB&0HqOY3zJ&8zp_*Ug1jntu%(OJ8u3;xB?$lX^K02`lBxQkfN zejSA{R9Ni}Jo4Ci8%%B2vM-Mw>o6Bv?Pl+&1p!%e&2~B;T56`y37C@1kSDUa7NCHs zfu;(cKlpREiAid&Lw2%}^myX~SCAufZ}z$Qgf4kAQ3J&MGW(O&bJ*?h>qSYBzk~l& z{5$BP8Li@cPoPkpAPC;bM`c0wyMP0ysTXC#LcS2j+d_1gCu7VK3a2R{bsH!+znay~ z_qJm(zBJvO@2p>69v}~XLWR^#WpgvINzxI(v=_A>wEj24LH@Q>yLP_K(mpt`9|LL>T|p!EZyz?AbAg*zpEy8>Woruti4>C9;x_*rSg;P#f@YT`hcb zktj`xUCbDqs+Yf~I&>KbJR$BCsS zAIvAF64UGM8(yR@F^M`1%4gi!gg6#B(`7(&onBx@eOw}j{ZUXy z?A0;v>wX9vZ!)WIQ2DRn(tjQ{^R7nC{wUW;bD5HGzWN#7fZBS!lgt-?4GM=zo}b;> z54v`2>-i;s+{3UOjxu6%7Us-VzufVOE+le_cFp%+KZi|@O^M#tkFKTq;ya}n3l9_y zbkUyBe*Q>or<6@${sr#_Tq3AB?$6eprm`J!<7O3C5iqRIAc>feVG3s)CbtEL_k-FOUW`{vT99$mLS?L1(M z#_kShRXXee89&pl*)kVRZKsPl$$iet<3T*>;~YALnmE?mZnQ&LzHqM2*`7%n>n|TP zT=t}*Jv7iQTfcK`qac6>U6SoLkpWU7!5N8DZ;wMgmImf(!QfbjPv&gG%!%3L^{R%; z9stDHkkZ2a;#+y*%S-k4Sw8iJfXvcY_ui<&?|mZIaKT{0yD75-OwqNOvsSsB%hhfU zje-BiJI_6#8cG1DSbNh*%Unik02vCiUthv|l1B=!&JQ?98W3GW9TV&#eg?1ayWRart?^&=GG+zfG+(ok=WOc zT>l^3{F#A}n{Yup9=*yRC(XyPu;GzBT~GF?Y~`%Gefijp3U^6aNpNZ9o(@n_$EB?u zaY4*B%D=?KWeAhsQo-gDosbz3XZN<^rtXnr?gBJsOAAyguGb|!i_ogvp_mu$R@2Wq zfCHvL{c8Cp?EPv9l;N|a@~*~$UesJlcyA!*`2V1{GL>D^zT-RXH4Ywr@hG@6#~z6C zWu=UuDHuiIN6cp#bvl=cE!vxp8?i(#QRTb9!DH{o60!rWNxUaWm&D_v@YyhFxES4P z0;H82_c_X+vNHyD?6Yo&fy`b?ge)WYl&0KQv-zDD#e)!*d5#yjIUq7iS${sfGCJj= zX^I&vUVeVH-B8X^)ypxLeHAgY>_l6NJEA3ozsenv|TOGZ@qD$ zVN-^IoOY|Nc)kplk^XKsL0yhd91$pHxZgVa&@_R_f`a3*Up7&!alN@b zF01uZ`!=M<=oHiPSjd2#RmRa*ec;Vnkng_axjsvZyoVbv$ToKiDx9Bw?=ykP%k&Sg zq(eZR1Hv?%3t z-|{8cL`~93LrG@tR$4{+O!-3O;CWzSxE`_KXFc@Rg?)FxwBpgk;ZkW;+-)0Gfj$kk z`PkEF%@Z+Pu27u?8K-tx_K(7W&ZESTJsJyOn zcZ{N;AJ@x*f>nrpy@)MyV`pOD>D{kB`x||OW?zkl*zfU1*`ykCMP}zZ2E^zCr4RGf z$$if@FrHLNoca(@LGA`B-n*-PO8od4&*MxE`a`%6X^}5M&qeoxk12vWT+GTmAZ*BgUdVUz}@DU-) zZ?ekioIhmTvrsuupr20dbwFl`4mi$+-!ei>OzWl#rcYy52*mGE&D)f}`GkMaILLi8 z?0GR1r>@U_%^gmjm)lwvxv&?wElf7*4BymW=!*HoE^+Xi;35lU4U#577Hpy!u(;x&LM9?X}nEzW=>*(+sUvJl9{ z#&Em%)nE#*oxqMqyp{DowGJO+p36mDvs7w@Ot~d+7;VJ|zXIznRBJZ3T+;0{SsFZVt3OKx-MB z%Y+*SbU#}|E_nyBzcY*fWybbmg6PV1|HRD^uiP}i|I^INM64AzOdRFeZ$7_qTVf)8 zWOePN(okB0FX+0K^OSHOklwY;M7@JHfo~rVU>*+!x+CK_zhUyptoMxgnHWPd>(zXT z$8w?*YmcaDS`RR#iS@%%E|$P*IdJM31?hZJ`8CtkzctJQ=<0y2n|M-f>gF?eF-O7? zJNtxp2l)f^-*_bcS7liryski4Buh}J9FB?L8HcS^p8|d_q|ZQ=)PT6UZFVAXvpX@^|cZ$(E4%DvoT;zXz1JinQPxVe;Xtm5SNS2T9leBbT)s*s4m~$AFTB z8BpfibZTO>_4Z}Yd*kgMFs*|8Ceu@1^S&M6n1NzGj8q*sAP|=z zrce(A{3BDxJZcV7_0G~li@b0bwmYB6Ogai!7MsCC6&`MD4Hs+Yn(!2rOUqvrzf3rt zd=fO%o9wh?qdaGOW?8*(fERcYO&&n)RvqOE$F`Ffc7*;{g>7qSJzy?j#|DUCyuQyH zJcVa>0Pw>F6uzf#Ln}~Rpfj}-BTuReD)024D8k4G$alU0I-5aPj%`?|z+RQw!~hWS z%`yoGXod_A4&R~$3rZafq(grsSsXxRTbpX_aoj~Ii;roK*gj!E55q*{f+yZI5~WGt z{OozJ3Xmm$9&t;OKL!4ib@d52o+5dg3z!t~_&P#(Iely7z-q?Mbh#OMvs&_FN6b=< z4cossuD&|Br9?J9=feZYn6ZF<^uhj1qf$lbGO~$j^VzAAl z#y|kd1a-E|@G9d zdxsQmi7sx-bD_7K(@$KD5o&8q;ZKPeBUAI9*3ATVVj5*yLpOKLsN{1#YU_?5So8Zvs&hc^1*4 zSmCd9q5k|y@YGw~s`t2f5>hsAsL_Av&Ea5*t&J9`h{OY)FOSE2Vtupin|l&Cq2iV= zqw_J5i8$EOFffeKqHm^-yx&rO4q(d1>Luo(AJI)kuYXte1x2d^<-n+D0BE(INN8Qc z%+;ebQ7!sJtlEh=VEhadMXZRd91CS@AF4Yy&xp){Ic-wt0pnLa`tA`M`P(N;C-SeI z1O>pJ@xKw8uMVR$Z+rr*hSEX|OHypkHRM~yQ3aDv*A7?g1kXqabRD6mC#q)Hm%9@h zu|tzU<^<+j*W__3y;oW|$}5j5L>vd{r-{8~1fZ57Cv-lnABDq)yzG(4wT7thd{aP1 z|FJUh6>i$?)?gaI1pA@0(MgENRo}{(N^M=1tYVxA;1*h=gH)P%!=?lrlG94|%TG!Rl zR+mp4m$^X+01X@WmLfMt{)n1J0(}qG2xT|hmfl*Mex3ZD+t2)4qOF%+v%Y=iZw+V( z;6TTB&~|ew8?{smES=W&gG4aF9)%R%K+1(J;tfC%!i5slfnGo07SBT{N}6t=r#p** zPM?xsY)}a)biTIw9mf9g*>Ko$+ggQv(v`}A9bM8`(`6JBHS0@bMiIK*+KUeHYb@4& zq5#pVWyE&Z=vJ0}4q0C^Tbq-}QE@>G&F15txAx7>8GuxZ6AZ~YSMm2v4MRT;ATRq# ztt#)htev9ySr&Fpl&VmC%Q=DrD*hDZpA02oIz!Q(QM?n)p+#IF&}gaCDSMjmGr$Gp zipT5Q|4LWPhzoeb0Z59tr+xRBb*_S|CG!`iDCU1r)Em)+$#QlAzL8bQ(tB~-8 zgz=LQSrCH3O!_5qSorx}A2{nB5^+*VGt)aGul`latJl9{4}miQ@;El>lfJi>I4^mT5w z7JXbRUo@j8;^vL>OBQXmAI#8nAwkskr5a$z&Z2+hR099?s)@m-*)|70SD9H?4PWu} z^yk@&Qqxp=+~(N1%1=m3H*SBhkHM;C+5_mTxha4sm%Kn^QS7XP27QCYw?M0xgfqnk zYa>ZN{!}p&j#z5);UNTRu9iq^!Rhi=mnGAaS}iffw_@uHD8u+qr#yLnHcO8^@pEej z>ROov|ALh3@}}_c5uI1-4$6_;zb_w~T~&haxdSI_8mSRtr{%Xl1wr9n z=ph~*huCbGk?upD+6k71Zrl9~sh#^v_$3wiyENrZwCnVmsF||;m%`_J7F-cSZ>=Fh zjIm1D3ntnW@PY}(1_Fl+-b}%51)ikh-C4kF)fN_VGg4tvVDCl@ef~SI!dQn8GpwT( zxqc&^M?q4SR55Vsi$frF&eXztUjyPNPPq=RJzPCJa!L>Y>@<0XO}8{kTyCH8GL{$s zYti2JdKpzq@s;o;84mD}e%Q;Mp9f_+bv}T&j^$FUv0^l|b?>)48gu0yNzs*7uJ}S3xg8;`+?(o&B~fauMm=eq{CUEm3QEt-VG$m9lx0>ZI!?z+*6x zdB5OYh@YtD_v*?I8SkPf!Sri}veLjOmz@37x* zk)oil&sn+wx7S%a+nx3T<^I1+yBpKunTFz#Fmck+1Hom^*r4@lK(zMKc8{$#x`tLM zme^@Co-BXoV2Z1;`!h>ru1?2R3oT-S^|$YaEzl}jgF3zerSE+?K(q;fch!dqJAsy$ zJ63z}kLW$FoL6!~Yyfa|s3NMXl70ffz{^cl94wUj!?xm%9?$^wTJOE=z;PC`#LFKK@QVhej?jY?|Mh&)e%Gxac7@t_e#K>UP)xc97n8!>^%)vrj}{wa;XG1Nk~xGa|u zPYF6MgKbm1mCJaDAvijxL@kpBEBhgLd1=@+Ti6L|$`%}cl6%T;qCF6KA$ zX_q~IN+*s_71mEKo+Zs8sKh_?nieX`d>-et8$?yNq}KcF_-CVOehsC;Gq^+3f7TPi zbs9QvDoZ#ABWJY&N7^b{oK>6okNv^}8DX;qWkK$VU(T3!yt3%N9aU!N*1G)e8FKtf z*o@)c5}8*XY)i}Nw=a&31soxuR(@hJS(WlJ%7U5naws!w6Z2WStsgu7ekuf^JK>Wu zq39Wk&#CCZ4I9}uI_eYP)6bmYm_h$y$?5H}8Wpr#Quu70_gX7|p!!m6Naed+HM|M2 ztD5jNyEK^6T9UXJGpFqqJ{V8QGncN!%uy!Ktj42}v00I8G;^9QD+Id;P{OS(l{{M( z;Mx8UyEW@@SK!qj@=Vt0D_UP$Ync(3d)_+j(DN4|`SiHr_>WI?V2kE%F(Yb}h4`6b z%C>byFJQ~}MNqb^|JU98h$u6SvL`B%5~m%+pGzsL*qH-O{;|c1RxQT=&j!~YF7+9g zcBKGR38MsbMSEyW@7H_Iq(ahM_~xbZ7ZAMS0WMPf)VTpO_`is-v>1@HOL^_|tnj14xHdo*zch0y+bBCi2I=FK(%D-x>gr zi4io`%z@SM*nJy)YdXgsK!kgyJT=C?BRfx2we?b(ff`;=%8!o+ZuW!~JL}UQSpp$_ zlgSoqM6t`q$Qi!2a2igVYsdHY31@cxki5eWab)MhXL?%0wF-S%KrG)Aw}8qP3_aIF zUEGSJB(hI+%XX6F{ zcMHqEYI+f#);)>*BO^7k76+SK3CZ35O}FL}i&sAAUsfc{W7`+T@L;1R1-xhr-ZM*4 zo~eK18n6`4ge@@%o9u5=s0&x8-I}+KhFqVswQtXCyzu*PPLF3wU&a(xB&Wc-6)ncfZ^);XI|g(b${to^G5J!K}`P=5ZchoRhx6Kz1SY^(?Bpx z-tKPp)WCN(*8Eu30aTn0h#I*xk2khJN6&I*UlS;y%;Tax@PhYRT@XkdPxuFGzSn)n z1B)bfI%p<^Zg?y9?Uqi2k+FN`0dLFdNB8_7z)p2`z}_Z@h|}`l0LqAwx~Plo2Jb(M zK0iQ0f$EZ;n{#-D;)Ca?3^E5PR59iH07A69f_Gl5gc8!${OKd6+3l9#6~X_U0H2n+ zfo!Hj8e1~KhNMq`6li>1@8aB|{br#2yvFSc;90SP9-AAn=Izx3i0Kw92OysHhS_$p zxm7J3ni6o`E0NNC-I`UOGWpfp)n0Yq0%U_NE?lmYOBIoAHU#IvOw=6DygAjnJf|P^ zxL7e8E>^eRw&I#Ow1ft3^~^SLkSCR;TV$X>SVg-c#*jILte;_KY@aO7^*NGF)^~}n zT_udG(JM%My({Q2q@~Z?Ct)s)FX|qP)FOI9NK2Qrcz^i>Y==%E$4&o;>Tp=9&vuX> zwh-*d@T9>mHJm-|ol9tLZ*87ppbx11DS$Rg`1Kpl9Fpf2+4g7iSrg_izxWNKBY15p zrXBnqU)9D+R{NL?Ijl?c%B1tAQ`)RTrZ1G->z@i5%otV?5W;^iB~z^U)4r~jvFFfx zs_hSm_D+RXngIN-juh5tIZ@GL_h^3R=Q4hT5^HP(3+evCm7Ij3%TyyNvn*F%-)Hmm z-oCgj*lall89O>%WnR^06YsX<^DGf$R*K|jdm9;E+tfIhp~FQ^{L_~seV=L&P#Ej? z1t@Y%*UsS>)&;Cgw<)K{P5*sI*3{q0^vX$`OWn|`+Ng|yc#@Hl34OD&(nO;~mPPT4 z@)w=qwHY=L$NJC?AAG*RF!6D2Xg)N!%tt>y+*hUl7zkGDMiSn=!wHq@+Bg8+Hxk6A zlkT+XQCnv6%arh^UViRk_{e<53u^IFpfoC*JYH^<-5GOI`HROrjX1x01vL`1FHr}S zR_DR87rCUIbqJT(M$SS(6{Vl0L}LOF9J=w`ZOVvTypw+@rOQE|3{Nnz$nfx59i=93 zY~@2~8|EaL6TE`@(;P-xVZp&m1g%U6@$k_05>{NC`5nhg7QuMfi`Vew$_{=L^7$9dfyV!o-dh3snD1KMvM&&!} zLXwpn@D~025e@T0P{W5f&|m;!m-RHV_=4~gQ}<1mhsqU z*lbVHuEa9}mz!uZ5$tXO#Dn9*83;uxOac2C(QD+Hc9w%WFj@UClGSswsaNa*C5aYY zxud!2*J|KT#NGK@ z#c77dIs8D+(&AXQq%Oh@4;YcZ@&edi*sNd4WYsr~K(Kt{Vb^Uh3y;Z1eQwE*V{=rs z(v!zD$4(As)54i)m6r*H!leOyABsF=t)IjS?2eyCRv%qjRM5eHgM;ibipmevn3HM; znihdZ4pbvPr-DwHXH}{Q>A10q0dBh%X+jCMX6ggcw4*tf5O_6R&*Nu&(#&_qfKWdn zG;+<;$O9xK6^u4}9`CVyI4tnhbjU-`HFkzqdqY0HTF-JWcW|^w3Y==QqTT&s6wzJP zP*JH!R&gvOC|}#g-S!AUC+JIF!$-!Vw983j^S8N=T10>JJa2H<#kdKO=uZ1QG(+13=H zh%1-1TPYIgNr6^Er z{k&AD9Y$eye}R;vM8iQU!QpJ*eC}yU=XqORU#&S`ZzNn=l$>749@7exW5={W zM6GQK?@r)Mj&55YtLfYXWJ=3n_m`$C&e)|^&1h3Wf9c<-`_9JgH@#K#<9q7jvc@LI zJgLP-yXV4euyMSn`ISd8L$h$J$!5<{lR|+v#Ip{Wd)WoBDyua35jcLj?tgZ5rg8EM zJoF-#{k%x6+uXywyC-d%{0$Y*Nl1OXHE3+1DR?-s=V4D_hD}Js$Lm{HHAYP`OCR3h z#>85$2EPnl_tt>3edd9<=<;6njfGn0y2O~VXO+t^zDdI&f?>i$v0ZzmmOavtsE-GB z4E-8oRabxU6l^f=jGVJ9&qW0p5E)CUV?Tu;{v6ip$RR~PMgY>~i@-;Q(nqP7j?L!< z5)9yv83vTuKqquVUFo-@^E-1XMhuG$ zJHa-fIZx=E(gmqK(8@06MlDS;)7?|iReR#^Usb093retKXU3WQ&~rEoArFgGy*V;{ zMU*uV$XGeb3qB^~74MTngM$KHQCR7Vl(I=?ocHWx@+hx)fn^`v_C5fhi}&+knyUrt z2QapuLM^@R&7+Pl6n$TxEAn&Ga0p*pZF|oMjZN{|jT_Dw#q9IQ#EQQ|i&}WXNU}@! zi#LjgY;#ufBGfc2JgT+ILvhHSh3=MhkL`H0Ph~R1#0jpoW(CqT3a#CWavO#DVf1Xu z$E^{(XbiLJP2DC3epci^=h$;QyO2!Bx-dR6e)Xja9andV8=9g_D zV%@gk6%jWOn6egoEn2?(?mc1;(+Py{Stgxr=|7-GtDB8l+L@Mdku^^yk^nJhf4zt+JaF z=k-JseCI}3077E@j!SV}5WY4+r%`M)R38HHVkn2j+Kq<#0Qk(aBWW_R3mlsb`C)>c zdYZH0cVP4T1Xqc#Wf%VcRv<^M858N$G5$Tql-6B@BU2rqrSw(A6E0X9>JL_ja%Qy! zX#}p>h5h6+pu1h1ad)RMAX{mCqAH<< z8!r73f{pCKN;vd4)2)!xgJWsHwm?dE%}iKH7(_T`f=X$2UiweS`7L>jMVu^o{Y3Oo zxA1y8i%}``PT(fzP74;37Yfo_s>ymea|4c~YE$tr^(9IT#JT<+;wQ$Bl zaDO~mcS4c8udZMa>##Aj3n>f@h$M#@TDA;nM{IZm@*~w4DA84VQV@D6lDnhWwtx<* zlh%rCi)okEVB(&Cfm>@~%E%>8!9L1orSV`tz`?GYOWOCQL;p8XOJgR-nhM|L*^D}$ za<+fNGmbTni|nh9YIwUj^p;6*t65>OgHe(suS>owsJSp?X=)NUy>KGCT$F6@fU1CX}qwa+OdDp}QKO;Yh`+tJ8 zQEO#zw55~DW)N}CvtXF3c>Y3H2n@RXlBc>`s^T*(8PVC}d z+q>?fYD9)c<9G<752&u5!HN95P@~g>R-eC7UjDTNIHxg|7qwE8RRTy<@=|&qqJclh zQU~aZ=TUpGhaix{H`!@@%A;(~us8$~Vh}T$@GjUJt^7SODn;raAKpuoEF!|3|3k22 zyM7v#VepvXhZmcKEddIC4*{`~<(^+4vK`d2Nm;nMj3_4ljSIPFVztebkp-&1W#Ugl z@IX47_4)vSaC?NcM>p={kT`cR;}wB`|9ZzUGN;n>SXQZBoKub=ge!~IxBO4ahe7(RHSgsFmyts2l zk4m=*i^c?xJhs}QRsNGL)6qWGVda6gMAB_xuf$EIXVn0Qnk$+N=1 zR;MEc!|xehvwNPh@Wd8wQ93<3s_Rl{cksyAHUvvEvnBtV^oaFtztsSJNAzT{v$avn zGb7E=1b4s3S#rF+rks8a)WBZn-qp>O-i?&HJX!U)e%F0+24Jan@*NMHaR=Tl?f1~> zRoeV${Fzeqk|(kWU19A>!S5WXSi+W|cZF0sReGtdH2Q%fTJcyfXvF$PRozj!$z!&2 zCd!E{)}#{7&4Rtlja-H;sqDcOC^I>qFx)YB(XP{!o_GCYoJqefV>>jXO#6T1vx=>4 zDaJShNDGtk&ykJKS;x)^hp_0pZ^~!_o=t)+AZhJ^Er|#aTAZjl!HU(QrOPQE#;$=P1KGL# zsVGP2!T9@jioUW7w=Fjlo$JW%S;;)JPtO&T2qBNd{5A(Ns?N(%Z(*pfxfa2*t#~g+ z3Xts=29@P(GDg#9#rFBIlP4{YzHUTax;u)|$jKVmsD1W?Q9Y~kJK+R&-nqCyb;O6h zaG@y%-h?5`0+lKZI#6Sh15qjDqzHn#XD*@Us_L$b&CiV43eD8CL;8h7hgAJ}gQXlZ z#mty*P(b4$?OW+ZzLqhfLMK+TWUm#n2U)F*f<8q;G7_(`sXy5IWBYX2>eoHf(QSX? zu1|@g#t%{-{DSYTuwgnZ4ldm%+ph@>yaxkhBjAo@KN!??A#PBx8;!*D?%$f%nTxrO z2UGwW^upStn^_?~^6)?8KzbuKg4;Z^o3Ag!A2iUlN^s%n{}9*z?BR^c!n|kE$5Ic6 z?MefWQ09{7j3RdeNqv=f5hclmI&_{8gree1r6ZlC@V|KbIPwT?{n&aVz#^ag`yY?i z_>ZvpD{EC*?kU_Ci$`{YM3tSaD`MOuK<=k&8Z`B|^W_c)(agR8NoFM!v21Kf&)>+X zt~uYF0|5iFx9>f#7uL;0h)<xETCy>|$uZQ%@r3 zaodvZo#`G>WTTQ3QFsE%o|JH>m9G)238r%1qrunORg{0(*orb+{IQG_N&39U7Hy3& zLBktFr%X_R|3f)cOHh85*_szG%u3ExWfZaRfD&d>=WCao=2L)5W4&Fmp$=GK=f}bt z@Gg)ikn;(H(Ipj*d%kgEG4hia8M&$|i=b(wGwOiOk@S0`-FF~fnqTxC!E`r#S7<=U z0cZzzKd{dSuOkk7A?+4jRu>;@jtYN&Wq5K+YG1l);Prkz!FC9Q={zgxMTx2$x_)e9 zN(#rU8jp_@TqJ}Sbxx$Ic=7K6tBxGWz~Z$L!n|yui9&%-q7;rUi`gExds?L5Y<-mO6xBzH z6pa)1ur#^#R%&4Yymn*!u20r@u0zVQ+qZkt%?=%cbI*+WLFANVG3fqHMooP|QNW6wyg6&0(z)B>`yr<;iUsTUu2S9!*OIe$IO`2+46#4 zUeHU3agWcVxpqcCVa$}ZU4R#jJFMVRNpn#vkFEccqu;WK^x+|K2wQJB1*=t3;EdVz zIN|mW35V!!xUi2y-3i~GO?b!&hfTLS61xz^Yhe-06I3kK-F44mXwo?=5MBWlw@B2` zWJB0h%oRagN_bC1-y>Xd-oBl=n~C*5gOl*RaW*9lRmV#RMQuEwCJ}eOa>}5)|0tOW z<^BwJ&A@+xn#O09><>FA#sr3sg*>l4~jA1piQYo9#g!4Jpnr;FSKDA zltWF|UWlQ>b$&g7k|#eF30sPP$4)Hs_%^7kewEs#JR4m)X1pcU(pZrX(#Vs==F0v5 zDt~_oMLD5Wby69-HBl~O4{fB&Gy}%WhLlU0jJ(8q|EKO(Qh9Y2Wp}@G1;`hwcX|Th zx&P-~gDcXS`ctmh1A5^rJr|0{5}v-HRk~n6FT-&!ZMCV9WWqTC?NB-kU)!+uiIM_f*<+S!*18xafO!IDPSs zovbA1Bij-+nNTQ!NkB!i_@Zs95E1zgyzc~Y0s`BWXzZ0^-f1x0hX=b_<&%;DC45Q} zWyE{vwDC3xZ7v#A7M$rDpPlmXJ3eeMYH@}> zZW`#VH^g>`UM%lSyNF>TLv0$T-gR`G7T5z~(!ro2vIw zP99Wrya#CrpPEWmMWYje9JD;Bg(osW;>!y<5M`m@^I%VyDW|`Mrky5lx z#k&G^bJtk*M@x!O^RPt|P{H9^yl~AAUBzU)Ca9?n6m<=r5Fs~PeXhwOyf$pibIn!4 zLlQoAFC0A#=TuTNWLLh@7{Ay>k(-})Jj^?vD5 zXJn3JMJ!qS*2)+p)kylP?NxVswI%3fM`4cTYFY)TXCVmfww0SlAD3q-OZaD&>#tab z#;mV!Il(+n%`M}I7^TlAUlt#5EpQPV347&Fc@KQJq9N7o z6gGi$`F^At8qkwK*0)RwAN@t;WF-fu{rpvaH8MmE_J6QkiZTqbGiFK`qF!C3HAP(Y zVO;L>aK%LO?9+osz>Lx(BPEiFBO@*I_S5_zjI6$5YMqmC9|AKyZh>7--03(P^f&NY z9aBI^ae!|3QJUANTm)rNXMnhpX0O`e!ZmZBuP3bcV?Lt^W zI#YVj0SB)bg45y-F4ZJVKz>0cZ6<;yoa5&5-m(34xA>Q~9RID8f{k@pJzty$+{$io zj30ag5h4>K#60I|nJpRnT5v5c8Y}s-1k1wx=rbs!LrYpdD{{r8_1h!ZF7AWgi|JVE zD(X#u&YT2{Ie`_9&Wbn?PTpCfI_hV9`G*}k7g8e_nIl;n8}~G}S^tB=x`4%OwT;5! zsxtWfGJhd@p^UJixvX3a#J|PuW7dAaC=NJ21CuF`41?QHdu+*ciX3P8%7`I0^Q{RC z5*$uCbRUvss~p#~8k~;Sdub-VvubP|h@JOuf~$sd2e~yKnShqL$AyXekYR?!-rm`? zS397=E9_Ct7-)^S5AoM`v_o$hOtAn@{+4H~Pen96pOWi5#v&4}G$oqd!btPYGH;a(VccS_6%ks){X@nWDt>RkC4cM$>Jj*=k);Id}@5STuX~uYUyaxGB z8TSpb-T**SQ}w*byZ7A(S>|;;#WwP!sk#Edi}qfyEj_w$cw3i0_NgH1aAu*laCsAIlalCv??G!*?DHBGC(#KC)?3T(U8M*SAsyjvOiDT9rpu!lw zcz>+dr#M*e_YVkglU6kKT}m3uHqmWPI(sqRVWBKL@S%OK@czdg|3kh$`Dnvj>PUoB zf5`ItY}lpTNxqu9(hiSm9k>sHuk}PMq=FgJ-5$2%4rt^?#N3DXsf+(5j#oxc9cJR! z8?X-Bwl}kqk1ssC5X~=Itz`h49YhWTTJfW@Y`viOlS@>d`&6Q-yz=qiMg-CCJrUw_ zv;Pe;RdcV14{rY}ogT-#pHo!dot-Q_9VY-b-JM;-b4@*AS>eU4jz-8>^CVhWro?%b z77m*bUZU(Zj1{(0L$xLSw4P@t>@uP2gR^A>7XU+=gC*Eu zEdxuQXm=#N>()A#1!2>GyfvhKE$1LKXemMpR>Q~1=9!FGb0x@)weRWzlMgho_Bw3j zIUHbvy?{07U~0v@&^&hZHrlIj-&9n7jG zn<8AdL-3oYm-{eQi#NfhN?hpL$o1AbnO`|NmtJf2EKC)}TV{7o2grto64|c9)sj{z zrHeE3iOWfHa&fvGV=tg4y}?WxiAm`tl7*(SidEEb1=~bPL#f6G9SE`hTK|)XS@22p zgvdL*;@s&Y!ws10hwQ6%)Hjl_RZV&8U<}?zrf1#A78uvZoTMJiBRAy6^!5E5I!k7dRFN~V*+}D~( zh`8HZbu zcPcx{R_on{kLMO2An)=@9&+0}YYUDv&mO{Lr>|(6h~b}U*oh0# zB8KDTk>K|c$_ViV8(Z*w!9&4nxi7hy#fZJ%1?tQ9M}9_jfy4Vu?X_`RVz4iW>tCyf z1Wlf5H4DkoE7$@39VRLtSlLhQp@LCfCczwER?`JqLN|TcIaIMqJ-Toqd($zC+6t#k zKhcOu9l!o+iu;-qy4cKQGh})AlYUcEU2_op$CT-eH=&GB7Nt@}dxHzM^GcW#H>WOUBsE zb8*n=t`8|ND%6&H=|rl9f;r6HVb!uLxM6HGiP>;CU2s@bbWlV__MKbLmGv`k=X-&Pkr^@9_DZ*Nq=E&b@f_0kg;XFSJt_n)q?#q=25syL)+x0yP!3 z$B`SsrclbRyRfMy_slNk>krC6BUDCx*K{zmoqrKB6^p;+9%!UNg3Iouy6R0?$@!qB znWb?2lwb+E0-JVpArf;pxFa4u?7dJY1)|>69p&YOv6K3PUi!vo%$A{W?nMTDjYb-p zSPAnMfih9@s(V}r#p#qQ-6FAKpxgLhyo0p2#y2yWTYlkq)K2%p#<(HR=qhhHm_4Kg zV5R@1rkOT;9MMjF0BQi-hu-$1AQ|An#RR=TkQAd29R9xX<#MAA^l%6=h; z2qfPGFDD$V8oRhSgB1>4BR+buPcA6I`_S5<0x8i6XQZjv2K-Z5+ zrNA?Wdgmw&tklj*p$gV##^k+NRaq%-c?dpC!i0Oy=t|-_U_yV$yhxON4B4iR3B`V zQE2GS7JhqhWZ1z(3rX3wf)9`I1?knuFA5iP@t9UIbgVJ4&6lily&5V9Qaj$CFeoWTfQIv0=TX30q=ZPzI?FUSoC zfCqRf{=M~qcp;6i<@^b+q~h~Lglh0%hxEh87-Y{)Hr_JF8wK{lOW7bw$a9sw zyAV>i`DU-dAh1b3az}0ae*2TjIqQxFx2EHKAHGCAvpx8I{5Pi$(?0{JDOwO~!{kD- zje9G2@<)8)8$ntOVtRZ*uJl>U1K#UI3u3Icp~By=Igg?nL@sdHlHXCg+y_M+qy7FI(?q`yBAl@B5SAwawQAbU;eD>%@2vk=g&nkL+ zMQnAsMa)drXVJmyi|D}By~jG_hdhbL&F}+nms~o!120SK28`XT3W%XFqY_opI4YjY z+Vq*2~V4yUx)_kv$%qqAqOJxw8|) zpJlkOVt+78T+RW@*p-xyl=maDk>F;K=oPi{hWjzBQ@CNnce99(X_I#D!~P-Yi0xy= zBxz36?)o{vLEZAp6<0@84?qR<@EkwW81qDTer~qqo%NrhuK`BuBGo-rkR**fWuKlm z@yNC?t>DrrS6rU)Nsg|e>?faz`J011gm45s+8=WXB0fkgP5*whR9<~2t=n?=86`f( zGU*#?li==iqa^8f zX+=4W7Kv5ZrEMy$+NFVUJ4J?6c;I@>EzqU$DE&#Z{r#mg2NnLF{w#zwmRt4p(=b~@ z1xz*svynl>XBGzu$H{7uE|G-ukV0WRmp?Empa-e2qD#32#)GF_7)=UX4g1ZX)#3pU z;12Qms%#H1S}m5mV-jXUY{@ArDu=<9{ZmQu9NKZtKirE`C9avsx^trJ^xl9lV5HpbRkUNO*_!vO7h>MhpDtAD-y&n=mD~Z;2-AxPYA9_R6%> zC&gWSMOfMLsU9+N5whpqb+m}398!F+C)`=6srL%&5&-7)hAUrK*A=1uswdaEO1c)+IUzW&N3|r+1{z+gJEK&OV}Ul%Ey{{ z&cz5~f!}e{tE@@D)u%4uhqvJgqC9|z$0r_Y0~V#3d7A5_%5Lm~*!Q5swWU6Bz>w;C zA2#7b@ym-J{`N0HT*eC)HfuAClT~|Uf$BQi*-cj+xwc8&CEaZ^;b-hyOtNq+Z|I#ZseRVW^ zZU3Py+XQs+KtWB(wKzRPR9yyanpsFK^F4LOPuhMR)90gP+4^-Ikw4yiJk`L8bRxXb zFld6J^%Spo4a)UoKNa80>UOq8wRq<6%w3sHgq`cVC z%TMebR!XeTKgb=QF28bJJKA|q+)&z+W+R}3b=Z|wsC<620^CEdqY^!Gr85s;Qtgt? z=KuLsm?`d&x94HPOJ6zWoDBGm_0ZllVZ_w!KKbZ+@RH|S{kUo;7RnK=F)&RTiBJdk z+4JwU#$FCL3+}TPx(S<` zgy0%Qx(%f%%cHQ<^7zk=u~2*Jj;hK}{QpaFJ81>H0PKl75x;yf{W>sOE5_i4w*SJrYZtye8*{tp{HgdX?la-0V?*Q2 z8e2md(^`5EV*1z2@$?yJfHiQ+>sFF{+QE4R12x?`g~2=sh>u=z%NrcY*RQhO8Fo5i%4$ zn(1BjtG=gLnn^h1@1C&dKj~GQW0`O&o#HF^trAzW5gCf=JKIHeqAi0FT$;IwE*Tj- zv8^Oa>7IIxI-mXxbz~nyws$JVL1e&tfocADb-^Vow+lb?dc%!9w+|I(u6}T{XfN#w zB-l9vccP-{5y)-j(w!?qnd@7bYZydrHNV6)z5B=6xm%PhCV*IZvqgLM$npSv*9%<87YP~iK0Dh^c z)=FQSwhvWo#xFHUd!oyEHl?MX9X(*rYaiYK{T$%jS(UgN;UoM%bTPb8Pw6Mj2|POF z={H8j!{e2c{3_MaJ`nRZ2NB^ZL9%sif-`z~xv#UKd}MW;_KJV^LcYX*k$gXt_Z0Jb zN!E02IgrIL8|y@PMXlT|bf9ensfYfT$TnlxEi*TijJ$XsbUm z-Mqrz)GYkkd?lA^X6qyLi`8aIO5K`<%!^jf68Z)cF{kW3q!`zQXYDaUb9>X@SY=Kl z$@68OcM;wdhmwikQ|P8CKk_^)#)pDh?TweuR2jAMhIW=@endWmckztFB&jL+}`@}%D~_}@{9qyEx!n@ zjocA4s$0ZROW7sJC63n9r@GnIPIbp}Hy#+7N}39~3da%4Lg1uVzNj(>+jF_`+}Lw~^Bp%+^>)7WiTfohf1~pI(z1`~ z!Bk!Es%MZi?vTiBS!hLqcPb~8aSByLRgv>elg6NQJa{ z?=cJfA#MFgJ7t~Wmqwuh)<1}>>iUrXg|{_Z3r*wAahb4X#C!s4+HXYsoHIKEI;PtU zMveweNLn=H&7gf|!mM*+eJg~drK|P^>y0S@*%n84C50q%mV3#oZwOM~i) zkNiE5&;U%-8ZzyMvr3O(>~+o}G81+@4C!e26|N7jIWHRW7FC@H^hcuMNu<%yF_F%q zjem$JXMIz(eD0OiH0Xn1kYq)hjp0?}Wg|)XnxlV#+n@&*;m9l7Zwzm(J*S;AhP7Yh zMpb@BL7M=&9NLuFCrtVV16iP$vNz2MIio2XK*Hhry~t_Qy~V^&+&Hh>eALJ_@x(&e z<5hk$<^r{P^(?$$-a8y^CLP*u*+7}9aGwk@kLT&yYd8)KPC3rg)RhOh(Q&pDaZG9R zs3+U;x~X8uFluDmqYCn2pvAR4U4exUy-0X2UGqtqdAd1$fb5qWU4^Y}%wPM*DgyT5 zaoD8&$Kz&7mvDbaru3%|{oB;{SM{EIw_O*`DT8?E@#QzNE77?tu-Rq-DDT?0WM7qI zqd^@3U7n}mY*1_OP+C__Rb{Z?_2dh})}!)W5#k=~GvmzA)`xY+hJw5AUn~q&hp(9J zYB4MwOqta&N|~qr0?53s$qCHlF*t2NqMgvmkWa4E0GSY1Dy;5ww7(yXx^!3qC)6|dM~kdV#LIogQ7ENrg|N*;$P4yvIg}LMiwjUlmB{+< zL^-asUDxw`;Vp{OvvmXqm6Cj4#u24@8Uc^en0Ae_bUU#3g^h&sF8W^2lD2=9HQuky zy<0%RM=beh@(GE{^ZBUO*1gjoP<2*&Ts28~*GS3sibv@eTw@pM(tBe&RN#w~n1jz< z4k2&C#D56KXLh_d9!an#Vf`VHakN_?{WwWB=egVw(h6d)330oOffOw|GriItG46n_u7Ix(j0(|0nPgCDYp zEXw7^WLIUCj2Q|r>6b9~6PkIP#lPg&WYs^1!20J8FIHT&MfAm$=kW&C-BxU zP3`ZKZ5%)usm$gXoBjqSWZut7foaCx=%@BICoUL2Qo&Y+!hu(|MQvdxkAuQk1XH!> z$LZ^=&-&TXpanC2ndWg0J;ycN#Hh3=y`?93;jQu_Iv+H54{dl%AvjtP(VdepW9>J7 zA`f@pxYyOH4}HdmM0RSs=g|oP3j6fco$y{`(HuvX`;(xNnGm=#sN}&Kt1t{+uot)u z@p_Ourm*6de{)2}{YntkS&RQ!833Ng39+khK#SVB_(YaC8FWjrC(sGPo-_A#H zH=(RZ2#hqH1tPB1$|mCCWaq@G21(6%`dr^R8e#?}E_q~(j9V**Z)XhDq0V$o&b&?h z)YCMDkD5E!5mRw90erHzCf$DRh?M*P!eH&GChJ#@nTr?TnOKQ|RoicU#s{4;Hy(rJ z%co=QwU0IjwOXhBU3+9>%)1-|Q z|1`vTT0+5^ZUpEzq+PmBQoPy;YisaWxx=f&1-lqp5@QW6aa_oX;WYAbW?6vqNLjGYR(2K#Z${7Gdgrq!m!8M<( zOJdl%?!p$h`v2pY?a8~i6PREf!oYxRyOte*z}nh42ce1E+A>=t^Y>7);W-Ck(mHr` ziV-&lLhX5*0s7)wBW%10iskI7!B$jFd6;cndIZ-_$o}{R*a>7!ZfN+b?Zi6$()R$b zl>`gc%NQg85YJT6Sgj}6ADHQuPIUhHxTkEKTPhulY92Mm4*3e)f!A1Tw=SUqR2Kjx zi_7u@3MhNng#u*{E-4Ghh-0=80KJXk-f8)!2=MCU*OMPae6vlplepoayVk~?KY#wB z0%Oq!0G`Up1PAp7`Jy_3l9~SAX{qjanyl*1nZHZnnARls0&~N7ZZ=TH>L#uo75Dcb zlUgK$$v=eZTJ`7gU}F?@Bx(mF^of$f&~)VJz`B<{B}bIuCMMb}`!H3zosDD$eyMp= zjrrGiFD{wI50tZ0-aq(GUh47uo?f_;t`pS4!ms~<^S6`E8+s+q-|eX2H3OdZ^^ETE z1@rXnB?Y87{3-3l;riOPo5g*WnVzX;VP{|FOvDdNl!ggSLN8am*<z1hj{(xD_SD347Zeh;{Mz28X z(D)e^)k+;i-iR|;$)x4|;E<|UDg#j8N$_UmBOJ01B_GlnpB~+_+nUu9n=2{%=f~Y* zp4~>@!6yT#q2Z++^(SYoKxi1}KiXhtnsflF&c~zT!4%@94h&zgVf~+al7%MYCii^8 zLn{D7>vbAuB8M%^4V!@N;*0#7XE-}ouMn?|HrQ|Sk{6cPn-iurhpe^bxW=WS{0<0#QwQ3^Ss z2BW&`2-G1|r%iG$fwhyjdH<+c>w~qcbHkPCH*(J$67_@0L#J1)6!&dzSf%Tm$Mq4$ zuxO-wN;5X9lA~H_uXGYWnvCmJ^59O?M{kMkGW$PjT-U1hKL?Lah&cC!$_TW`Zrz2y zSg_k3bdBW2L65a%;7|`m?VrxN@@?f>%=)-RTR{>xsskR$3i-U5v+%g0Z;A_>&FHJ? zYG$P@ICr*Yz&QVkW?QIEmxK8>NGGrLX#?}vJBOfu4sttx&Dn>YAFp?u@x1nnVOy>P z+ebaLu8`3UV|F?k0_*Hx!QxMvX|weokFgMY(3*Q=A+T*H23X?+Jwv!?MQ_R&biAJ*>6F`qb3LsRCqR=fed z!VAoZ1#}Q_0!o0u^-}!EAB$VtGF@l-&V?Ox0#b$PSrRI4_`+MWT=5Z^!Ggs=PF=yx z!@dIg3Utwp+XJq?{{@*FTceg+Zy_GBrq=^h)L`Fg)3?OV%aG6Duia{bsXNEZ9BiQ$ z4o>GBn%hfUUDC|(mvLNQ_3*}r_1;?B6v5OA+Xvs1POi&%rE@Yny5KYO8)w$vY)FVT zmjM|c{?-v?PXxCxAKN&$pDIhpj#hnG3cRjus8oG`f*3iNF9547WdPIn$`IlQ09tSW zu=Q78=B8Qgn-mS@H9gX+Z{5bYBty5hUm?!61&@>sH18K&{}Cvf(_9T(LB4>bg2{K; zq7^h{vmub^O-^5Akkm&MZpPVGuP|}neCfn&?s}Kq)LuXCx@_}sP;4zf(sp?Q^3rOm zx52#o;^xkz;cSK{&xBg-0NE3%auQWn(Fg#6ZS=O}Iop4--ukFBhRo|J21rek1VN(t z9SclYZ`e1%V&DTO#ftUOW1?vMs`)6^JhJu1HR)Y}yC2~6e{JeYV%M7p^A4k)4P{e! zk0?BhZoJ3hF;iiwp2PF=PK$lTSxPo)b$pPa#F!F}df)UvTQS-vq?20iPTR4Nqc7P<67^XzLT`7L^EMHRT#QxV3 z`=IDWU!(h;IERlNR*~Ba0gY-N+;C1bk>X!{m|c3wp0shlD|sHq8S3`xM*_WgZU}tFS?b^8As#zWoH=S9S%cF6$8NAR9BDySkz?yEvG4I6ygsaujdII z$lZF#?MIY2-%fP4mF^_n?A5#534zRa6A6Zvp(wjpu)!MCU)(Awef5TwvSxO{c+eY} zk<9d(WhY(YXSG)HGc1&q=bi_wN-93G5nify=Ue2zWKU!^uK*?Old-U@6Xw{@#o8T1 zE;&29@IbZ=prDA2;+!;!Io;h9&u4lXZ^>@WftWi`d;YxL)?I+mz2~#a5|+Ut!&|}L*CV|M~3OII&(-b8H^3v-INQRgk;0Eo1CY=w4;*Q zU#(%GZKI0$mMt`#)7yz}II$2!i|?W}A3>gRSkaq++fIkonc*)%m{d)(e$W<~1?0~k z4=oz}#;yUBu0Pt019`e)Li8=DXBbk#me#!zn3_Dk!P{Z}fye?z=<;l{cpkT&6u>u{ z;)@{u8>(>>MVU3K2B97TORJIwhb&$3{cB}Z)a_4RKV*Mn_Xn50Zz+u^l>CFJ=+^b~ zJs(#qw4jRHgcie%kF)@UO640O)DkZxwAP4q;(oq)spgC?uO&kK2dY<}_h)MBy|%!- z5pk&wAwVZlu=O;1@=TofFMK9W^!Tm!=n6zw-E#3q)QzMZ%b;qwp5#wH^Vj+tz3jrn zIlG7sNgd8e9**}Tq4&97%p&t+0ahUJQWPQKCoNlkC9ZkanJu_g?IKDAWldg+rf8|& zZ_%_m`3(2+L!GCEgi17jdF*vO-p-iuLP(cnk+R@w{GMulgL4|mRp1?#eeHP_kDu= zguT*o(S-+{FNlvOl2s`)98hCf@bz4NGw;wxa-P)fXvJpYSFw=f;Z2H*khm(Uq2!#_ z(+cVh0)AVN79sI`UkA>9<9FAu&?;?S9)1>Mt6JY+Q`H|)>Uq9wzk2J6=(j+vFW1~^ z9HMdKdUJYA#ZGc>Mr%8HYg^7GIBmv2`lmL&7Z=)8!q7^2`}yB>2WayRAzEA|-%C_! zW*7Ii-Bu=T+pYLxo%t7U%kEb4M$I_$BY90t+BD~Z7XESJ1@M;T4-_=1yt0vq!V%&n`_-vLc`6^2gY_BvknZV)xmaNu1QCK#1tW z(3)@>zf-Z~Y38nDDGVtk8Uj%>B=et=3o_%*;s5^Y9Fz%1v3?xTySvyoH(0!u{Oghe zk>F0qee7=K0*PE^*L;bC)Ce+MRXG4D7JjmZex+6sM7WKU#~1=({2ZvC$5>rJ)G@fH z1)aFbmN4kra78^n^h*ei4^)5um_cyj8z1I~Z zCsnK^V=Ew0Ri8d3w~R#7@28yO9ER5J4|H+O1_^|D@Zyj>{|kNE)b9MLqDlOaAf&|Q z(DI;m$+3{y)<0~X7~E4Ji^=vR6# z7q{SsPA9fu!zMB66RA5OO^UPF4C_hGxUVHx@g>rhY`CKn zit5{n50P4>7&Hz15DVql;5Na)V3Xt9FJK;%fm$c;^7~HQu>3m6QdM9wLytStYS0Gy z!?u6PiH5$6w)*ch1crwm`V}(c|3-!j`klhLEqPs~_)x6oye;i0iHT`lWoZyp>14b45N?{XM=V z@+XCuDD^Lk#(!T9!owyr!xj2!jc_aGHoHm&#PYP8hYeTG{b0X;2 z{Ne-xl`w`9CjV;i^6$6mb9~8!M9Ji_e=ofDpjQ;~gujls?#i~&Ks6idLuyqELYBVN ztn~UZf%P9BE3Fmh-@?+!4|lm33@{D~=y6zl<$eGipK56%A zbDI{j@horA!c~k~Zfr_f{lkgttNEQR9>l!(HB5_eUh+Qp#jjMdG=IT>!7p@b z<5z1To83~RpY}$-M6&~G#1L`!yNlIzU-K&x*slMX2HK*nQ=Wfk!zuTz{@VF)i!jL6 zdL2Q48h>b6-)Hm$Nlice9^pY$VyUJ zzbw>4<@bYYFGKeD<}=0`x*z?%o`Nbu?GC6}ELiX)-b%g;5A96X*Z6t1W=HEL5;mnI zRqYj%t{CTrdDDiAtiHyF>JTK!<5sRWU29G!+dy2mtbmR`4X7^R=;*&3^(2=5DRHu% z9$Xy62k2iSZ@4*W*H%zSJD|4{h09)&8LN8`!u+-kwARa-wR4)nWqK#$`^aR2pkoN4 z>(kaFsodO6Lpkggs9Z4S;l7ga5^Z&wGWC}he*LVQS`1x-YOWn_oBBv@VeMRLp|qiz z&jGPmDnDXMg3#1oZ?%QUjfft6Xm*m?j>A_l5h%il1i`0@S`*-!97lAFz(3FTTvoKA zo`8xbE8k4bio`n6JfeT!2R$7M?+ZZ=oq0WAiuZ-cIU#p_taoJRZoI>&+4L_JI46Qb zSczy2Yx(qd&eo?ZXw`;;G^dAVQ4r$W=XU$r`XBQJaEUXjkVEFb^>mM+uFyU`()$&2 zewyv{R{eVicOWB^+Uj`26*(=X%l77b0DWBCm_@Qn8ehi)EWrB9QPwb9!(JaGbkkBHWALIyd|`u zY$4CIrVKU;TqZuWx(*9}p35>^5sZW!A8r_ufV0?XkOS&@7C2Yu^M zG~QqJNT_9tFY7huUJRNxw*8puPyCyC3QkOR3vere_0ruipfWSY~@ zmaXn-Lq;;Sr7pr&Rf9fpJ!zAs_X)VJLo>cQCS1bVLJsf<`Fy7=k~+q+-wItWF(N8N zj}`1B6-pyO#3JLwG;GSx>+^`-pGoBa;_apE)X{VV|cp4Oo6w= zvd*7>cYqxjnl`oG9}_qe3*@c;V*cs^FH^>gN- zT61NKCNnbythU@%i^|ebDQ=~#Y_lRmL=GL@R!cjWVG1^Dnwq$nQ&WV_rpU+gfSLlP zf=56(pYPAUzsLQ%@B4B8<--p?@B%)(-`D$fJzv*VPhwR#qOC?}rC<)}v5z))9)v&j zSF#qreHQfn4pmVMExqP(fp!8)s*6)D8pS?M5d|neX*)l|85RqbG5#^G=at+~t}=EE zM^L-o`)ny|rivmYC^UIfv9^R-6wHO*qH=1EXf^TDM@zUd_JK0^iOl;(Y5b;Yp%vvK z48edXiDmhyZB0J#?!Z(+YCHpB+u>qeprqc#SXd2pVFJ5&x2Jlv!ri9TJ97|eDtLFp zg4q=h5&|GCLOOPC6Es1^=q8la_?7;-`;tr_>Vv8F_EqikvB1fEa8D=tti zRb}~SWbl9T{h5->Or-}C(^@8}bS~QB_&DCIp{$6{VH9~7!g0*35$rscvXyq31qik* zr<$S#w)a!{p;OE3f72bhd|8kt?~agDUVwTQuDj#kp4G&`kHehPhZ|vp=Q}f8D7jCa zuBNCPcp;6-6*WkY@(-24cGs*-43m_x8k5V!l0yrf>y&=)YuTW-f}lh^$0ORa ziHe>IHmE#4@p&d_{`)VWk6~0et-A9Z4ibj3OkA#Xns&{e6o|jYc_d>MdzH2mF=3AZ z`({Rm=eXZ&6o<-3jnWAK@c5eg+w71TqY)`kUJ`->V~DUq6BjY3>8-mn9?y3(U~ zt6aSV_q~L#dLYK_?UsC$s$GQU*tDMk@wosEAuyB#OjcA&K04MdSjyun>)G1s=52+NxO>vDVMU7hAMBas3Ko&eCiTKCwKo;O8RG|!L`zMXDt@blfY0G> z^k+1=Y*;$EgYIoPK=RAUC;H-Chi8USy~Bv|{8zt>vnQ^Q9_E$!`+r}_#pgbai+pJ5 z4Q0~vyu*lN@Gu$BlsC^QJ1UETvDsOODqwOp-PUGOlCwk$CP>ymLa zdkxao=ZLU5dwP)A&%dU{%B4uJ-E+zhG?n4QEg%}+_7qJ6p9W~I9i0fEyV4A<_M0FT zcQ(|kn-gI8B6w7h8d8mLS3-yHBg}ONCe+oDT zExep#N(f0k5?G!Rfpq(V{2&@OfRtG{v6_;W-aCM1zc!m;xPPYrwrF-LDzmE-hA|Ue z<*Ov$%9Fc8@ef8Fr#*qL%S@3dK!Tv16bkYNsOa5qBx-97fyZu>r}0P>P`M zVc)J0|HCb588#n`0aH}-JIf9?i~vq1qgR3sWmEgLd0nZrRBgTzJqDI2BM8b>&f+*( zjJ%0sGxjiaCc7?IIvNc=)8?5z&!dOdDK>L(FimrMTdY%6nbP%{yO)`{l z*tXbu>WDe}66VxW9vZ;}Sx+$+*TwUV4V7e5qu}cWc)46E^dW7{op_sHFtYFfpqy7l ztrGQ+iZ>9_z}k%VfFZQEx-S>xToeqLGLt3Q~R=K}d))?u2RHWcsp<82R$R8s#Tjt*(X#eTeRe z=*2^spA2rB2)SFv&OQX(ZfgAMr%K83X`2Omw+u7wsbY2Enf7xu1lM~w`9rJ7{Bfw` ze5mHK1F%C!8Aju5g+Hbs#TpZ2S-Rk9_to=J$HdEL(eLU7&ucSaPCpIn=>GaFIk*<( zPA&Upd%b^?a~S1LXDv2N{hvVXFvH*8YFa$HhS~|8;vaj|J8MtGETRUO_P6>>uH&aO zb!8F5)?wo(y8I=EVh=-s%WmR*iDMU_!w0EYVo5e_~Y zcKrBF`@~h1<7c)SeJ)ddW}=6&R*Z4x&E5N=X0VGAf1En)i2I?b#<6Y$PxTk$K)MQc zvmxQDGtMFButWnM-eztnZZ@PQpBaiUfvre{#b!R2#&$me=4I$4{JaBMG1cn& zqz{$K)Y37`S!&fI3}g798Jjm(fWun!=AW5HEM;D&mUW=wyax$?CaCfIz_-aME1OzQ zpV^o+;RM^M6OYo{wS-D_?bk@ISu@~wo`VQD?z+Hs261U@7qi`dn( zkvCFj2Hw;XnZJmKcicyQbEf2PcvGYC_p*kBzPfShtFs(@l5iu{=&3K+v+A7&l&%Hx zs9mSGcdJu%pLTksDShI_BL3VWDToJJ46%vz>e?B`7aJ~9X3M9QPV-^_-qx`~Dn<;{ z6b}VnY`eb!l-3X*C3?xTLgnI+a#eQv`cA-B_Lb|sOf_zPbz(ht=k%pKkHU~PhJ-ejmpprx;I&+DWFb~lW+t%rY66SxJNo0Alu zNAcnlYhiPx&ER9m)_9Q(y@1VBBfb&&d8gO+L^USji#7yv8BnV1p+gT?%6uPQ!5N>C zv$I-s@UM+XMAlBnUqwwPi>^|c&x$0 z=IexMXJINY=XA6#!p3uNnz=#O``Z3aSUf(33v7imUPnR`WU+F>quocK@c#=p3JIJ1 zEL@|F1d6!2vEKx3p7LVAz!`Bjp9DMroLqT79zhq{s{Vy0Q0-aWdEm#arNTP)N7|@F z*ucm;zqqA%}J6wmA=IP*{UU+1)lXE<2H zB^78D@fg2pGtUf0RmGJS9A}f6MJc*e)H7nI@`f{KF0`4=CDpR_Sd^Kn11$wSWtsar z4v!+ed*BT0v1kxnCq^mFZ!-6fq~~kBw7n_Y2l|71onW!UqD=pnrJRcYXvW51+*_Lfvq5O~aT`D6DqHH+9h1~@iH4*anh z312Qu<~ED@L*O9q1|U1osic@*J;vybB5~&SMfn2>WgEcboUgH1WEyvOpwad?oOdJ-b9z z^VjCs)*=6+S$Yp^XKZW5-s_0rhESFj(7_pVq(Ny+9Ws{7K z9VEUC?h7_W4Cj9_)5*+vABv`545b$l&NHxf=Trffk=w~=WB}NiV3WHjQB)s5?OkeH z<$b#{2Npl+A0yiKHn~p!GFDVsEz2gp51PJjEGYz=Gd^+8ON@uqS}2*-$1X07!Q^b`ih7%P*EuqlDcgB~+J&;<(VzC~?4*XYN%$Rx0O-GoXT1HOe8S z68roGF>mi~$w2ro}S z3JLgq7b#wgFjN@*SXn|6sq>h+m-^vSA)i<>=MBU+s`jO0GDfKABTRM4{k5GbBX7d> zr4;Uux0aUkiK3V58i-YZVd18zx&#<3*$;}I&+ZM-u$F3Cz*-AaLtC>5kFgVx_%$G5 zdVx9DGP`f&-Fn(o;Z%=9Tsu^ktVRsP+ zt@O;w;&n5vJ|3{)god&JO@xRi@u`>6h!1a5(zA+~Ab)bzswPxWHxe}mQ%@u(?N4VJ zfYWnPW9dM7*?yE^BGJnt!5?v<=R?j~w;V41cNV5EOJ4brE&>eBI1p@_S~CNi8rvHm z`S4v!t^2((lx=p;s!qH?Gz|}PU8F2sm}TLduqiTL0#Gv&wdVl%^MtuJ^wL0%A(24o zbX+xj&e0{p90F(A*{h5h32tAeyA={c zg-DzQg%Bp+`tjctj89QQ8+#-ber4TSVOz$U3>U{^pF$rdcYhzR*zw$X$}`Q0UswVx z3hguOLG^h3q`W}~cd}33TDqISb)tA7^%x$I(_eACIHbOgJ%n~W!Li#S>+yP8_ z!)|z0{aLzYb7+h6B^Y6=h$O$J0H4}93(6VuXr?k3BP@Q*CfB1&-E&TfYsFQdw&dii zB4td%T)2~Va<2v??Q4c?=VxFlN79zjpEFg zhiW=_Gv=AAFimwhj>0upmu5N1S#*nzUjSwyY&tTM+8J6xs zmW;Q~K-{%vmLLq>e1thW{j;i@Z>u=|wQ|Z+Rw#~AH(OjCg`zcp;q%UvoM{h}n}epVA z_Zc3J!Xr#=%e3^&l(%ET7hsxGvav!eL0#;V7NWPkpwGb!1x&_yr)aswx81|}a8h7Y z?Z~(FBsw{aCSxKrGO6NZAfS(9LI|m+WqOBbC(O1d`2AopP7|#@ zp{CLT!16(hyFX)fso?ObIy4; zAy(Pr^t4}qvJ^bsdlTMOF7gw zUJpfhJg4)%O8fbY)~In#Z30OLSpK_Z*R_13O?zQ#QfU?=n2iZ#%9w!fi)~eLSS`iz z{wqI;e?|hbk0ZjC{QZjaEbgMj!7x~7Rs*^bPM!hEZm($9qmdXP-w5;_PQql=jgIB% zR|47kXr<@m2$$72n(BAQWh|pcToPGw|7ib z;@e#behU~K8x9kwwQm22j@_a@RuA!iEmZO6n!y7oEAO9V*rOU{YJUlyOVw2&OeF3P zPDNz=m*r|{by))XtRsnOq2RP`meuFEErHAw8rEJ=0N>R6jskCEPvI@YEU9q#Oqdv| z7=?Fdg%-t!(g6GI^n%>I&*Gl*tICui(@AU&<&Y0B%<@I*FT1VqGOfkD@aIyJj7>fs zLaexh7!{=pkW;xCs(=M`>)aA(Afbqw9eRSH!+UC^cP3xe*jf2+iQAdR;YcHXN6RwU z+ZF1cL0W%FU{xkz82}9|hnHHfP!WbzJ*oF`hKj}#W%i}qy-ezC8L=m8v0}d0Npv$o zgKv;9&F4Vg@-U|0E=L&JEg-rXZ>QtBvnC6^yV~} zTeW7EheXCq?`ih`iRi|-jv18Y>UudVMKaLR2wW)u?!A9aCo(Dh=3eJ`fGXX8L+JkX zu8|x}^)vKM;`^=TKgf_kZB}R+I9={f0lm*&vQHX=0Jl#sY%#$G48=PYBX>g0vVQZM zP%!BEH<;AJuM&V%t!;pSzFQOs&T0Q9&4re!Z4~7mf-=rHCUVYbuulFo(l!Q;fy2rK zZXfx($E%dEj?G$3rfDEO#7oYmCh=qx{S<|5&A!ARKU@%^B>b%`T;II4#o#B=ts;~c z@O4Af`=OLlnb~RR59LUU3Cq6z`qHZe*EU@ln1_t#gEd68{4;7Fwxg!Nt4W0#B<>0Ofi>C zm8OYjZ_fDCV=NsN@PF_lhb0*z8W<_g%+jwe?b5E=fmepMBK2!t9_8?x8 zRgbhT`UqV@=msvY*?scrNAX~-TnbFx=3?ZnL><#?4+enj5z?=X{Dmagdq3T+9x9T} zk1%@7zX>WVuywaYf8SWT4DP3%T=ucDiVtD z&>9Gl1%Q5J<{}XJl)o)jJ3EyrKG3EGOd?*TnxbAhS?OMzoJz|vY+JRXp7_gVeRZN@ zYa6jYK(%H(mK0bz;|g3r0xtIs?a$DjjYn zQOcXx=M{?D+}9&_KCsMx62Aq#7EP@gdmu2*4Z8Qfx(L8H#ekn#G+0@{{@wd5+^$RR z&XQ@Rt8}s52SYUMEck#^-S5q$2gDyy?tx8vS=o06#?}Z7E{1s>K|7odUSSIz%L&(! zz{jmM{WUkji%S2}mi{|-v(E}B`*+$u0`Bvm!W39%5AVsEcd zUuKpb1ktqj;71{pLmq&_enmIDYBs>OXG-e}+_1YoYTdH)SH~wkC`O|4ZZgOH(Aw^; zpJU4e8Jj?sWw#n0M!wX6@?*bm4xqCov-1>7j~O$TO)j)bkNLkUaXcjiXo&!6?L?NM=o>w$R=2iHEuvu_ zHu{u*=QL2~IgP0<-3;g9R^P(s)Q4Xnt#85H5N#PTT786%BSq;FBI`|s)QhD0DJ4)iM4c}hyh`og zX4viabWb|D43WpHetC%LfLm7zji2u*H|}hGW|>(FCIZH)(TZJq+uE(Ixj+sP{SNbG zK{Z{BgPNsUpyJawr(=w@v-5`cv>4 znA_BIf`f;K1zxR|t`!ddPu$kp_0ZIBv!VD3ZeaxMgfU~DgyNigu1%HdKZY)o2Mu@K z7_N44ZhxEW3I8m)<(9o{mY6e*lS3M?sfc0fW5flNXY~oMhAdJyC}4J1=XKY~pxf_Q zlkX7y%>hsYf)4AheNXwh@ix);*0da}q?BFG9ZZK}s3y4FhQ6kyY24Hw2oSRIjGlW$ z#P^c-yc0daW`4@=^0Zg{9zM)4sX9->7Co}XHYc|D8efGw$d6Efer^vZ0Lr;wtAsw14^Kbq4rPLB|QkR?F=aa22CW`xso# z?;qo^=(CCW+R|W}D#{ja+QxLwvz!>5|K!|GONUwl>BsU6?=z_qIv*w9#ZdT zJ3eK>?q$EEE31c2hQ_y1XRjQxkH)$Fs<^6HD~z(s7!!%k24*Y3oMaect(`vfL_n-r zcT@Qc`4f?APMUK`BTMb=d~huGv2mpZDT6UKg`pT3PT2ZNN8 z_JsYRR@lN_xUGYPixakn$qewJ#MuZ*CsPBnnDKP&1;ZQSLv(Tu5X&3oNe(pUs%`_i zxt4HI3z&+I7^UlCqhWIXW3@L7$W3wk8ha`Lkk(k6mdE>M`#~*+ZxYc2DXi`EMOv}y zzA;$qV#`yK|sO;8`6-RzM3U+-3$6%b1%bLjrCxPbDcLC%Fp;NO}4Af>EvH5 z4l=Y)dpQM`i(AHG0}P&~7WXEexYF`geJJk`{NwRE;q3)&r&8ViLCSHs!cf{obNE_0 zR6>)=r>=9M!tY~_BX(9j?7}ooJ5H=9L<^ykg9~7<#gGa*fhtmbYd@3?HNCn6FdekT z96EQnW84(R0;!LAfwfbjK!=1y)4kOp{?s40KbGp*O%dNl!9YoaTLw`|a;C3n_$mn*DsiKF _*=jPe=& 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%0DbW(3zQ=uSMxO2p5ou;Pe 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 ZP5r^A8P#Lu5cu=;m)pOn*qC(czXA5hwY>lU literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-120.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-120.png new file mode 100644 index 0000000000000000000000000000000000000000..6c379e7a8dc498120baecc49cfad55a8abf85dd8 GIT binary patch literal 14411 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 KcQCgcWB&(esGNiV literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-121.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-121.png new file mode 100644 index 0000000000000000000000000000000000000000..6c379e7a8dc498120baecc49cfad55a8abf85dd8 GIT binary patch literal 14411 zcmXwAXIPU>uuTF9U8Ofgq?Z5zq=_^YH8hc4LXj>tbRm>b6e)uAs&qw4=#qdykS1Mf z5CWof0s%#cg5b?}pL>72d7u50-FJ89%*>gyiN;3vSQz;j0RR9C{Qeyi>ifxm4?TqX ztLCCSMSTGSP43+SV8$E2u- zp;|LI`r*k{a?QH+S@!F%Un6_$Oeu5}71!eSZs~tBk#*lqDU`-8*~s$m7s-WFTKE6) zkcun(;9qkv>0PTw`KP|??qrl_cm45#6#-7rS243ks_3bhA&{X2hoFh0)DF^!9M(2y zKf#`RsctH*TDE<$VzE-)X-RTPbjdDwXo;O?Dcb#5R7E&Z zgO4P??Z3^iJvhrw9FRXZ5>F#t^;Wniq?UVC5^ZmhxfGN(S2OZpnZ-{d{@U~93 z;l1arrVFBbImdnBr55|y$9ks~xlWzXz1$1;>Ac)OT!1H33Qs-U=BZ9zn98vx+<L-;k#gsQifpQng@%As^8D>K+#HUn2e- zP_sm@N7*5ZFSl#{Th*4QU(x|Uy6 zV_#~9izx)ib^28=syHS^^k1c*0}E5C;6HyfVLH|lbbi?CxRS%*8O_YCVrL`H1c80j zprJ_iulZG<)%SOIm+?f1az%*B|K72M$*UG8pC7iY2xnVktq$NlGU>XTfB~7+*D)Q5 zeKkK#LoGM27Q5KVuP6;TuDk(4$m=psjzma$P}Qp|a>KEOCmRU=-dYknLXbV~0fR3D zMpm8Lk34m7!QmsZlrmI=w!bxe-hp&(xz^Mzb@t+yRzx{>!?(V3C2C58+-3PQzvCgr7uvDn%eGrsc@J*eXybn42~tEr{-&)uyL1V_s({ z!yi!Yh7WiV&+dfhymu$=@f0Bw#y?5@dXh}`$$q{6>XS!di`_zxbEmsk8##14Y@%XO z9kzYpg#oU-+?3p~5O+J1j9;lh;i9KH=cVbLP3=#A{VrKXxp)j;x%xUl{OH`&c^cyp zv~Y!gX5z>QceZ3o)=oRWqM^BFo?L4}7-7oVwDEx{+>TkP4^{6p{6by>BC7UvRu;wp{>mhN3t+8LSD zB!?UsV$XVGMelEY{#3Cj{zRSjOwF3~z-C}++OVnb#Gg{uMY}b0!a(tEuEhm^-19C* zqB@QaX-ox>iQ2h({le2^kAGQfVo> zDet(iRa4+{{o&RNa#uX2P{xNX>LOQiQt#h$zH(ULKUjHd`%Z19NxB*I)p!5$F2TKK z-`y8s1W7D*ixKB#CTSivhVy*4Qj=6)`n+wcel2G|eH}!3*P~Ci1^wk*IxTSe@pbSd z{LfV))inlA=(ev`MrU+!k`~vCab6YsB`_|1f*zs2-TnvV1`eU^m*Z+LPKanGpJ{(I zELX3QYZw0oo}W|v7D5@xm<9b|?dfW>@x=-uCj!PoNotLhbG=CUwWKzNjpJi@=v6Xy zDriWff|8dUWk6A${Ul9Kv=?=;LViO7KE+brOOoe|+TX5WRNxa*%bMaE!fg>IRAZJg z&m{lx#JN50Xt}*0xt9?#_|qSI*VlSMdN27X<5yFQ!wtbJwdr0t{|m1-2b7qQZxMmn zRE$V7ACe*5mC8t}G&O zt4CaCt5WdBIVTu=ZrlwQjobUKgL4H&!{_v3*H;?=wi!neFLg5=MKf!;Mc8UxGIV3J z4Vwbkq54hFdvpyIF{i(Z5+d~A<^d%%>mt^W>l|NxS~}yuW~vVa#B^A{?5@e_^K9K! zqh%(FIIf5RzjDwF#KN1RM7$y`_I&%-#yqdSOg=Bw&hSV#6j$7WC7(M36L?!(Cktt> zj6~k$O7hZtgSD;BLm~E*t(E+Fn7W`V3lns|OIBWUe3tEzvCz*j7qg78#w$NbpZQ8J zG{o_PtIc45nYc;&2jw|bl!>$?35Wt|DB&do=$O+;*U5{@4gvQj4BLI0te_MNV4nsJ zq5Zz}DL(z^%~1@2F;8~N6CKG7KiCqQ{9e|$LX$N4)@5>RGyBK;yVlob!-J{uLmWt> z!g2t-7&_3~A3IdGEmjGH_+D@%5yY~=fAi@^t2qBV`rcLYspmEyP^I`N91qG*#4+IU z;M(9cP<#0={a zzYYqm5p=LU%s;(xX1jE;PDL?J7mhu?qShD<81UdW?-sGDl?eeH&ws7lsy<{D__Vm=d`@mzt8L@zI`!{&*Kj&}WQCo0Qj^4}N``W&J%rr{uat|{@~)>2b}Otd9` zzXHDBKjWxKfIT5C)Uc!Ap*3PLh&F%M8kt#c^_Y6P0nBZ}@inI&K4@nqG2wCZEYa0e z7MNYB%fRS!PGm9n8fjL+Gkdilh997eO+hS`9OJtD+bW}pOD1*mH7FIP4Z{Ee1%mEG z83D#OUt1=3TOFJUG!WfD|1BV?_o9<*v|_& zDsLtmkF+el+pGb)<^9ZCdCx@l?-7M;rrbv1o7K3AAUs%Cfbxie6bMS-rBQBx5S++b z^is$+rk{qMynz?Kg){tCiv44ipt+`F?el_7TBD83ioA`tMTuJgi~=XT61yLxuOft3 zs4KYYc(;LP<-Xfz>{jHFDaQ8>+=`NNHJNHOK@-pYx13`=k%>KXbjtYUaCX^nbG((P z_Sh}MKI?&8;3&O0TWuow67_qp2(OaeS`DOl5c_XNv;rrFMYYP;wok(&>Rga42Nylq z(J>u4yK39716TK-KwwA~r0?Gs3R~u@^&B?)dU!=?02LKpxX457WZKSRiLjR}2lg6T zQX@Xpgo>Yd9sd-R7c_|<1Emt1>6lgHJkuTzrRHCEjL82sC_;pl-l9g+P{yAZXV!b1 zx}{(CE$!WI;t@6Znx5=-pAB1j1R?;wa?`jSOBADwnwKk37l2w>bV!@OV@y_phrlR| zl-3F??k?7&7W>F$t``iwF{QfqO@I@@R*Nh+7zWaDF^^UN;1OULI~~BtW-lpTPp}cO zLS|bloOuc&8{x>OSu!*P3aaut$(0-mcGUS`_;PybaCovNg3OC&_N@S>5(DRAsV25t zr-Gb>gw~;1Fu~~|=0+VK-}4e~a_MN!0EpH-*}6<2s-GSq4}rc+02=BaHIG(wNm?2F zk(cgU)0y*(;g39m&TYUsEpM)V2hj>wf@!NjyCp4rm=jsm*ry$t)h7`%U6 z%>+W}ILgsWeGK5mwM#UllQYS=0?#>PIz<}N1u$IR)(5h|nU^w|(zXTA(U(d8Ur2n` z@WTx4s69?@F%Ms+d3`{0nbk2eF-YzTQaR2|HZQ-zBF2Yxt2fpgNdRGu(IcjSd%Qsa z)s|6XUi=aF-&$jj#%oquCY-&x8#yr@p$0iszQzirpsh5t_|i3|PE)5Q^p}!*e6qMD zP{h43E_*J=t#BH2qd>Yqw!m#r){A;Z)}{q+^>SVzF;;Y5%hV?m@WXJUh3}l!l7emh z3j$sVw4**vjvEpAY$D?dm$wr{OgVvWW&gC#TD-KRRir<;d>$3y{VyEZP(3X|2#B4L zhIlt#muzwt+l>~)f8|=?bgXoF?~QD<-$40c&PVrplGfkXv%BDz#g=69uqJ{)h{RU< zus_9nHC}yQWm|xiHm-TW?CAahti{i^FvGwM0URLJf4_e6&EE%sBvoWJl*BRdYI#NGB|Bqx59@~te^TPYs(jR@L9=`Ns)^)EI;KfwZkqDxxxAH zlf|`=n3FuG@9eH1OQHKy(^HBq{p{y)nzEM)lW6rQ%5>qFJ7nVpHZQN*O=lmbmd-nk z4cBXYba&E*MY;4AlU*OTCs1p_Yjep{%PBL#iAN^2xz2lO!P?>5Gc7eFCtS)&ooG{+ zNsnZ5(DV1VUgk}6YMp%#-JQ;R2UT7N~R)c3j}#V(hIS(;Ur%5rLNC}gxy#;(bg~0FG6MWS*0NIRt}tQBP!cU8RAfGEHfnQ z$e`oj(V{NJwd4G(O&`}YHpRiK#YN!t9$ONm=AqQgJe}W*s^K{4P z+at_JKGp(EYgV_x2O?H+Bl8NqX^V8?e+40Dh>@J340y%;c!AvYoa0e!W#wz2zq9OByIaG!+P&KI=hnBvDhqKzk3#{5wq?NIKmdVWqbBe`Yrcuf-AI0%9 z+uxL>{H<-5acSqb42mq-J-NgCQV8GYMB{ztkTb+JH-R<6dAg;3*27QUqL>5S>lE7h zrM~#%%YrN%t=v+we=bZf=@re0IyGrBaI;49nz%H?c99?}yWo{fP=v|n=e=^mBjO|AR*5One7{%C9ybNvm!QaTMUU?@uMvfS2qBu zP1_=lBmsHtDIJR?9z$3>S{j_^BjwG>(s2*R1$BJvR4I&lI&btbm4?_*hbBS~pf8+66S;l%! z+gLkSOka}!nEi=$$WIg##v-E?#K?yG4sclV#4FYMPlq7Dm1 z33E!D_e$sGt+Zg7&B-uaX2ZMaaX$tAu;67SX@SGQDqG~e@rjNQ`?OH@GT(RZ$mJtF zFkxiu&31=qz$7R<0s6-V=Q@z(XFl+uPRk}MD(>~-8(0u~hO~Q`z)~4uU&@keOsuYq zh5L#A1)g!Lc2D4CE$AbCEU~Yh3ybK}%ZuMrOmq zHJe1qcXy=f63xUo;}aiB%t<<@V;!A#jzFL6O9yS_T<4&L-eEN|8Mm1qDu{l{5>V7+ zKJi0L>SmZ%h$O#4iMTZY zU0oAxqL8J&0T|ZtH)Kd@`mXVG&+?nmd{<@W0GQfE$2UKf0q$}D?%aDX0lXk(>@`Pz zoDj;bS;aICjvu0i6!Rm{Wg906qD*6!k_pyPIks^`uGxXUB=)hRBGS20j|Ok>$qz8z z$qYMvatJ(*;|K8`NBWP|CA9_XVe)80v1q>seTEp-E$*+l0Ohz=G#j`qj#9_Z+`*?!ZU}=>E|~hI}$eRUTBL0QCMDl)5;~QDqC=# zr?OdNX#vZGC5@+38_>z{u-AZ-5mv+Zj|2S=*0r{LLI@+ABxx2c^IEFhAcg+P-u9UX&$*6AFeq`TvkJTb?*9b=i%%Vw{XQ;>G%QN;TCvL@zSa%CZFfT?w#Y3D zeYZ3=BjL0Uf!&lzZbkdoSCK9_ILWZx-7OV4LF3Ho_)N5SzK}+hz}H-MzIp+-(OYiX z^@)dKL6hX2d(|l~Lj&s#{8I)9?b0N@mN0390=!T$RbXo=?7CfZ)Q}Vn6IK`c>|(RA z-HWrgZp1$-gntxTWFmkj+58F||5uY*G;8$|{la>S_%+q{+fRh?kLO6hgwMBtzjb%i z7-4fGog>r(9!Yx$J*I06b|G*Buq2k?bJUxqt^rAh-Vbaha?@!IAtACfaFUOm4{9nx(3{y?Ik@ zYsU<9dp3ao`K?i?Ob?kb0ma(1iW`mL(lqV0LSHee{{C3!)`{006<~SwI+qLaP9R~9 zANV>A@D_MmyV6sd6Y=gJPgf2t)$}7DqW`TV=G3?)Wd!CpQSi942EPU!01X>+t}Xy~GK$I)G_-YQPhIII2V zU0Hzf7oF);as)5$@rcPx@25%Y(fCh9o&>|p`;Y>jey5%*;HEEYt@dd3*`+Tg3fb>M zd!nv}44H1mD%{yf%{Q&%CPElON9mpx*03TpD^51TEGsvIPmK90s(*%2Hb^ArepW{) zD;~s8V_$Ow$_sN~gEl*o_^kheWuueniXa!O=n~!#1NYd;~ymI70C9<~a8G$Ij54pRc zu~Kp5_TSVqmQn8<&W7IjhdMB;vPdXY*~faKzch@c{-!^e4GrzAAIB}ZeqouO+w0-` zUBZ*+uCq`gXjyGLNmSdnskG71l);Y0+KOY*{hqc!>0o-_+!+hp)^c>D20(5dAU0{^ zwF}1N0#x3Qbwu@l3$PBPRUv4srZbW`@5|x7jXH0qP9;Z85?7B_$-Ws-`!ro^d_|QL zdr|>UmR^a(=D1UErY80T?RDa|lnlseZHh`%^&;n0Rv5%{4+X@G&`s9m&E6*R<=Fbp z&^;6#0VBs^z0&o4du8-rwI*Y1cP_0EAoZFn7mutta$id5I(&5gvG3EZPWgS-+su8x zTEPqBvHo=D7kH1?Smm99-i3$Rw^+VGX77U+Z-^1~3{QHcRllN}FGN%ZEp6T}aPe9P zW|qwlb&bPATLOpWz-Rs9mRDiw2lE}hJJC(f84}6OG6DVARb`ugDSX%2cr5B3-+(R8mJ@Sznx4`!qo6S_gUA`$(aoB&ap~~+u8Z2 zbAi*sh2Mp=xv*)>;46(ojI>4D410|r(+FO77(kZCUz@3_a-VT)Rs1a5*;ViCX$K5_ zA-Txuc#15$D3a71L4SoU`bmN&T2m*I@=BNT`g+CS8ECiX7~1|2U#%hhDs!9y#aUJy zg8rU=srhPt63o_cvhfFa&tdL>slx)_X`(aLT0oZVTzeoMW+GdlctO=b>fPw%bp{QI zht{fp-u1s%!(|reHqn87TLy9h&p4IMGl&*>;hT-lqYR8wFz;_b_Vb z9Zm#;w$$#l^@d8#ha7iwWHXZolnPM;N`wKaCsv8Z1rnD-kdDK}Mn4^0gVKZ+9y^VG z={pdSiMtFXl#X8NH&}K^5b@e=1&7w&ER28^IOmJNA<>RrBOlc3{lW^-7e0B?b6T;k*m0jdm?Rr1mBV2@^XBj?+&JX zxNd>ljXEX$ha|bc4T>^ex`XN^Icn~1DNmsIx*ai=7i*vmzX@OwgvpA8=qPq^xoO2-t$C}RHg^|$TPX2{@X@g6 zX~krYDCMu5iKzU-|(Fi&FjjKw>1)3|@9392JZ7fRC6PX=#L068zMneRq>DXX)3Izr~1k zCOjvI8HVteCH}>Hq2WS&uy~pwOH`y$zP9o?yl{sbp>qSf#Q{qVzkM@R`%SL_yC|KC z;-nzn?76KR9`WzwM@Eh8LyESsL#{2^9I?mt**<2E!eEwlrCSVJuMZDp{(R{t@=MdH zRyX1*Xscl6B#@;HFCN=aO+I^2RZZC?@z@;_Ea2M{> zRBX;kV#y<&wPgt&F?ci+8&^O%yH6y>Q~d}1=*hO7BV>b>BtyubSLd#jp+yp1?g(Jj zmlwnQZKHYllI)O(9bQpSkT<*BmgA!mp1GT=qUV;G`#OgaK+C-2=aGmpb)LFqg}|QL z+LHIH;WQg3`GRdZcNsV=_(MHlG$xkhd3)i<_R}DvM#Pc#XJlBA8j2@#$x_GD? zcE~-l?0G5$Zqr=c0}4{f^`RVi)sw&7TB-ligS#}jR)%R;THC2S1(+cv{@d%*(`M?7 zBcoO^G4NZc4*?&Gi%}KP!=3XwFV=~K^d1BDNXH$hX>4dWz%=hLxm`@|2IU(G^v?If z!9aDHPI6nj@Q*x{bNCC)=fUv(tf-CTc4lO20s|4c!inJpBRf%CpJjv7Ayl#gBw*v$ zYzab|JfJ_ghTH1AV%o*r%ML1nusy1SPwJkS0^fVNP2r;dna?bR`Q3-le7S#fW4ZfZ z_?Pa@uwep>$S+mC-@Snz7OKuqEz z&=W8s3zR!6?&A|M(L~%3i{Wy-OKzGgd`beojk)z;0Npk-GWOo^Pj5PI(Ca);#pa@- zuc&%{e9je?A}{>V96vg+{t^u4Kdpx09WgHq8ryh%$`RUeWBplSAdnwHGdfic0%!;e zs;$guislW1^At&Hb00j6eQmfdcZx%BN%NBc$MNf`R?5vlRV*{ohdD^bpMX$gnEmuA z*2_%gU7apE+e1DnH)ssF^64aFfrDoG9naqiHfXBSro6agg5X|NTZL-KGgG)Sp#B2@ zaRp$X>~)Ns{U=Ihi}tG7v_p|%`56G>b-7RDz}ISxA21;wG3QNV)SAyd_FJNh;vb90 zJT1F8`bFn5XKxQj(W3@`T}yhNlE=vD+FVxYVvSJA#wll-QCfXA3>}nH^dC1Kj;9J{zy4{JA2a|7_;Fc04>Qw24B4@j}k7-k| z-VoPB@hs|fHvhe%uKX;m-mZY*Vv&HAET@ATwL>R?oto#4L*_YmWZRl-;5mJNWt%GN zhmOpZl5oOForZcC0OA3&uRXFi;0uenUIY4ajk#0$ZQECX;;ig9+wm*PMTP#Z0V72Z z94b%%zbGn~bJ2bOTIvXVC(CSEYjp?WhHxg-p3eFyUs!7(ef?$qYlM$(wtxGoS(~^; zceJeZi+&Qb%jeB2{Ikg6tbL#-9h>9T`-|5IHN`zjp)F9Xrl_quIA6(qshz-HW4UwN z2Q*6VzWyyX*`-pBeuqocI{!3a!fJCwCTT4E;=KY>g=?P8-*4hIJk^r-k?))io+XbX zuv-NRIP3n&0vnu5qSfei!7}yu`Hy;`Rn5XX`*Yj!jcsrY!JE;k1KvnD<|MovYg<3~&BHty zu$lujFmbh3M6$q=S(v6)1Od792b#cTS^N-Tdvz{l6sr+DNxFHl-=>xYzs-#%(dL~) z(VhAiR>B|Ey*MO~KE^p~xC8A}Ir6E!{o13Q)=Mz$jJ-p1Q;Zqf!Lz^!d|$M%*Jm2z zWQ?(~Fep~Z0xEN#kxxmM<*O5WCo5;VmX@r5H%bi|ZQj`oN+*+P6OlrN>7-2m}xS&E8nNqo{73Bt+_%=>Wq6V+0CSFJ3lrX!CWM>rO+-(N|wd zG}>c!NN9{02&Rmm3R`s763WhxCpCjZ*Ip;qq=VhRh2sMT-LsTJ-`5r0f#F5WS~|lo z#_+Eg6pE`2 zpJQPj>j?d7_iLS5qMlSac$u#sck8l-Gey!Spz=ib*46E=&Z|n_{eK>%$<0O z!8-m41^)o< zZM&@3s#|N4RP6^WwbHIy&W*PpW7I;MT$H8ec}FatNf$FM-0!;lFlqj!n^U- zhTkMzBjKW+pJS&E68$ zlor}IKh*wma1&6zbo*Jl+ZiA}kyZRo+rS-2is!m-0;F8@I!kz}?gnG1cM=4~tPr^r z61gp#YxWcgui|+|d+>(`$%nY8%EGZAEND*COm5HyrlRm2MaRQ>?^Fp=4SVkH8ZOdi z&&qmV3V)t_EDT612^3s?x4|1-%WobS0iKJGm~61>`fCjBf|i!a8HNNZRkGF|gV$M` z7ImAFa_a9oJm0;A^@t1mIr8#MXbT5Wl%9d&BY1gk8$~fd^PBRLsVAL%$V4W7>A#G9 zoa4p*Tfmq3i6Df?NhK(OZhjUzd?N8E@BwS&3d(uJfbk_9cxW64wX|SfD?bU-`(si& zT0MD<#s{SO7WsOHJ1Ow*g{`lNOKDHz6O{eiGf5Dml^{*VZ`<0u4{Zue${7m3u$6kR zFa#eK@v$|B?TLzDcB6lg_z^>QeKoqal|0$qT5J zDGbph!+A2G!(iqfnllZoh~pDxk(DQOcxd=}B~`P+z@PfgT)znc1yX>`g$gXP!S`;i zTr#1r5d#z*3$U*oZ=Z>n_*m5mnil7K)@yrPd^gAVa_j@kfJ%RcNjK-bE;lZe@ECLs zDaGi@&onrN)8{e5_WS@@`oGw#aR zL-SZ!o#W=)vH2G<6M4?~dIy13&mHrukPk;ZQPGT^Jk4i%owz{#(hq z>X9+mnv7zsx3M954Y?*HY7N-n7;n`XYn>OdVmD@ii9gTpf73HYH@9-43T=4*EXh^5 zw$HI_*>7*AQv?Bl@tD3T9=TLe-@x66p!QX@-Gou9T}AQwAHWAM={~GUgDZPnb6s`# zV0}19D<}Ygw&s0I$s}{;4bF5|M(oS?^m}G z7#m_4C2jjQ$xI0BqNAk0?(eT31Z%24tVNXu)G2wgP^aheYFsejsvBgTAL&@Vj0N%8 zVCte=VlJbt-JBV++ZN_U75%kUo_`xeUJ{P?lII=)lS#3}8s&Xh1>hpnftUQsb*wj9 z&gzj*Bl@X67^&b3+I0o0%3`m?q7XR=e8Amp&OB_kj4Jg36LY0)E4L?>!Jf&k!Y0%Xc z{&KAb+@Q0niBzY-zPsf7)PH8p4g;O4Z7F>~g<4=6gF&YDFKO%5f2?^EG|JTNNFpIWJzfouM9Y+*S#ptjU0|3$GpW393r5#Y@eNR{w(Q5$o16?3`42|{>% z0c13@Dnn?+Lo^G*1d>;gu*+qIC9um=<#_yV?KMDMh|;tk*6uY;JJx@$b?YBVO>y%E z`1E;gewP>Dj5N^8p9^o%nqBr9-k@fYtl%hI_1KY>YozQ~F?MOsj z>m7zG_1T3RpPg}g-z+!nI=%<`ygire+|U{9O|8)}r1ARbS-0GD1)O`a_G%IWESs<3 ziz|)U6PZk<;i_!*{X%W*A0OKIDwLKLGZBklbKY;&^x|4+8o)Ucsmy6S&dr-&NPxFkS*F^y2VuV1Q~9zLm+N!wDc@fcr8(Dj zW;#npZod;cX*0|0b&@Q^kB5iw1F}o+L35sr*k2pS;0^f|$J1za*}daJfZ*UxR*fry zSN_IRo<8lMrK_iK(e{9RI*OcgI)O>k|i$h zo&82T^!jx(N)C=HhGm7JiiTKwc4Xt6ueH>@Z)Q98=69P~+;luL_`v29Y9nZx47I13 zfqyRzcKQoZ`A2_?+opp>UfzX=?jjFCSN$uDOi^Zj`57O~d@38nTdz`EOA-oq2?;-c zV_g_uzZ6y69D!ciIbdsWJ4+!d{hzpD4!XI^?U_trey2OSF60(}X?6Jdq~x8e+>@NQ z%I#ytUVI9OIi0ixX}m#!qTbt4el4iAZaQ~Pb?q{KLIhr~x_BoidA95Pb(d=_v0{_B zc{C@@K~^@jdQ=d8*M(*CNM|^y@$>ziDB7K*SxML)C{gukv!#WG$b69tWUJ?4521T7 z!w#Ryc)5&OGkYrLMy>2vmE-HwQm48sx{A*Xx&zPab`NfI+?0RR_`Fj`IQ(MA-+6lF zH=A!KjZb{F`lOiq5ST>kYkh0LaG5!h{ln1bPm+-%e*dj{s2kc5>N@84Gh)7FcRA5q z`&mIcVl7?Ix(0F08p>dlE^zh5>NlG^Y*}LJX@Zj9s~A*Lp1x<|qO*3Lka@ZIV)5V! zZ(#36(wV>Fec6IR*ZUN;-k5TC)ej*50i8;sR3>d#_K2>T4+~{YD7lf|GKI(2yXxUB z&YCX05<0H4l$Tc~olk>Ug-xSO^K9lG1WV)uSkOAja;HlQXGl89I00xTS<33YHsMc( zWYUymaG~Hod#wGo8UmPfR8HX=*-fjnCUqIk_(**~_Q2bxoP*X-->ly}U2)Rduf?J}B--~GVsx7|XDOz{QFv7Wr(M_GSD(g5p4@n@x z*?q2A=Zh+`_njjU3O_<*hGy2;qzZ4+->drAB`Z&0gNW`j&#~p6{dgA)z?)~x z{2D~&hv~37;vPpHz&+rVI@jysd0R`L3bo&W@U#`u^4~H9^Gnlu(Qsyfl2CO10bsAt!Lw-UGgk7#oA|lCt3=Efyb%w=7Ikcg$Fl{ zWlx1{#bKBM;yvr8Y$A1ZJZ+`7q-8i)Y|f&Wo^^>h8`>AQuseGcudAZ4ame1SB?^FdlWG^6;(WanSU zX08rCL~<)YOr7jy4yxQN=Jr)x$|VGdI;611^)I~Hzw4k>-E`KnFzl7(NGK+|N&XN9+CjarLD!bNlu4})@f>5Um01z;ckl@gw z_+)i4ePuk<{Vc))6^0e4?W3Q4yi{JygMg7*H@kPwwQPAdH};BzKTt0K0^qtv KcQCgcWB&(esGNiV literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-152.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-152.png new file mode 100644 index 0000000000000000000000000000000000000000..b0daa9625239f3a6d707de0242cb01a05e7471a5 GIT binary patch literal 20310 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 LV{sUcE1C8mdgn?; literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-167.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-167.png new file mode 100644 index 0000000000000000000000000000000000000000..269714384add7e2f2764b17ec0d3ffc013015741 GIT binary patch literal 22905 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 literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-180.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-180.png new file mode 100644 index 0000000000000000000000000000000000000000..ab1243bf05d62c977485480687ad7007e1fb14db GIT binary patch literal 25198 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 literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-20.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-20.png new file mode 100644 index 0000000000000000000000000000000000000000..6a7215fd673a5961ea8c66403a37917e2f0622aa GIT binary patch literal 1035 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 literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-76.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-76.png new file mode 100644 index 0000000000000000000000000000000000000000..184c532793841a605a98c83dd982e2638946cbc6 GIT binary patch literal 7976 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 literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-80.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-80.png new file mode 100644 index 0000000000000000000000000000000000000000..3f2ac1e8a8909c95a321f9dd6133fd40aa32bca5 GIT binary patch literal 8661 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 V#s(@jyZIFZ&{Wk`!92E({2%FsW?ujR literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-81.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-81.png new file mode 100644 index 0000000000000000000000000000000000000000..3f2ac1e8a8909c95a321f9dd6133fd40aa32bca5 GIT binary patch literal 8661 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 V#s(@jyZIFZ&{Wk`!92E({2%FsW?ujR literal 0 HcmV?d00001 diff --git a/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-87.png b/Prototype/Prototype/Assets.xcassets/AppIcon.appiconset/Icon-87.png new file mode 100644 index 0000000000000000000000000000000000000000..e5531a45789b7aa8066a2e3dffc686f0cef162e6 GIT binary patch literal 9124 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 literal 0 HcmV?d00001 From 3316b0e47561f2e423adfbf2dc1365fa33d607fc Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:13:57 +0200 Subject: [PATCH 010/125] Make `EssentialFEed` and `EssentialFeedTests` targets support macOS and iOS since they're platform-independent (can run on any platform) --- .../EssentialFeed.xcodeproj/project.pbxproj | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 0be8578..d1f84fe 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -674,7 +674,10 @@ PRODUCT_BUNDLE_IDENTIFIER = com.essentialdeveloper.EssentialFeed; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx"; + SUPPORTS_MACCATALYST = NO; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + TARGETED_DEVICE_FAMILY = 1; }; name = Debug; }; @@ -704,6 +707,9 @@ PRODUCT_BUNDLE_IDENTIFIER = com.essentialdeveloper.EssentialFeed; PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx"; + SUPPORTS_MACCATALYST = NO; + TARGETED_DEVICE_FAMILY = 1; }; name = Release; }; @@ -724,8 +730,11 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.essentialdeveloper.EssentialFeedTests; PRODUCT_NAME = "$(TARGET_NAME)"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx"; + SUPPORTS_MACCATALYST = NO; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; }; name = Debug; }; @@ -746,7 +755,10 @@ ); PRODUCT_BUNDLE_IDENTIFIER = com.essentialdeveloper.EssentialFeedTests; PRODUCT_NAME = "$(TARGET_NAME)"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx"; + SUPPORTS_MACCATALYST = NO; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; }; name = Release; }; From 423ce9d7c2924ead3ef59a471d82fcbcd2541a17 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:18:26 +0200 Subject: [PATCH 011/125] Make the `EssentialFeedAPIEndToEndTests`target support macOS and iOS since it's platform-independent (can run on any platform) --- .../EssentialFeed.xcodeproj/project.pbxproj | 8 +++ .../EssentialFeedAPIEndToEndTests.xcscheme | 60 +++++++++++++++++++ .../EssentialFeedAPIEndToEndTests.xctestplan | 34 +++++++++++ 3 files changed, 102 insertions(+) create mode 100644 EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedAPIEndToEndTests.xcscheme create mode 100644 EssentialFeed/EssentialFeedAPIEndToEndTests.xctestplan diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index d1f84fe..fb61b7d 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -83,6 +83,7 @@ 40B975482D9EA7A2009652B5 /* LocalFeedImage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalFeedImage.swift; sourceTree = ""; }; 40B9754A2D9EC05C009652B5 /* LoadFeedFromCacheUseCaseTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoadFeedFromCacheUseCaseTests.swift; sourceTree = ""; }; 40B9754D2D9EC15A009652B5 /* FeedStoreSpy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedStoreSpy.swift; sourceTree = ""; }; + 40D5EE1E2DA7C3EE00D344B3 /* EssentialFeedAPIEndToEndTests.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = EssentialFeedAPIEndToEndTests.xctestplan; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ @@ -161,6 +162,7 @@ 080EDEE721B6DA7E00813479 = { isa = PBXGroup; children = ( + 40D5EE1E2DA7C3EE00D344B3 /* EssentialFeedAPIEndToEndTests.xctestplan */, 40412A542DA6750C004677C4 /* EssentialFeedCacheIntegrationTests.xctestplan */, 080EDEF321B6DA7E00813479 /* EssentialFeed */, 080EDEFE21B6DA7E00813479 /* EssentialFeedTests */, @@ -815,9 +817,12 @@ MARKETING_VERSION = 1.0; PRODUCT_BUNDLE_IDENTIFIER = lat.cristian.EssentialFeedAPIEndToEndTests; PRODUCT_NAME = "$(TARGET_NAME)"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx"; + SUPPORTS_MACCATALYST = NO; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; SWIFT_EMIT_LOC_STRINGS = NO; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; }; name = Debug; }; @@ -835,8 +840,11 @@ MARKETING_VERSION = 1.0; PRODUCT_BUNDLE_IDENTIFIER = lat.cristian.EssentialFeedAPIEndToEndTests; PRODUCT_NAME = "$(TARGET_NAME)"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx"; + SUPPORTS_MACCATALYST = NO; SWIFT_EMIT_LOC_STRINGS = NO; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; }; name = Release; }; diff --git a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedAPIEndToEndTests.xcscheme b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedAPIEndToEndTests.xcscheme new file mode 100644 index 0000000..b306f76 --- /dev/null +++ b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedAPIEndToEndTests.xcscheme @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/EssentialFeed/EssentialFeedAPIEndToEndTests.xctestplan b/EssentialFeed/EssentialFeedAPIEndToEndTests.xctestplan new file mode 100644 index 0000000..60940a9 --- /dev/null +++ b/EssentialFeed/EssentialFeedAPIEndToEndTests.xctestplan @@ -0,0 +1,34 @@ +{ + "configurations" : [ + { + "id" : "0C2FB2CF-3441-414C-81D3-783B644B7E7A", + "name" : "Test Scheme Action", + "options" : { + + } + } + ], + "defaultOptions" : { + "codeCoverage" : { + "targets" : [ + { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "080EDEF021B6DA7E00813479", + "name" : "EssentialFeed" + } + ] + }, + "testExecutionOrdering" : "random" + }, + "testTargets" : [ + { + "parallelizable" : true, + "target" : { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "40B002442CF9E9DB0058D3E0", + "name" : "EssentialFeedAPIEndToEndTests" + } + } + ], + "version" : 1 +} From 48dc739839044828f0255cb468b95d549f1059fe Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:19:58 +0200 Subject: [PATCH 012/125] Make `EssentialFeedCacheIntegrationTests` support macOS and iOS platforms as its content is platform-agnostic and we should be able to run it in iOS platforms --- EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index fb61b7d..8212000 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -778,9 +778,12 @@ MARKETING_VERSION = 1.0; PRODUCT_BUNDLE_IDENTIFIER = me.crisfe.EssentialFeedCacheIntegrationTests; PRODUCT_NAME = "$(TARGET_NAME)"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx"; + SUPPORTS_MACCATALYST = NO; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; SWIFT_EMIT_LOC_STRINGS = NO; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; }; name = Debug; }; @@ -798,8 +801,11 @@ MARKETING_VERSION = 1.0; PRODUCT_BUNDLE_IDENTIFIER = me.crisfe.EssentialFeedCacheIntegrationTests; PRODUCT_NAME = "$(TARGET_NAME)"; + SUPPORTED_PLATFORMS = "iphoneos iphonesimulator macosx"; + SUPPORTS_MACCATALYST = NO; SWIFT_EMIT_LOC_STRINGS = NO; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 1; }; name = Release; }; From 8e576aad7e6861fd8e3e7387a2b549b9530f880b Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:33:39 +0200 Subject: [PATCH 013/125] Add `EssentialFeediOS` framework (prod and test) targets for iOS platform-specific components --- .../EssentialFeed.xcodeproj/project.pbxproj | 265 ++++++++++++++++++ .../xcschemes/EssentialFeediOS.xcscheme | 85 ++++++ .../EssentialFeediOS.xctestplan | 34 +++ 3 files changed, 384 insertions(+) create mode 100644 EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeediOS.xcscheme create mode 100644 EssentialFeed/EssentialFeediOSTests/EssentialFeediOS.xctestplan diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 8212000..6115577 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -30,6 +30,7 @@ 40B975492D9EA7A2009652B5 /* LocalFeedImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40B975482D9EA7A2009652B5 /* LocalFeedImage.swift */; }; 40B9754B2D9EC061009652B5 /* LoadFeedFromCacheUseCaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40B9754A2D9EC05C009652B5 /* LoadFeedFromCacheUseCaseTests.swift */; }; 40B9754E2D9EC15A009652B5 /* FeedStoreSpy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40B9754D2D9EC15A009652B5 /* FeedStoreSpy.swift */; }; + 40D5EE2C2DA7C5F100D344B3 /* EssentialFeediOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 40D5EE242DA7C5F100D344B3 /* EssentialFeediOS.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -54,6 +55,13 @@ remoteGlobalIDString = 080EDEF021B6DA7E00813479; remoteInfo = EssentialFeed; }; + 40D5EE2D2DA7C5F100D344B3 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 080EDEE821B6DA7E00813479 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 40D5EE232DA7C5F100D344B3; + remoteInfo = EssentialFeediOS; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ @@ -84,6 +92,8 @@ 40B9754A2D9EC05C009652B5 /* LoadFeedFromCacheUseCaseTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoadFeedFromCacheUseCaseTests.swift; sourceTree = ""; }; 40B9754D2D9EC15A009652B5 /* FeedStoreSpy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedStoreSpy.swift; sourceTree = ""; }; 40D5EE1E2DA7C3EE00D344B3 /* EssentialFeedAPIEndToEndTests.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = EssentialFeedAPIEndToEndTests.xctestplan; sourceTree = ""; }; + 40D5EE242DA7C5F100D344B3 /* EssentialFeediOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = EssentialFeediOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 40D5EE2B2DA7C5F100D344B3 /* EssentialFeediOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = EssentialFeediOSTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */ @@ -122,6 +132,8 @@ 40B002462CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = EssentialFeedAPIEndToEndTests; sourceTree = ""; }; 40B9753D2D9E7CB2009652B5 /* Helpers */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40B975402D9E7CB2009652B5 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 40412A562DA678BE004677C4 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = Helpers; sourceTree = ""; }; 40C57D7A2CF7C16E00518522 /* FeedApi */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40C57D7D2CF7C19100518522 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = FeedApi; sourceTree = ""; }; + 40D5EE252DA7C5F100D344B3 /* EssentialFeediOS */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = EssentialFeediOS; sourceTree = ""; }; + 40D5EE2F2DA7C5F100D344B3 /* EssentialFeediOSTests */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = EssentialFeediOSTests; sourceTree = ""; }; /* End PBXFileSystemSynchronizedRootGroup section */ /* Begin PBXFrameworksBuildPhase section */ @@ -156,6 +168,21 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 40D5EE212DA7C5F100D344B3 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 40D5EE282DA7C5F100D344B3 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 40D5EE2C2DA7C5F100D344B3 /* EssentialFeediOS.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ @@ -168,6 +195,8 @@ 080EDEFE21B6DA7E00813479 /* EssentialFeedTests */, 40B002462CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests */, 40412A4B2DA67465004677C4 /* EssentialFeedCacheIntegrationTests */, + 40D5EE252DA7C5F100D344B3 /* EssentialFeediOS */, + 40D5EE2F2DA7C5F100D344B3 /* EssentialFeediOSTests */, 080EDEF221B6DA7E00813479 /* Products */, ); sourceTree = ""; @@ -179,6 +208,8 @@ 080EDEFA21B6DA7E00813479 /* EssentialFeedTests.xctest */, 40B002452CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests.xctest */, 40412A4A2DA67465004677C4 /* EssentialFeedCacheIntegrationTests.xctest */, + 40D5EE242DA7C5F100D344B3 /* EssentialFeediOS.framework */, + 40D5EE2B2DA7C5F100D344B3 /* EssentialFeediOSTests.xctest */, ); name = Products; sourceTree = ""; @@ -279,6 +310,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 40D5EE1F2DA7C5F100D344B3 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ @@ -368,6 +406,52 @@ productReference = 40B002452CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests.xctest */; productType = "com.apple.product-type.bundle.unit-test"; }; + 40D5EE232DA7C5F100D344B3 /* EssentialFeediOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 40D5EE342DA7C5F100D344B3 /* Build configuration list for PBXNativeTarget "EssentialFeediOS" */; + buildPhases = ( + 40D5EE1F2DA7C5F100D344B3 /* Headers */, + 40D5EE202DA7C5F100D344B3 /* Sources */, + 40D5EE212DA7C5F100D344B3 /* Frameworks */, + 40D5EE222DA7C5F100D344B3 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + fileSystemSynchronizedGroups = ( + 40D5EE252DA7C5F100D344B3 /* EssentialFeediOS */, + ); + name = EssentialFeediOS; + packageProductDependencies = ( + ); + productName = EssentialFeediOS; + productReference = 40D5EE242DA7C5F100D344B3 /* EssentialFeediOS.framework */; + productType = "com.apple.product-type.framework"; + }; + 40D5EE2A2DA7C5F100D344B3 /* EssentialFeediOSTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 40D5EE372DA7C5F100D344B3 /* Build configuration list for PBXNativeTarget "EssentialFeediOSTests" */; + buildPhases = ( + 40D5EE272DA7C5F100D344B3 /* Sources */, + 40D5EE282DA7C5F100D344B3 /* Frameworks */, + 40D5EE292DA7C5F100D344B3 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 40D5EE2E2DA7C5F100D344B3 /* PBXTargetDependency */, + ); + fileSystemSynchronizedGroups = ( + 40D5EE2F2DA7C5F100D344B3 /* EssentialFeediOSTests */, + ); + name = EssentialFeediOSTests; + packageProductDependencies = ( + ); + productName = EssentialFeediOSTests; + productReference = 40D5EE2B2DA7C5F100D344B3 /* EssentialFeediOSTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ @@ -393,6 +477,12 @@ 40B002442CF9E9DB0058D3E0 = { CreatedOnToolsVersion = 16.0; }; + 40D5EE232DA7C5F100D344B3 = { + CreatedOnToolsVersion = 16.2; + }; + 40D5EE2A2DA7C5F100D344B3 = { + CreatedOnToolsVersion = 16.2; + }; }; }; buildConfigurationList = 080EDEEB21B6DA7E00813479 /* Build configuration list for PBXProject "EssentialFeed" */; @@ -412,6 +502,8 @@ 080EDEF921B6DA7E00813479 /* EssentialFeedTests */, 40B002442CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests */, 40412A492DA67465004677C4 /* EssentialFeedCacheIntegrationTests */, + 40D5EE232DA7C5F100D344B3 /* EssentialFeediOS */, + 40D5EE2A2DA7C5F100D344B3 /* EssentialFeediOSTests */, ); }; /* End PBXProject section */ @@ -445,6 +537,20 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 40D5EE222DA7C5F100D344B3 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 40D5EE292DA7C5F100D344B3 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXResourcesBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -496,6 +602,20 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 40D5EE202DA7C5F100D344B3 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 40D5EE272DA7C5F100D344B3 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ @@ -514,6 +634,11 @@ target = 080EDEF021B6DA7E00813479 /* EssentialFeed */; targetProxy = 40B0024A2CF9E9DB0058D3E0 /* PBXContainerItemProxy */; }; + 40D5EE2E2DA7C5F100D344B3 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 40D5EE232DA7C5F100D344B3 /* EssentialFeediOS */; + targetProxy = 40D5EE2D2DA7C5F100D344B3 /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ @@ -854,6 +979,128 @@ }; name = Release; }; + 40D5EE352DA7C5F100D344B3 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUILD_LIBRARY_FOR_DISTRIBUTION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DEVELOPMENT_TEAM = V73WZ9Y4HH; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_NSHumanReadableCopyright = ""; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 18.2; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MARKETING_VERSION = 1.0; + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20"; + PRODUCT_BUNDLE_IDENTIFIER = me.crisfe.EssentialFeediOS; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_INSTALL_OBJC_HEADER = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 40D5EE362DA7C5F100D344B3 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUILD_LIBRARY_FOR_DISTRIBUTION = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DEVELOPMENT_TEAM = V73WZ9Y4HH; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_MODULE_VERIFIER = YES; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = YES; + INFOPLIST_KEY_NSHumanReadableCopyright = ""; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 18.2; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MARKETING_VERSION = 1.0; + MODULE_VERIFIER_SUPPORTED_LANGUAGES = "objective-c objective-c++"; + MODULE_VERIFIER_SUPPORTED_LANGUAGE_STANDARDS = "gnu17 gnu++20"; + PRODUCT_BUNDLE_IDENTIFIER = me.crisfe.EssentialFeediOS; + PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_EMIT_LOC_STRINGS = YES; + SWIFT_INSTALL_OBJC_HEADER = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 40D5EE382DA7C5F100D344B3 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = V73WZ9Y4HH; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 18.2; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = me.crisfe.EssentialFeediOSTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 40D5EE392DA7C5F100D344B3 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CODE_SIGN_STYLE = Automatic; + CURRENT_PROJECT_VERSION = 1; + DEVELOPMENT_TEAM = V73WZ9Y4HH; + GCC_C_LANGUAGE_STANDARD = gnu17; + GENERATE_INFOPLIST_FILE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 18.2; + LOCALIZATION_PREFERS_STRING_CATALOGS = YES; + MARKETING_VERSION = 1.0; + PRODUCT_BUNDLE_IDENTIFIER = me.crisfe.EssentialFeediOSTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -902,6 +1149,24 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 40D5EE342DA7C5F100D344B3 /* Build configuration list for PBXNativeTarget "EssentialFeediOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 40D5EE352DA7C5F100D344B3 /* Debug */, + 40D5EE362DA7C5F100D344B3 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 40D5EE372DA7C5F100D344B3 /* Build configuration list for PBXNativeTarget "EssentialFeediOSTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 40D5EE382DA7C5F100D344B3 /* Debug */, + 40D5EE392DA7C5F100D344B3 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; /* End XCConfigurationList section */ /* Begin XCVersionGroup section */ diff --git a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeediOS.xcscheme b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeediOS.xcscheme new file mode 100644 index 0000000..9fde49b --- /dev/null +++ b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeediOS.xcscheme @@ -0,0 +1,85 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/EssentialFeed/EssentialFeediOSTests/EssentialFeediOS.xctestplan b/EssentialFeed/EssentialFeediOSTests/EssentialFeediOS.xctestplan new file mode 100644 index 0000000..cb8e8dc --- /dev/null +++ b/EssentialFeed/EssentialFeediOSTests/EssentialFeediOS.xctestplan @@ -0,0 +1,34 @@ +{ + "configurations" : [ + { + "id" : "FC8ED705-16ED-492D-86A1-F2CB8BE70449", + "name" : "Test Scheme Action", + "options" : { + + } + } + ], + "defaultOptions" : { + "codeCoverage" : { + "targets" : [ + { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "40D5EE232DA7C5F100D344B3", + "name" : "EssentialFeediOS" + } + ] + }, + "testExecutionOrdering" : "random" + }, + "testTargets" : [ + { + "parallelizable" : true, + "target" : { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "40D5EE2A2DA7C5F100D344B3", + "name" : "EssentialFeediOSTests" + } + } + ], + "version" : 1 +} From 350cdc3b1e1c70a414c734892acfcc0b57dd1440 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:41:49 +0200 Subject: [PATCH 014/125] Move `EsssentialFeedApiEndTests.xctestplan` to its test target folder so we can remove noise from project navigator --- EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj | 2 -- .../xcschemes/EssentialFeedAPIEndToEndTests.xcscheme | 2 +- .../EssentialFeedAPIEndToEndTests.xctestplan | 5 ++--- 3 files changed, 3 insertions(+), 6 deletions(-) rename EssentialFeed/{ => EssentialFeedAPIEndToEndTests}/EssentialFeedAPIEndToEndTests.xctestplan (83%) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 6115577..21ab4ef 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -91,7 +91,6 @@ 40B975482D9EA7A2009652B5 /* LocalFeedImage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalFeedImage.swift; sourceTree = ""; }; 40B9754A2D9EC05C009652B5 /* LoadFeedFromCacheUseCaseTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoadFeedFromCacheUseCaseTests.swift; sourceTree = ""; }; 40B9754D2D9EC15A009652B5 /* FeedStoreSpy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedStoreSpy.swift; sourceTree = ""; }; - 40D5EE1E2DA7C3EE00D344B3 /* EssentialFeedAPIEndToEndTests.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = EssentialFeedAPIEndToEndTests.xctestplan; sourceTree = ""; }; 40D5EE242DA7C5F100D344B3 /* EssentialFeediOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = EssentialFeediOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 40D5EE2B2DA7C5F100D344B3 /* EssentialFeediOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = EssentialFeediOSTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ @@ -189,7 +188,6 @@ 080EDEE721B6DA7E00813479 = { isa = PBXGroup; children = ( - 40D5EE1E2DA7C3EE00D344B3 /* EssentialFeedAPIEndToEndTests.xctestplan */, 40412A542DA6750C004677C4 /* EssentialFeedCacheIntegrationTests.xctestplan */, 080EDEF321B6DA7E00813479 /* EssentialFeed */, 080EDEFE21B6DA7E00813479 /* EssentialFeedTests */, diff --git a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedAPIEndToEndTests.xcscheme b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedAPIEndToEndTests.xcscheme index b306f76..660af68 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedAPIEndToEndTests.xcscheme +++ b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedAPIEndToEndTests.xcscheme @@ -14,7 +14,7 @@ shouldUseLaunchSchemeArgsEnv = "YES"> diff --git a/EssentialFeed/EssentialFeedAPIEndToEndTests.xctestplan b/EssentialFeed/EssentialFeedAPIEndToEndTests/EssentialFeedAPIEndToEndTests.xctestplan similarity index 83% rename from EssentialFeed/EssentialFeedAPIEndToEndTests.xctestplan rename to EssentialFeed/EssentialFeedAPIEndToEndTests/EssentialFeedAPIEndToEndTests.xctestplan index 60940a9..e7b7c0d 100644 --- a/EssentialFeed/EssentialFeedAPIEndToEndTests.xctestplan +++ b/EssentialFeed/EssentialFeedAPIEndToEndTests/EssentialFeedAPIEndToEndTests.xctestplan @@ -1,8 +1,8 @@ { "configurations" : [ { - "id" : "0C2FB2CF-3441-414C-81D3-783B644B7E7A", - "name" : "Test Scheme Action", + "id" : "7AC47FC3-4C77-4455-9E81-477A1EE17D62", + "name" : "Configuration 1", "options" : { } @@ -22,7 +22,6 @@ }, "testTargets" : [ { - "parallelizable" : true, "target" : { "containerPath" : "container:EssentialFeed.xcodeproj", "identifier" : "40B002442CF9E9DB0058D3E0", From 9b6c8ae51cd22b33958379ee7a4d07cb079ba65c Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:42:58 +0200 Subject: [PATCH 015/125] Move `EssentialFeedCacheIntegrationTests.xctestplan` to its test target folder to remove noise from project navigator --- EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj | 11 ++++++++--- .../EssentialFeedCacheIntegrationTests.xcscheme | 2 +- .../EssentialFeedCacheIntegrationTests.xctestplan | 0 3 files changed, 9 insertions(+), 4 deletions(-) rename EssentialFeed/{ => EssentialFeedCacheIntegrationTests}/EssentialFeedCacheIntegrationTests.xctestplan (100%) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 21ab4ef..1ba538b 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -76,7 +76,6 @@ 40412A1E2DA67223004677C4 /* ManagedCache.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ManagedCache.swift; sourceTree = ""; }; 40412A202DA6723E004677C4 /* ManagedFeedImage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ManagedFeedImage.swift; sourceTree = ""; }; 40412A4A2DA67465004677C4 /* EssentialFeedCacheIntegrationTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = EssentialFeedCacheIntegrationTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 40412A542DA6750C004677C4 /* EssentialFeedCacheIntegrationTests.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = EssentialFeedCacheIntegrationTests.xctestplan; sourceTree = ""; }; 407F4FA42D9FD7EF0070F56E /* ValidateFeedCacheUseCaseTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ValidateFeedCacheUseCaseTests.swift; sourceTree = ""; }; 407F4FA62D9FDB780070F56E /* FeedCacheTestHelpers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedCacheTestHelpers.swift; sourceTree = ""; }; 407F4FAC2D9FEBC50070F56E /* FeedCachePolicy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedCachePolicy.swift; sourceTree = ""; }; @@ -123,11 +122,18 @@ ); target = 080EDEF021B6DA7E00813479 /* EssentialFeed */; }; + 40C765C42DA7C9E200A3F596 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = { + isa = PBXFileSystemSynchronizedBuildFileExceptionSet; + membershipExceptions = ( + EssentialFeedCacheIntegrationTests.xctestplan, + ); + target = 40412A492DA67465004677C4 /* EssentialFeedCacheIntegrationTests */; + }; /* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ /* Begin PBXFileSystemSynchronizedRootGroup section */ 40124C322CF8BDD5008BBDB6 /* Feed Api */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = "Feed Api"; sourceTree = ""; }; - 40412A4B2DA67465004677C4 /* EssentialFeedCacheIntegrationTests */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = EssentialFeedCacheIntegrationTests; sourceTree = ""; }; + 40412A4B2DA67465004677C4 /* EssentialFeedCacheIntegrationTests */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40C765C42DA7C9E200A3F596 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = EssentialFeedCacheIntegrationTests; sourceTree = ""; }; 40B002462CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = EssentialFeedAPIEndToEndTests; sourceTree = ""; }; 40B9753D2D9E7CB2009652B5 /* Helpers */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40B975402D9E7CB2009652B5 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 40412A562DA678BE004677C4 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = Helpers; sourceTree = ""; }; 40C57D7A2CF7C16E00518522 /* FeedApi */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40C57D7D2CF7C19100518522 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = FeedApi; sourceTree = ""; }; @@ -188,7 +194,6 @@ 080EDEE721B6DA7E00813479 = { isa = PBXGroup; children = ( - 40412A542DA6750C004677C4 /* EssentialFeedCacheIntegrationTests.xctestplan */, 080EDEF321B6DA7E00813479 /* EssentialFeed */, 080EDEFE21B6DA7E00813479 /* EssentialFeedTests */, 40B002462CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests */, diff --git a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedCacheIntegrationTests.xcscheme b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedCacheIntegrationTests.xcscheme index e950f52..0ee3894 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedCacheIntegrationTests.xcscheme +++ b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/EssentialFeedCacheIntegrationTests.xcscheme @@ -14,7 +14,7 @@ shouldUseLaunchSchemeArgsEnv = "YES"> diff --git a/EssentialFeed/EssentialFeedCacheIntegrationTests.xctestplan b/EssentialFeed/EssentialFeedCacheIntegrationTests/EssentialFeedCacheIntegrationTests.xctestplan similarity index 100% rename from EssentialFeed/EssentialFeedCacheIntegrationTests.xctestplan rename to EssentialFeed/EssentialFeedCacheIntegrationTests/EssentialFeedCacheIntegrationTests.xctestplan From c2b332ccea7ef52a2cc6ee5aca1e351864e55daf Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 11:50:55 +0200 Subject: [PATCH 016/125] build: disable module definition to remove umbrella header warning in EssentialFeediOS - Set `DEFINES_MODULE = NO` to avoid requiring an umbrella header - Disabled code signing for EssentialFeediOS (Debug/Release) as it's not needed - Xcode updated scheme and project version references (LastUpgradeVersion = 1620) --- EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj | 8 +++++--- .../xcshareddata/xcschemes/CI.xcscheme | 2 +- .../xcshareddata/xcschemes/EssentialFeed.xcscheme | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 1ba538b..6794f5a 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -463,7 +463,7 @@ attributes = { BuildIndependentTargetsInParallel = YES; LastSwiftUpdateCheck = 1620; - LastUpgradeCheck = 1600; + LastUpgradeCheck = 1620; ORGANIZATIONNAME = ""; TargetAttributes = { 080EDEF021B6DA7E00813479 = { @@ -987,9 +987,10 @@ buildSettings = { BUILD_LIBRARY_FOR_DISTRIBUTION = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; + DEFINES_MODULE = NO; DEVELOPMENT_TEAM = V73WZ9Y4HH; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; @@ -1026,9 +1027,10 @@ buildSettings = { BUILD_LIBRARY_FOR_DISTRIBUTION = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; + DEFINES_MODULE = NO; DEVELOPMENT_TEAM = V73WZ9Y4HH; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; diff --git a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI.xcscheme b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI.xcscheme index 5e69754..9c07f4c 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI.xcscheme +++ b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI.xcscheme @@ -1,6 +1,6 @@ Date: Thu, 10 Apr 2025 12:16:34 +0200 Subject: [PATCH 017/125] Add separate CI schemes for macOS and iOS as we now have an iOS-specific target that should not be tested on macOS --- .github/workflows/CI.yml | 21 +++++-- EssentialFeed/CI_iOS.xctestplan | 59 +++++++++++++++++++ .../EssentialFeed.xcodeproj/project.pbxproj | 2 + 3 files changed, 78 insertions(+), 4 deletions(-) create mode 100644 EssentialFeed/CI_iOS.xctestplan diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index a66f1d2..f2d2d1a 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -15,9 +15,22 @@ jobs: - name: Select Xcode run: sudo xcode-select -switch /Applications/Xcode_16.2.app - + - name: Xcode version run: /usr/bin/xcodebuild -version - - - name: Build and Test - run: xcodebuild clean build test -project EssentialFeed/EssentialFeed.xcodeproj -scheme "CI" CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO + + - name: Build and Test - CI (macOS) + run: | + xcodebuild clean build test \ + -project EssentialFeed/EssentialFeed.xcodeproj \ + -scheme "CI_macOS" \ + -destination 'platform=macOS' \ + CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO + + - name: Build and Test - CI (iOS) + run: | + xcodebuild clean build test \ + -project EssentialFeed/EssentialFeed.xcodeproj \ + -scheme "CI_iOS" \ + -destination 'platform=iOS Simulator,name=iPhone 15' \ + CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO diff --git a/EssentialFeed/CI_iOS.xctestplan b/EssentialFeed/CI_iOS.xctestplan new file mode 100644 index 0000000..bcf1b0d --- /dev/null +++ b/EssentialFeed/CI_iOS.xctestplan @@ -0,0 +1,59 @@ +{ + "configurations" : [ + { + "id" : "FB6DC599-8749-4C8A-B598-7DA402070AD5", + "name" : "Test Scheme Action", + "options" : { + + } + } + ], + "defaultOptions" : { + "codeCoverage" : { + "targets" : [ + { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "080EDEF021B6DA7E00813479", + "name" : "EssentialFeed" + }, + { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "40D5EE232DA7C5F100D344B3", + "name" : "EssentialFeediOS" + } + ] + }, + "testExecutionOrdering" : "random" + }, + "testTargets" : [ + { + "target" : { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "40B002442CF9E9DB0058D3E0", + "name" : "EssentialFeedAPIEndToEndTests" + } + }, + { + "target" : { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "40412A492DA67465004677C4", + "name" : "EssentialFeedCacheIntegrationTests" + } + }, + { + "target" : { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "080EDEF921B6DA7E00813479", + "name" : "EssentialFeedTests" + } + }, + { + "target" : { + "containerPath" : "container:EssentialFeed.xcodeproj", + "identifier" : "40D5EE2A2DA7C5F100D344B3", + "name" : "EssentialFeediOSTests" + } + } + ], + "version" : 1 +} diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 6794f5a..bfe89ac 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -90,6 +90,7 @@ 40B975482D9EA7A2009652B5 /* LocalFeedImage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocalFeedImage.swift; sourceTree = ""; }; 40B9754A2D9EC05C009652B5 /* LoadFeedFromCacheUseCaseTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoadFeedFromCacheUseCaseTests.swift; sourceTree = ""; }; 40B9754D2D9EC15A009652B5 /* FeedStoreSpy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedStoreSpy.swift; sourceTree = ""; }; + 40C765C52DA7CCCE00A3F596 /* CI_iOS.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = CI_iOS.xctestplan; sourceTree = ""; }; 40D5EE242DA7C5F100D344B3 /* EssentialFeediOS.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = EssentialFeediOS.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 40D5EE2B2DA7C5F100D344B3 /* EssentialFeediOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = EssentialFeediOSTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ @@ -194,6 +195,7 @@ 080EDEE721B6DA7E00813479 = { isa = PBXGroup; children = ( + 40C765C52DA7CCCE00A3F596 /* CI_iOS.xctestplan */, 080EDEF321B6DA7E00813479 /* EssentialFeed */, 080EDEFE21B6DA7E00813479 /* EssentialFeedTests */, 40B002462CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests */, From c7485670754767071785ebdb6fa3b52fb6c650e7 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 12:56:37 +0200 Subject: [PATCH 018/125] Add `UIRefreshController` to prototype to simualte async load on feed --- .../Prototype/Base.lproj/Main.storyboard | 6 ++++++ Prototype/Prototype/FeedViewController.swift | 21 ++++++++++++++++++- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/Prototype/Prototype/Base.lproj/Main.storyboard b/Prototype/Prototype/Base.lproj/Main.storyboard index 428583b..79ccf55 100644 --- a/Prototype/Prototype/Base.lproj/Main.storyboard +++ b/Prototype/Prototype/Base.lproj/Main.storyboard @@ -122,6 +122,12 @@ Location + + + + + + diff --git a/Prototype/Prototype/FeedViewController.swift b/Prototype/Prototype/FeedViewController.swift index 9c1fe34..334627e 100644 --- a/Prototype/Prototype/FeedViewController.swift +++ b/Prototype/Prototype/FeedViewController.swift @@ -14,7 +14,26 @@ struct FeedImageViewModel { } final class FeedViewController: UITableViewController { - private let feed = FeedImageViewModel.prototypeFeed + private var feed = [FeedImageViewModel]() + + override func viewDidAppear(_ animated: Bool) { + super.viewDidAppear(animated) + + + refresh() + tableView.setContentOffset(CGPoint(x: 0, y: -tableView.adjustedContentInset.top), animated: false) + } + + @IBAction func refresh() { + refreshControl?.beginRefreshing() + DispatchQueue.main.asyncAfter(deadline: .now() + 1.5) { + if self.feed.isEmpty { + self.feed = FeedImageViewModel.prototypeFeed + self.tableView.reloadData() + } + self.refreshControl?.endRefreshing() + } + } override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return feed.count From e175873e8a05eb5ea87e7bfb63e808c106ae436a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 13:13:55 +0200 Subject: [PATCH 019/125] Add shimmering effect to images to mimic load state --- .../Prototype/Base.lproj/Main.storyboard | 2 + Prototype/Prototype/FeedImageCell.swift | 44 ++++++++++++++++++- 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/Prototype/Prototype/Base.lproj/Main.storyboard b/Prototype/Prototype/Base.lproj/Main.storyboard index 79ccf55..7432c60 100644 --- a/Prototype/Prototype/Base.lproj/Main.storyboard +++ b/Prototype/Prototype/Base.lproj/Main.storyboard @@ -110,6 +110,7 @@ Location + @@ -123,6 +124,7 @@ Location + diff --git a/Prototype/Prototype/FeedImageCell.swift b/Prototype/Prototype/FeedImageCell.swift index d30c960..f8e30ea 100644 --- a/Prototype/Prototype/FeedImageCell.swift +++ b/Prototype/Prototype/FeedImageCell.swift @@ -10,30 +10,70 @@ import UIKit final class FeedImageCell: UITableViewCell { @IBOutlet private(set) var locationContainer: UIView! @IBOutlet private(set) var locationLabel: UILabel! + @IBOutlet private(set) var feedImageContainer: UIView! @IBOutlet private(set) var feedImageView: UIImageView! @IBOutlet private(set) var descriptionLabel: UILabel! override func awakeFromNib() { super.awakeFromNib() feedImageView.alpha = 0 + feedImageContainer.startShimmering() } override func prepareForReuse() { super.prepareForReuse() feedImageView.alpha = 0 + feedImageContainer.startShimmering() } func fadeIn(_ image: UIImage?) { feedImageView.image = image UIView.animate( - withDuration: 0.3, - delay: 0.3, + withDuration: 0.25, + delay: 1.25, options: [], animations: { self.feedImageView.alpha = 1 + }, completion: { completed in + if completed { + self.feedImageContainer.stopShimmering() + } } ) } } + + +private extension UIView { + private var shimmerAnimationKey: String { + "shimmer" + } + + func startShimmering() { + let white = UIColor.white.cgColor + let alpha = UIColor.white.withAlphaComponent(0.7).cgColor + let width = bounds.width + let height = bounds.height + + let gradient = CAGradientLayer() + gradient.colors = [alpha, white, alpha] + gradient.startPoint = CGPoint(x: 0.0, y: 0.4) + gradient.endPoint = CGPoint(x: 1.0, y: 0.6) + gradient.locations = [0.4, 0.5, 0.6] + gradient.frame = CGRect(x: -width, y: 0, width: width*3, height: height) + layer.mask = gradient + + let animation = CABasicAnimation(keyPath: #keyPath(CAGradientLayer.locations)) + animation.fromValue = [0.0, 0.1, 0.2] + animation.toValue = [0.8, 0.9, 1.0] + animation.duration = 1 + animation.repeatCount = .infinity + gradient.add(animation, forKey: shimmerAnimationKey) + } + + func stopShimmering() { + layer.mask = nil + } +} From f6ac9d31e04c260d8066b8923b4c3af92a15cfb9 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 13:19:52 +0200 Subject: [PATCH 020/125] `FeedViewController` doesnt load data upon initialization --- .../EssentialFeed.xcodeproj/project.pbxproj | 12 ++++++-- .../FeedViewControllerTests.swift | 29 +++++++++++++++++++ 2 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index bfe89ac..e1ef329 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -484,9 +484,11 @@ }; 40D5EE232DA7C5F100D344B3 = { CreatedOnToolsVersion = 16.2; + LastSwiftMigration = 1620; }; 40D5EE2A2DA7C5F100D344B3 = { CreatedOnToolsVersion = 16.2; + LastSwiftMigration = 1620; }; }; }; @@ -989,10 +991,11 @@ buildSettings = { BUILD_LIBRARY_FOR_DISTRIBUTION = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = NO; + DEFINES_MODULE = YES; DEVELOPMENT_TEAM = V73WZ9Y4HH; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; @@ -1019,6 +1022,7 @@ SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_INSTALL_OBJC_HEADER = NO; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; }; @@ -1029,10 +1033,11 @@ buildSettings = { BUILD_LIBRARY_FOR_DISTRIBUTION = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = NO; + DEFINES_MODULE = YES; DEVELOPMENT_TEAM = V73WZ9Y4HH; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; @@ -1068,6 +1073,7 @@ isa = XCBuildConfiguration; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = V73WZ9Y4HH; @@ -1081,6 +1087,7 @@ SDKROOT = iphoneos; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)"; SWIFT_EMIT_LOC_STRINGS = NO; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; TARGETED_DEVICE_FAMILY = "1,2"; }; @@ -1090,6 +1097,7 @@ isa = XCBuildConfiguration; buildSettings = { CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = V73WZ9Y4HH; diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift new file mode 100644 index 0000000..334d60a --- /dev/null +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -0,0 +1,29 @@ +// +// FeedViewControllerTests.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 10/4/25. +// + +import XCTest + +final class FeedViewController { + init(loader: FeedViewControllerTests.LoaderSpy) { + + } +} + +final class FeedViewControllerTests: XCTestCase { + + func test_init_doesNotLoadFeed() { + let loader = LoaderSpy() + _ = FeedViewController(loader: loader) + XCTAssertEqual(loader.loadCallCount, 0) + } + + // MARK: - Helper + + class LoaderSpy { + private(set) var loadCallCount = 0 + } +} From 5c249ed04f8f1fd86e8811c01aff32611b5988e7 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 13:26:03 +0200 Subject: [PATCH 021/125] Load feed on view did load --- .../FeedViewControllerTests.swift | 26 ++++++++++++++++--- 1 file changed, 23 insertions(+), 3 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 334d60a..7e128d7 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -6,11 +6,20 @@ // import XCTest +import UIKit -final class FeedViewController { - init(loader: FeedViewControllerTests.LoaderSpy) { - +final class FeedViewController: UIViewController { + private var loader: FeedViewControllerTests.LoaderSpy? + convenience init(loader: FeedViewControllerTests.LoaderSpy) { + self.init() + self.loader = loader + } + + override func viewDidLoad() { + super.viewDidLoad() + loader?.load() } + } final class FeedViewControllerTests: XCTestCase { @@ -21,9 +30,20 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadCallCount, 0) } + func test_viewDidLoad_loadsFeed() { + let loader = LoaderSpy() + let sut = FeedViewController(loader: loader) + sut.loadViewIfNeeded() + + XCTAssertEqual(loader.loadCallCount, 1) + } + // MARK: - Helper class LoaderSpy { private(set) var loadCallCount = 0 + func load() { + loadCallCount += 1 + } } } From 4f981bb429eff7d371544561bd65c5c0362d13e3 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 13:27:12 +0200 Subject: [PATCH 022/125] Build: Set defines module to No so we can get rid of warning (again...) --- EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index e1ef329..2e0147f 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -995,7 +995,7 @@ CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; + DEFINES_MODULE = NO; DEVELOPMENT_TEAM = V73WZ9Y4HH; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; @@ -1037,7 +1037,7 @@ CODE_SIGN_IDENTITY = ""; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; + DEFINES_MODULE = NO; DEVELOPMENT_TEAM = V73WZ9Y4HH; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; From 0eaaebbe00721f4fde113729a2244188ba7743ef Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 13:30:31 +0200 Subject: [PATCH 023/125] Replace the concrete loader spy dependency with the `FeedLoader` protocol --- .../EssentialFeed.xcodeproj/project.pbxproj | 40 +++++++++++++++++++ .../FeedViewControllerTests.swift | 11 ++--- 2 files changed, 46 insertions(+), 5 deletions(-) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 2e0147f..6ee4a1f 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -30,6 +30,8 @@ 40B975492D9EA7A2009652B5 /* LocalFeedImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40B975482D9EA7A2009652B5 /* LocalFeedImage.swift */; }; 40B9754B2D9EC061009652B5 /* LoadFeedFromCacheUseCaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40B9754A2D9EC05C009652B5 /* LoadFeedFromCacheUseCaseTests.swift */; }; 40B9754E2D9EC15A009652B5 /* FeedStoreSpy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40B9754D2D9EC15A009652B5 /* FeedStoreSpy.swift */; }; + 40C766012DA7E2CF00A3F596 /* EssentialFeed.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 080EDEF121B6DA7E00813479 /* EssentialFeed.framework */; platformFilter = ios; }; + 40C766022DA7E2CF00A3F596 /* EssentialFeed.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 080EDEF121B6DA7E00813479 /* EssentialFeed.framework */; platformFilter = ios; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 40D5EE2C2DA7C5F100D344B3 /* EssentialFeediOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 40D5EE242DA7C5F100D344B3 /* EssentialFeediOS.framework */; }; /* End PBXBuildFile section */ @@ -55,6 +57,13 @@ remoteGlobalIDString = 080EDEF021B6DA7E00813479; remoteInfo = EssentialFeed; }; + 40C766032DA7E2CF00A3F596 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 080EDEE821B6DA7E00813479 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 080EDEF021B6DA7E00813479; + remoteInfo = EssentialFeed; + }; 40D5EE2D2DA7C5F100D344B3 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 080EDEE821B6DA7E00813479 /* Project object */; @@ -64,6 +73,20 @@ }; /* End PBXContainerItemProxy section */ +/* Begin PBXCopyFilesBuildPhase section */ + 40C766052DA7E2CF00A3F596 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 40C766022DA7E2CF00A3F596 /* EssentialFeed.framework in Embed Frameworks */, + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + /* Begin PBXFileReference section */ 080EDEF121B6DA7E00813479 /* EssentialFeed.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = EssentialFeed.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 080EDEF521B6DA7E00813479 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; @@ -178,6 +201,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 40C766012DA7E2CF00A3F596 /* EssentialFeed.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -202,6 +226,7 @@ 40412A4B2DA67465004677C4 /* EssentialFeedCacheIntegrationTests */, 40D5EE252DA7C5F100D344B3 /* EssentialFeediOS */, 40D5EE2F2DA7C5F100D344B3 /* EssentialFeediOSTests */, + 40C766002DA7E2CF00A3F596 /* Frameworks */, 080EDEF221B6DA7E00813479 /* Products */, ); sourceTree = ""; @@ -305,6 +330,13 @@ path = Helpers; sourceTree = ""; }; + 40C766002DA7E2CF00A3F596 /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -419,10 +451,12 @@ 40D5EE202DA7C5F100D344B3 /* Sources */, 40D5EE212DA7C5F100D344B3 /* Frameworks */, 40D5EE222DA7C5F100D344B3 /* Resources */, + 40C766052DA7E2CF00A3F596 /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( + 40C766042DA7E2CF00A3F596 /* PBXTargetDependency */, ); fileSystemSynchronizedGroups = ( 40D5EE252DA7C5F100D344B3 /* EssentialFeediOS */, @@ -641,6 +675,12 @@ target = 080EDEF021B6DA7E00813479 /* EssentialFeed */; targetProxy = 40B0024A2CF9E9DB0058D3E0 /* PBXContainerItemProxy */; }; + 40C766042DA7E2CF00A3F596 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + platformFilter = ios; + target = 080EDEF021B6DA7E00813479 /* EssentialFeed */; + targetProxy = 40C766032DA7E2CF00A3F596 /* PBXContainerItemProxy */; + }; 40D5EE2E2DA7C5F100D344B3 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 40D5EE232DA7C5F100D344B3 /* EssentialFeediOS */; diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 7e128d7..3f8fbd1 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -7,17 +7,18 @@ import XCTest import UIKit +import EssentialFeed final class FeedViewController: UIViewController { - private var loader: FeedViewControllerTests.LoaderSpy? - convenience init(loader: FeedViewControllerTests.LoaderSpy) { + private var loader: FeedLoader? + convenience init(loader: FeedLoader) { self.init() self.loader = loader } override func viewDidLoad() { super.viewDidLoad() - loader?.load() + loader?.load { _ in } } } @@ -40,9 +41,9 @@ final class FeedViewControllerTests: XCTestCase { // MARK: - Helper - class LoaderSpy { + class LoaderSpy: FeedLoader { private(set) var loadCallCount = 0 - func load() { + func load(completion: @escaping (FeedLoader.Result) -> Void) { loadCallCount += 1 } } From b5f6da1611c8bd05ff60ba6e89e57bfffca72cd6 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 13:32:52 +0200 Subject: [PATCH 024/125] Extracy system under test (sut) creation into a factory method --- .../EssentialFeed.xcodeproj/project.pbxproj | 9 ++++++++- .../FeedViewControllerTests.swift | 20 +++++++++++++++---- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 6ee4a1f..2dd5bd5 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -153,13 +153,20 @@ ); target = 40412A492DA67465004677C4 /* EssentialFeedCacheIntegrationTests */; }; + 40C766072DA7E3B000A3F596 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = { + isa = PBXFileSystemSynchronizedBuildFileExceptionSet; + membershipExceptions = ( + "XCTestCase+MemoryLeakTrackingHelper.swift", + ); + target = 40D5EE2A2DA7C5F100D344B3 /* EssentialFeediOSTests */; + }; /* End PBXFileSystemSynchronizedBuildFileExceptionSet section */ /* Begin PBXFileSystemSynchronizedRootGroup section */ 40124C322CF8BDD5008BBDB6 /* Feed Api */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = "Feed Api"; sourceTree = ""; }; 40412A4B2DA67465004677C4 /* EssentialFeedCacheIntegrationTests */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40C765C42DA7C9E200A3F596 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = EssentialFeedCacheIntegrationTests; sourceTree = ""; }; 40B002462CF9E9DB0058D3E0 /* EssentialFeedAPIEndToEndTests */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = EssentialFeedAPIEndToEndTests; sourceTree = ""; }; - 40B9753D2D9E7CB2009652B5 /* Helpers */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40B975402D9E7CB2009652B5 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 40412A562DA678BE004677C4 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = Helpers; sourceTree = ""; }; + 40B9753D2D9E7CB2009652B5 /* Helpers */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40B975402D9E7CB2009652B5 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 40412A562DA678BE004677C4 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, 40C766072DA7E3B000A3F596 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = Helpers; sourceTree = ""; }; 40C57D7A2CF7C16E00518522 /* FeedApi */ = {isa = PBXFileSystemSynchronizedRootGroup; exceptions = (40C57D7D2CF7C19100518522 /* PBXFileSystemSynchronizedBuildFileExceptionSet */, ); explicitFileTypes = {}; explicitFolders = (); path = FeedApi; sourceTree = ""; }; 40D5EE252DA7C5F100D344B3 /* EssentialFeediOS */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = EssentialFeediOS; sourceTree = ""; }; 40D5EE2F2DA7C5F100D344B3 /* EssentialFeediOSTests */ = {isa = PBXFileSystemSynchronizedRootGroup; explicitFileTypes = {}; explicitFolders = (); path = EssentialFeediOSTests; sourceTree = ""; }; diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 3f8fbd1..030563d 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -26,14 +26,12 @@ final class FeedViewController: UIViewController { final class FeedViewControllerTests: XCTestCase { func test_init_doesNotLoadFeed() { - let loader = LoaderSpy() - _ = FeedViewController(loader: loader) + let (_, loader) = makeSUT() XCTAssertEqual(loader.loadCallCount, 0) } func test_viewDidLoad_loadsFeed() { - let loader = LoaderSpy() - let sut = FeedViewController(loader: loader) + let (sut, loader) = makeSUT() sut.loadViewIfNeeded() XCTAssertEqual(loader.loadCallCount, 1) @@ -41,6 +39,20 @@ final class FeedViewControllerTests: XCTestCase { // MARK: - Helper + private func makeSUT( + file: StaticString = #file, + line: UInt = #line + ) -> ( + sut: FeedViewController, + loader: LoaderSpy + ) { + let loader = LoaderSpy() + let sut = FeedViewController(loader: loader) + trackForMemoryLeaks(loader, file: file, line: line) + trackForMemoryLeaks(sut, file: file, line: line) + return (sut, loader) + } + class LoaderSpy: FeedLoader { private(set) var loadCallCount = 0 func load(completion: @escaping (FeedLoader.Result) -> Void) { From 1476155f2a2ca43529c1fcd6de3304eb6fc78d4a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Thu, 10 Apr 2025 14:07:32 +0200 Subject: [PATCH 025/125] Prove tht pull to refresh loads feed --- .../FeedViewControllerTests.swift | 32 +++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 030563d..80a6a1c 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -9,7 +9,7 @@ import XCTest import UIKit import EssentialFeed -final class FeedViewController: UIViewController { +final class FeedViewController: UITableViewController { private var loader: FeedLoader? convenience init(loader: FeedLoader) { self.init() @@ -18,9 +18,15 @@ final class FeedViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() - loader?.load { _ in } + + refreshControl = UIRefreshControl() + refreshControl?.addTarget(self, action: #selector(load), for: .valueChanged) + load() } + @objc func load() { + loader?.load { _ in } + } } final class FeedViewControllerTests: XCTestCase { @@ -37,6 +43,18 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadCallCount, 1) } + func test_pullToRefresh_loadsFeed() { + let (sut, loader) = makeSUT() + + sut.loadViewIfNeeded() + + sut.refreshControl?.simulatePullToRefresh() + XCTAssertEqual(loader.loadCallCount, 2) + + sut.refreshControl?.simulatePullToRefresh() + XCTAssertEqual(loader.loadCallCount, 3) + } + // MARK: - Helper private func makeSUT( @@ -60,3 +78,13 @@ final class FeedViewControllerTests: XCTestCase { } } } + +extension UIRefreshControl { + func simulatePullToRefresh() { + allTargets.forEach { target in + actions(forTarget: target, forControlEvent: .valueChanged)?.forEach { + (target as NSObject).perform(Selector($0)) + } + } + } +} From f7a070dea8081950386bbefcb01fae841f65fac0 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 10:52:36 +0200 Subject: [PATCH 026/125] Show loading indicator on view is appear --- .../FeedViewControllerTests.swift | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 80a6a1c..8a14935 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -24,6 +24,10 @@ final class FeedViewController: UITableViewController { load() } + override func viewIsAppearing(_ animated: Bool) { + refreshControl?.beginRefreshing() + } + @objc func load() { loader?.load { _ in } } @@ -55,6 +59,16 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadCallCount, 3) } + func test_viewIsAppearing_showsLoadingIndicator() { + let (sut, _) = makeSUT() + sut.replaceRefreshControlWithFake() + sut.loadViewIfNeeded() + XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + sut.beginAppearanceTransition(true, animated: false) + sut.endAppearanceTransition() + XCTAssertEqual(sut.refreshControl?.isRefreshing, true) + } + // MARK: - Helper private func makeSUT( @@ -79,6 +93,34 @@ final class FeedViewControllerTests: XCTestCase { } } +extension FeedViewController { + func replaceRefreshControlWithFake() { + let fake = FakeRefreshControl() + refreshControl?.allTargets.forEach{ target in + refreshControl?.actions(forTarget: target, forControlEvent: .valueChanged)?.forEach { action in + fake.addTarget(target, action: Selector(action), for: .valueChanged) + } + } + refreshControl = FakeRefreshControl() + + } + + class FakeRefreshControl: UIRefreshControl { + private var _isRefreshing = false + override var isRefreshing: Bool { + _isRefreshing + } + + override func beginRefreshing() { + _isRefreshing = true + } + + override func endRefreshing() { + _isRefreshing = false + } + } +} + extension UIRefreshControl { func simulatePullToRefresh() { allTargets.forEach { target in From deed955378ff4ffc870038ba1c7781a3d0ab6cc4 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 10:58:39 +0200 Subject: [PATCH 027/125] Show loader once on viewIsAppearing --- .../FeedViewControllerTests.swift | 22 ++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 8a14935..875cf97 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -11,6 +11,8 @@ import EssentialFeed final class FeedViewController: UITableViewController { private var loader: FeedLoader? + private var onViewIsAppearing: ((FeedViewController) -> ())? + convenience init(loader: FeedLoader) { self.init() self.loader = loader @@ -21,11 +23,16 @@ final class FeedViewController: UITableViewController { refreshControl = UIRefreshControl() refreshControl?.addTarget(self, action: #selector(load), for: .valueChanged) + onViewIsAppearing = { vc in + vc.refreshControl?.beginRefreshing() + vc.onViewIsAppearing = nil + } + load() } override func viewIsAppearing(_ animated: Bool) { - refreshControl?.beginRefreshing() + onViewIsAppearing?(self) } @objc func load() { @@ -69,6 +76,19 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(sut.refreshControl?.isRefreshing, true) } + func test_viewIsAppearing_showsLoadingIndicatorOnce() { + let (sut, _) = makeSUT() + sut.replaceRefreshControlWithFake() + sut.beginAppearanceTransition(true, animated: false) + sut.endAppearanceTransition() + XCTAssertEqual(sut.refreshControl?.isRefreshing, true) + sut.refreshControl?.endRefreshing() + + sut.beginAppearanceTransition(true, animated: false) + sut.endAppearanceTransition() + XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + } + // MARK: - Helper private func makeSUT( From fb576895a07793baa8b8fc903357ab89fb24ca44 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:01:31 +0200 Subject: [PATCH 028/125] Extract view apperance duplicated test code into a helper --- .../FeedViewControllerTests.swift | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 875cf97..76d3fea 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -71,21 +71,19 @@ final class FeedViewControllerTests: XCTestCase { sut.replaceRefreshControlWithFake() sut.loadViewIfNeeded() XCTAssertEqual(sut.refreshControl?.isRefreshing, false) - sut.beginAppearanceTransition(true, animated: false) - sut.endAppearanceTransition() + sut.simulateAppearance() XCTAssertEqual(sut.refreshControl?.isRefreshing, true) } func test_viewIsAppearing_showsLoadingIndicatorOnce() { let (sut, _) = makeSUT() sut.replaceRefreshControlWithFake() - sut.beginAppearanceTransition(true, animated: false) - sut.endAppearanceTransition() + + sut.simulateAppearance() XCTAssertEqual(sut.refreshControl?.isRefreshing, true) sut.refreshControl?.endRefreshing() - sut.beginAppearanceTransition(true, animated: false) - sut.endAppearanceTransition() + sut.simulateAppearance() XCTAssertEqual(sut.refreshControl?.isRefreshing, false) } @@ -114,6 +112,12 @@ final class FeedViewControllerTests: XCTestCase { } extension FeedViewController { + + func simulateAppearance() { + beginAppearanceTransition(true, animated: false) + endAppearanceTransition() + } + func replaceRefreshControlWithFake() { let fake = FakeRefreshControl() refreshControl?.allTargets.forEach{ target in From e17316bc317256f6641fa97f23e2c7a13bc62db0 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:07:40 +0200 Subject: [PATCH 029/125] Add short-circuit loading check on `simulateAppearance` so we can remove replacing logic in tests (thus having shorter and more expressive code) --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 76d3fea..8078775 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -77,7 +77,6 @@ final class FeedViewControllerTests: XCTestCase { func test_viewIsAppearing_showsLoadingIndicatorOnce() { let (sut, _) = makeSUT() - sut.replaceRefreshControlWithFake() sut.simulateAppearance() XCTAssertEqual(sut.refreshControl?.isRefreshing, true) @@ -114,6 +113,10 @@ final class FeedViewControllerTests: XCTestCase { extension FeedViewController { func simulateAppearance() { + if !isViewLoaded { + loadViewIfNeeded() + replaceRefreshControlWithFake() + } beginAppearanceTransition(true, animated: false) endAppearanceTransition() } From ac80b3c75804068c33e929a300c61eba2f192794 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:18:03 +0200 Subject: [PATCH 030/125] Test view did load does not show refresh control --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 8078775..a11e569 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -54,6 +54,12 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadCallCount, 1) } + func test_viewDidLoad_doesNotShowRefreshControl() { + let (sut, _) = makeSUT() + sut.loadViewIfNeeded() + XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + } + func test_pullToRefresh_loadsFeed() { let (sut, loader) = makeSUT() @@ -68,9 +74,6 @@ final class FeedViewControllerTests: XCTestCase { func test_viewIsAppearing_showsLoadingIndicator() { let (sut, _) = makeSUT() - sut.replaceRefreshControlWithFake() - sut.loadViewIfNeeded() - XCTAssertEqual(sut.refreshControl?.isRefreshing, false) sut.simulateAppearance() XCTAssertEqual(sut.refreshControl?.isRefreshing, true) } From 75cb8ad5400027e44a13e8f4df1a12b5c2734d36 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:20:07 +0200 Subject: [PATCH 031/125] Remove unneeded extra assertion on test as it's already tested by antoher test --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 1 - 1 file changed, 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index a11e569..79c84c4 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -82,7 +82,6 @@ final class FeedViewControllerTests: XCTestCase { let (sut, _) = makeSUT() sut.simulateAppearance() - XCTAssertEqual(sut.refreshControl?.isRefreshing, true) sut.refreshControl?.endRefreshing() sut.simulateAppearance() From 376a659fd53be11378e162334c2c8cef0bb9f69e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:22:49 +0200 Subject: [PATCH 032/125] Hide loading indicator on loader completion --- .../FeedViewControllerTests.swift | 23 ++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 79c84c4..825f824 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -36,7 +36,9 @@ final class FeedViewController: UITableViewController { } @objc func load() { - loader?.load { _ in } + loader?.load { [weak self] _ in + self?.refreshControl?.endRefreshing() + } } } @@ -88,6 +90,15 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(sut.refreshControl?.isRefreshing, false) } + func test_viewDidLoad_hidesLoadingIndicatorOnLoaderCompletion() { + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading() + + XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + } + // MARK: - Helper private func makeSUT( @@ -105,9 +116,15 @@ final class FeedViewControllerTests: XCTestCase { } class LoaderSpy: FeedLoader { - private(set) var loadCallCount = 0 + private(set) var completions = [(FeedLoader.Result) -> Void]() + var loadCallCount: Int { completions.count } + func load(completion: @escaping (FeedLoader.Result) -> Void) { - loadCallCount += 1 + completions.append(completion) + } + + func completeFeedLoading() { + completions[0](.success([])) } } } From 2a8e7f3e03af48deae25c6056cea3525a9e25258 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:30:44 +0200 Subject: [PATCH 033/125] Pull to refresh shows loading indicator --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 825f824..b41fd08 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -99,6 +99,14 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(sut.refreshControl?.isRefreshing, false) } + func test_pullToRefresh_showsLoadingIndicator() { + let (sut, _) = makeSUT() + sut.simulateAppearance() + sut.refreshControl?.endRefreshing() + sut.refreshControl?.simulatePullToRefresh() + XCTAssertEqual(sut.refreshControl?.isRefreshing, true) + } + // MARK: - Helper private func makeSUT( @@ -169,6 +177,7 @@ extension FeedViewController { extension UIRefreshControl { func simulatePullToRefresh() { + beginRefreshing() allTargets.forEach { target in actions(forTarget: target, forControlEvent: .valueChanged)?.forEach { (target as NSObject).perform(Selector($0)) From c0156b5290ff86b8934e0c0fe8d9b6dcd034635b Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:31:04 +0200 Subject: [PATCH 034/125] Pull to refresh hides loading indicator on loader completion --- .../FeedViewControllerTests.swift | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index b41fd08..c7b0bfc 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -107,6 +107,16 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(sut.refreshControl?.isRefreshing, true) } + func test_pullToRefresh_hidesLoadingIndicatorOnLoaderCompletion() { + let (sut, loader) = makeSUT() + sut.simulateAppearance() + sut.refreshControl?.endRefreshing() + sut.refreshControl?.simulatePullToRefresh() + loader.completeFeedLoading() + + XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + } + // MARK: - Helper private func makeSUT( From f63955c9bceb5cf87e9acf4c68448b8731c41227 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:36:03 +0200 Subject: [PATCH 035/125] Decouple tests from specific UI controls for user initiated with test-specific DSL method --- .../FeedViewControllerTests.swift | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index c7b0bfc..4d98945 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -62,15 +62,15 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(sut.refreshControl?.isRefreshing, false) } - func test_pullToRefresh_loadsFeed() { + func test_userInitiatedFeedReload_loadsFeed() { let (sut, loader) = makeSUT() sut.loadViewIfNeeded() - sut.refreshControl?.simulatePullToRefresh() + sut.simulateUserInitiatedFeedReload() XCTAssertEqual(loader.loadCallCount, 2) - sut.refreshControl?.simulatePullToRefresh() + sut.simulateUserInitiatedFeedReload() XCTAssertEqual(loader.loadCallCount, 3) } @@ -99,19 +99,19 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(sut.refreshControl?.isRefreshing, false) } - func test_pullToRefresh_showsLoadingIndicator() { + func test_userInitiatedFeedReload_showsLoadingIndicator() { let (sut, _) = makeSUT() sut.simulateAppearance() sut.refreshControl?.endRefreshing() - sut.refreshControl?.simulatePullToRefresh() + sut.simulateUserInitiatedFeedReload() XCTAssertEqual(sut.refreshControl?.isRefreshing, true) } - func test_pullToRefresh_hidesLoadingIndicatorOnLoaderCompletion() { + func test_userInitiatedFeedReload_hidesLoadingIndicatorOnLoaderCompletion() { let (sut, loader) = makeSUT() sut.simulateAppearance() sut.refreshControl?.endRefreshing() - sut.refreshControl?.simulatePullToRefresh() + sut.simulateUserInitiatedFeedReload() loader.completeFeedLoading() XCTAssertEqual(sut.refreshControl?.isRefreshing, false) @@ -149,6 +149,10 @@ final class FeedViewControllerTests: XCTestCase { extension FeedViewController { + func simulateUserInitiatedFeedReload() { + refreshControl?.simulatePullToRefresh() + } + func simulateAppearance() { if !isViewLoaded { loadViewIfNeeded() From 5e5d7e6b55e98ee5a917a5c456d6b09b38ade2e3 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:36:29 +0200 Subject: [PATCH 036/125] Make extensions private as for now they only concern current test scope --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 4d98945..bb6ea66 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -147,7 +147,7 @@ final class FeedViewControllerTests: XCTestCase { } } -extension FeedViewController { +private extension FeedViewController { func simulateUserInitiatedFeedReload() { refreshControl?.simulatePullToRefresh() @@ -189,7 +189,7 @@ extension FeedViewController { } } -extension UIRefreshControl { +private extension UIRefreshControl { func simulatePullToRefresh() { beginRefreshing() allTargets.forEach { target in From 53fdeb998a372c52f61002afca867e5c14371855 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:39:54 +0200 Subject: [PATCH 037/125] Decouple tests from specific UI loading indicaaors with test-specific DSL method --- .../FeedViewControllerTests.swift | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index bb6ea66..6aacf67 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -59,7 +59,7 @@ final class FeedViewControllerTests: XCTestCase { func test_viewDidLoad_doesNotShowRefreshControl() { let (sut, _) = makeSUT() sut.loadViewIfNeeded() - XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + XCTAssertFalse(sut.isShowingLoadingIndicator) } func test_userInitiatedFeedReload_loadsFeed() { @@ -77,7 +77,7 @@ final class FeedViewControllerTests: XCTestCase { func test_viewIsAppearing_showsLoadingIndicator() { let (sut, _) = makeSUT() sut.simulateAppearance() - XCTAssertEqual(sut.refreshControl?.isRefreshing, true) + XCTAssertTrue(sut.isShowingLoadingIndicator) } func test_viewIsAppearing_showsLoadingIndicatorOnce() { @@ -87,7 +87,7 @@ final class FeedViewControllerTests: XCTestCase { sut.refreshControl?.endRefreshing() sut.simulateAppearance() - XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + XCTAssertFalse(sut.isShowingLoadingIndicator) } func test_viewDidLoad_hidesLoadingIndicatorOnLoaderCompletion() { @@ -96,7 +96,7 @@ final class FeedViewControllerTests: XCTestCase { sut.simulateAppearance() loader.completeFeedLoading() - XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + XCTAssertFalse(sut.isShowingLoadingIndicator) } func test_userInitiatedFeedReload_showsLoadingIndicator() { @@ -104,7 +104,7 @@ final class FeedViewControllerTests: XCTestCase { sut.simulateAppearance() sut.refreshControl?.endRefreshing() sut.simulateUserInitiatedFeedReload() - XCTAssertEqual(sut.refreshControl?.isRefreshing, true) + XCTAssertTrue(sut.isShowingLoadingIndicator) } func test_userInitiatedFeedReload_hidesLoadingIndicatorOnLoaderCompletion() { @@ -114,7 +114,7 @@ final class FeedViewControllerTests: XCTestCase { sut.simulateUserInitiatedFeedReload() loader.completeFeedLoading() - XCTAssertEqual(sut.refreshControl?.isRefreshing, false) + XCTAssertFalse(sut.isShowingLoadingIndicator) } // MARK: - Helper @@ -153,6 +153,10 @@ private extension FeedViewController { refreshControl?.simulatePullToRefresh() } + var isShowingLoadingIndicator: Bool { + refreshControl?.isRefreshing == true + } + func simulateAppearance() { if !isViewLoaded { loadViewIfNeeded() From 6ae4bed3f7d29db8c72a6e29d8b2b5244556e33f Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 11:41:47 +0200 Subject: [PATCH 038/125] Rename test to improve clarity --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 6aacf67..8468c88 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -62,7 +62,7 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertFalse(sut.isShowingLoadingIndicator) } - func test_userInitiatedFeedReload_loadsFeed() { + func test_userInitiatedFeedReload_reloadsFeed() { let (sut, loader) = makeSUT() sut.loadViewIfNeeded() From 4e35979f78a3804526ba537346495cd7f7853630 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 12:01:29 +0200 Subject: [PATCH 039/125] Fix test error that may lead to test failing: refreshControl replacement was being instantiated without the old refreshing selectors --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 8468c88..dbb909a 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -173,7 +173,7 @@ private extension FeedViewController { fake.addTarget(target, action: Selector(action), for: .valueChanged) } } - refreshControl = FakeRefreshControl() + refreshControl = fake } From d0d210094f9ebd81f8a1c4043d7db4d3d28a2b0c Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 12:08:56 +0200 Subject: [PATCH 040/125] Unify assertions into single tests as they're is temporal coupling due to uikit life cycle (so we can better reflect the actual order of events and prevent potential hidden bugs) --- .../FeedViewControllerTests.swift | 59 +++++-------------- 1 file changed, 15 insertions(+), 44 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index dbb909a..b8517f1 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -24,11 +24,9 @@ final class FeedViewController: UITableViewController { refreshControl = UIRefreshControl() refreshControl?.addTarget(self, action: #selector(load), for: .valueChanged) onViewIsAppearing = { vc in - vc.refreshControl?.beginRefreshing() + vc.load() vc.onViewIsAppearing = nil } - - load() } override func viewIsAppearing(_ animated: Bool) { @@ -36,6 +34,7 @@ final class FeedViewController: UITableViewController { } @objc func load() { + refreshControl?.beginRefreshing() loader?.load { [weak self] _ in self?.refreshControl?.endRefreshing() } @@ -44,28 +43,18 @@ final class FeedViewController: UITableViewController { final class FeedViewControllerTests: XCTestCase { - func test_init_doesNotLoadFeed() { - let (_, loader) = makeSUT() - XCTAssertEqual(loader.loadCallCount, 0) - } - - func test_viewDidLoad_loadsFeed() { - let (sut, loader) = makeSUT() - sut.loadViewIfNeeded() - - XCTAssertEqual(loader.loadCallCount, 1) - } - func test_viewDidLoad_doesNotShowRefreshControl() { let (sut, _) = makeSUT() sut.loadViewIfNeeded() XCTAssertFalse(sut.isShowingLoadingIndicator) } - func test_userInitiatedFeedReload_reloadsFeed() { + func test_loadFeedActions_requestFeedFromLoader() { let (sut, loader) = makeSUT() - - sut.loadViewIfNeeded() + XCTAssertEqual(loader.loadCallCount, 0) + + sut.simulateAppearance() + XCTAssertEqual(loader.loadCallCount, 1) sut.simulateUserInitiatedFeedReload() XCTAssertEqual(loader.loadCallCount, 2) @@ -74,12 +63,6 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadCallCount, 3) } - func test_viewIsAppearing_showsLoadingIndicator() { - let (sut, _) = makeSUT() - sut.simulateAppearance() - XCTAssertTrue(sut.isShowingLoadingIndicator) - } - func test_viewIsAppearing_showsLoadingIndicatorOnce() { let (sut, _) = makeSUT() @@ -90,30 +73,19 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertFalse(sut.isShowingLoadingIndicator) } - func test_viewDidLoad_hidesLoadingIndicatorOnLoaderCompletion() { + func test_viewIsAppearing_showsLoadingIndicator() { let (sut, loader) = makeSUT() - + sut.simulateAppearance() - loader.completeFeedLoading() + XCTAssertTrue(sut.isShowingLoadingIndicator) + loader.completeFeedLoading(at: 0) XCTAssertFalse(sut.isShowingLoadingIndicator) - } - - func test_userInitiatedFeedReload_showsLoadingIndicator() { - let (sut, _) = makeSUT() - sut.simulateAppearance() - sut.refreshControl?.endRefreshing() + sut.simulateUserInitiatedFeedReload() XCTAssertTrue(sut.isShowingLoadingIndicator) - } - - func test_userInitiatedFeedReload_hidesLoadingIndicatorOnLoaderCompletion() { - let (sut, loader) = makeSUT() - sut.simulateAppearance() - sut.refreshControl?.endRefreshing() - sut.simulateUserInitiatedFeedReload() - loader.completeFeedLoading() + loader.completeFeedLoading(at: 1) XCTAssertFalse(sut.isShowingLoadingIndicator) } @@ -141,8 +113,8 @@ final class FeedViewControllerTests: XCTestCase { completions.append(completion) } - func completeFeedLoading() { - completions[0](.success([])) + func completeFeedLoading(at index: Int) { + completions[index](.success([])) } } } @@ -195,7 +167,6 @@ private extension FeedViewController { private extension UIRefreshControl { func simulatePullToRefresh() { - beginRefreshing() allTargets.forEach { target in actions(forTarget: target, forControlEvent: .valueChanged)?.forEach { (target as NSObject).perform(Selector($0)) From cc74d378ecd6793bd819a835c87bcf426a7b4b33 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 12:09:45 +0200 Subject: [PATCH 041/125] Move life cycle related tests to the top of the class for better organization --- .../FeedViewControllerTests.swift | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index b8517f1..3271984 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -49,6 +49,16 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertFalse(sut.isShowingLoadingIndicator) } + func test_viewIsAppearing_showsLoadingIndicatorOnce() { + let (sut, _) = makeSUT() + + sut.simulateAppearance() + sut.refreshControl?.endRefreshing() + + sut.simulateAppearance() + XCTAssertFalse(sut.isShowingLoadingIndicator) + } + func test_loadFeedActions_requestFeedFromLoader() { let (sut, loader) = makeSUT() XCTAssertEqual(loader.loadCallCount, 0) @@ -63,16 +73,6 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadCallCount, 3) } - func test_viewIsAppearing_showsLoadingIndicatorOnce() { - let (sut, _) = makeSUT() - - sut.simulateAppearance() - sut.refreshControl?.endRefreshing() - - sut.simulateAppearance() - XCTAssertFalse(sut.isShowingLoadingIndicator) - } - func test_viewIsAppearing_showsLoadingIndicator() { let (sut, loader) = makeSUT() From 1c6e2615550a30081cbaf493a3b42637bf027fd0 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 12:12:41 +0200 Subject: [PATCH 042/125] Add explicit comments to asserts so we can have better debugging on test failure --- .../FeedViewControllerTests.swift | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 3271984..b156b1f 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -61,32 +61,32 @@ final class FeedViewControllerTests: XCTestCase { func test_loadFeedActions_requestFeedFromLoader() { let (sut, loader) = makeSUT() - XCTAssertEqual(loader.loadCallCount, 0) + XCTAssertEqual(loader.loadCallCount, 0, "Expect no loading requests before view is load") sut.simulateAppearance() - XCTAssertEqual(loader.loadCallCount, 1) + XCTAssertEqual(loader.loadCallCount, 1, "Expect a loading request once view is loaded") sut.simulateUserInitiatedFeedReload() - XCTAssertEqual(loader.loadCallCount, 2) + XCTAssertEqual(loader.loadCallCount, 2, "Expect another loading request after user initiates reload") sut.simulateUserInitiatedFeedReload() - XCTAssertEqual(loader.loadCallCount, 3) + XCTAssertEqual(loader.loadCallCount, 3, "Expect a third loading request once user initiates another reload") } func test_viewIsAppearing_showsLoadingIndicator() { let (sut, loader) = makeSUT() sut.simulateAppearance() - XCTAssertTrue(sut.isShowingLoadingIndicator) + XCTAssertTrue(sut.isShowingLoadingIndicator, "Expect loading indicator to be visible on viewAppearance") loader.completeFeedLoading(at: 0) - XCTAssertFalse(sut.isShowingLoadingIndicator) + XCTAssertFalse(sut.isShowingLoadingIndicator, "Expect loading indicator to be hidden once loading is completed") sut.simulateUserInitiatedFeedReload() - XCTAssertTrue(sut.isShowingLoadingIndicator) + XCTAssertTrue(sut.isShowingLoadingIndicator, "Expect loading indicator to be visible again after user initiates reload") loader.completeFeedLoading(at: 1) - XCTAssertFalse(sut.isShowingLoadingIndicator) + XCTAssertFalse(sut.isShowingLoadingIndicator, "Expect loading indicator to be hidden once user initiated feed reload is done") } // MARK: - Helper From 9c1dd34afdf396d150222958f7533b663a392613 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 12:13:25 +0200 Subject: [PATCH 043/125] Rename test to better reflect its new intent --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index b156b1f..20cafbd 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -73,7 +73,7 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadCallCount, 3, "Expect a third loading request once user initiates another reload") } - func test_viewIsAppearing_showsLoadingIndicator() { + func test_loadingFeedIndicator_isVisibleWhileLoadingFeed() { let (sut, loader) = makeSUT() sut.simulateAppearance() From 813bb7f5193e5373c35020656de62cc03ed59447 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 12:16:47 +0200 Subject: [PATCH 044/125] Move `FeedViewController` to production --- .../EssentialFeediOS/FeedViewController.swift | 41 +++++++++++++++++++ .../FeedViewControllerTests.swift | 33 +-------------- 2 files changed, 42 insertions(+), 32 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/FeedViewController.swift diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift new file mode 100644 index 0000000..ebbb034 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -0,0 +1,41 @@ +// +// FeedViewController.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 11/4/25. +// + +import EssentialFeed +import UIKit + +public final class FeedViewController: UITableViewController { + private var loader: FeedLoader? + private var onViewIsAppearing: ((FeedViewController) -> ())? + + public convenience init(loader: FeedLoader) { + self.init() + self.loader = loader + } + + public override func viewDidLoad() { + super.viewDidLoad() + + refreshControl = UIRefreshControl() + refreshControl?.addTarget(self, action: #selector(load), for: .valueChanged) + onViewIsAppearing = { vc in + vc.load() + vc.onViewIsAppearing = nil + } + } + + public override func viewIsAppearing(_ animated: Bool) { + onViewIsAppearing?(self) + } + + @objc func load() { + refreshControl?.beginRefreshing() + loader?.load { [weak self] _ in + self?.refreshControl?.endRefreshing() + } + } +} diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 20cafbd..c256891 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -8,38 +8,7 @@ import XCTest import UIKit import EssentialFeed - -final class FeedViewController: UITableViewController { - private var loader: FeedLoader? - private var onViewIsAppearing: ((FeedViewController) -> ())? - - convenience init(loader: FeedLoader) { - self.init() - self.loader = loader - } - - override func viewDidLoad() { - super.viewDidLoad() - - refreshControl = UIRefreshControl() - refreshControl?.addTarget(self, action: #selector(load), for: .valueChanged) - onViewIsAppearing = { vc in - vc.load() - vc.onViewIsAppearing = nil - } - } - - override func viewIsAppearing(_ animated: Bool) { - onViewIsAppearing?(self) - } - - @objc func load() { - refreshControl?.beginRefreshing() - loader?.load { [weak self] _ in - self?.refreshControl?.endRefreshing() - } - } -} +import EssentialFeediOS final class FeedViewControllerTests: XCTestCase { From 198ae3af45cf43c0b5f5fca0b925bb2fd2d6aa4e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 12:24:35 +0200 Subject: [PATCH 045/125] Turn off library evolution support to avoid binary compatibility warnings in development (No need for library evolution yet) --- EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 2dd5bd5..6af3cad 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -1036,7 +1036,7 @@ 40D5EE352DA7C5F100D344B3 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; + BUILD_LIBRARY_FOR_DISTRIBUTION = NO; CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = ""; @@ -1078,7 +1078,7 @@ 40D5EE362DA7C5F100D344B3 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - BUILD_LIBRARY_FOR_DISTRIBUTION = YES; + BUILD_LIBRARY_FOR_DISTRIBUTION = NO; CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; CLANG_ENABLE_MODULES = YES; CODE_SIGN_IDENTITY = ""; From 4beb85c9826b4b12a19739f0b9e17af6b8d74f15 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 13:00:30 +0200 Subject: [PATCH 046/125] Render loaded feed on succesfull load completion --- .../EssentialFeediOS/FeedImageCell.swift | 14 +++ .../EssentialFeediOS/FeedViewController.swift | 19 +++- .../FeedViewControllerTests.swift | 101 +++++++++++++++++- 3 files changed, 131 insertions(+), 3 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/FeedImageCell.swift diff --git a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift new file mode 100644 index 0000000..76fb622 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift @@ -0,0 +1,14 @@ +// +// FeedImageCell.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 11/4/25. +// + +import UIKit + +public final class FeedImageCell: UITableViewCell { + public let locationContainer = UIView() + public let locationLabel = UILabel() + public let descriptionLabel = UILabel() +} diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index ebbb034..4566186 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -10,6 +10,8 @@ import UIKit public final class FeedViewController: UITableViewController { private var loader: FeedLoader? + private var tableModel = [FeedImage]() + private var onViewIsAppearing: ((FeedViewController) -> ())? public convenience init(loader: FeedLoader) { @@ -34,8 +36,23 @@ public final class FeedViewController: UITableViewController { @objc func load() { refreshControl?.beginRefreshing() - loader?.load { [weak self] _ in + loader?.load { [weak self] result in + self?.tableModel = (try? result.get()) ?? [] + self?.tableView.reloadData() self?.refreshControl?.endRefreshing() } } + + public override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { + return tableModel.count + } + + public override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { + let cellModel = tableModel[indexPath.row] + let cell = FeedImageCell() + cell.locationContainer.isHidden = (cellModel.location == nil) + cell.locationLabel.text = cellModel.location + cell.descriptionLabel.text = cellModel.description + return cell + } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index c256891..a53d4fd 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -58,6 +58,27 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertFalse(sut.isShowingLoadingIndicator, "Expect loading indicator to be hidden once user initiated feed reload is done") } + func test_loadFeedCompletion_rendersSuccesfullyLoadedFeed() { + let image0 = makeImage(description: "a description", location: "a location") + let image1 = makeImage(description: nil, location: "another location") + let image2 = makeImage(description: "a description", location: nil) + let image3 = makeImage(description: nil, location: nil) + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + assertThat(sut, isRendering: []) + + loader.completeFeedLoading(with: [image0], at: 0) + assertThat(sut, isRendering: [image0]) + + sut.simulateUserInitiatedFeedReload() + loader.completeFeedLoading( + with: [image0, image1, image2, image3], + at: 1 + ) + assertThat(sut, isRendering: [image0, image1, image2, image3]) + } + // MARK: - Helper private func makeSUT( @@ -74,6 +95,54 @@ final class FeedViewControllerTests: XCTestCase { return (sut, loader) } + private func assertThat( + _ sut: FeedViewController, + isRendering feed: [FeedImage], + file: StaticString = #file, + line: UInt = #line + ) { + XCTAssertEqual( + sut.numberOfRenderedFeedImageViews(), + feed.count, + "Expected \(feed.count) images, got \(sut.numberOfRenderedFeedImageViews()) instead", + file: file, + line: line + ) + + feed.enumerated().forEach { + assertThat( + sut, + hasViewConfiguredFor: $1, + at: $0, + file: file, + line: line + ) + } + } + + private func assertThat( + _ sut: FeedViewController, + hasViewConfiguredFor image: FeedImage, + at index: Int, + file: StaticString = #file, + line: UInt = #line + ) { + let view = sut.feedImageView(at: index) as? FeedImageCell + XCTAssertNotNil(view, file: file, line: line) + XCTAssertEqual(view?.isShowingLocation, image.location != nil, file: file, line: line) + XCTAssertEqual(view?.locationText, image.location, file: file, line: line) + XCTAssertEqual(view?.descriptionText, image.description, file: file, line: line) + } + + private func makeImage( + description: String? = nil, + location: String? = nil, + url: URL = URL(string: "http://any-url.com")! + ) -> FeedImage { + FeedImage(id: UUID(), description: description, location: location, url: url) + } + + class LoaderSpy: FeedLoader { private(set) var completions = [(FeedLoader.Result) -> Void]() var loadCallCount: Int { completions.count } @@ -82,8 +151,8 @@ final class FeedViewControllerTests: XCTestCase { completions.append(completion) } - func completeFeedLoading(at index: Int) { - completions[index](.success([])) + func completeFeedLoading(with feed: [FeedImage] = [], at index: Int) { + completions[index](.success(feed)) } } } @@ -98,6 +167,20 @@ private extension FeedViewController { refreshControl?.isRefreshing == true } + func numberOfRenderedFeedImageViews() -> Int { + return tableView.numberOfRows(inSection: feedImageSection) + } + + private var feedImageSection: Int { + return 0 + } + + func feedImageView(at row: Int) -> UITableViewCell? { + let ds = tableView.dataSource + let index = IndexPath(row: row, section: feedImageSection) + return ds?.tableView(tableView, cellForRowAt: index) + } + func simulateAppearance() { if !isViewLoaded { loadViewIfNeeded() @@ -134,6 +217,20 @@ private extension FeedViewController { } } +private extension FeedImageCell { + var isShowingLocation: Bool { + return !locationContainer.isHidden + } + + var locationText: String? { + return locationLabel.text + } + + var descriptionText: String? { + return descriptionLabel.text + } +} + private extension UIRefreshControl { func simulatePullToRefresh() { allTargets.forEach { target in From a8d8706872b8c241056d0020c4943ee08a02edbc Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 13:09:12 +0200 Subject: [PATCH 047/125] Does not alter current feed rendering state on load error --- .../EssentialFeediOS/FeedViewController.swift | 10 ++++-- .../FeedViewControllerTests.swift | 31 ++++++++++++++----- 2 files changed, 31 insertions(+), 10 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index 4566186..d9a97b7 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -37,9 +37,13 @@ public final class FeedViewController: UITableViewController { @objc func load() { refreshControl?.beginRefreshing() loader?.load { [weak self] result in - self?.tableModel = (try? result.get()) ?? [] - self?.tableView.reloadData() - self?.refreshControl?.endRefreshing() + switch result { + case let .success(feed): + self?.tableModel = feed + self?.tableView.reloadData() + self?.refreshControl?.endRefreshing() + case .failure: break + } } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index a53d4fd..b1e8065 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -79,6 +79,19 @@ final class FeedViewControllerTests: XCTestCase { assertThat(sut, isRendering: [image0, image1, image2, image3]) } + func test_loadFeedCompletion_doesNotAlterCurrentRenderingStateOnError() { + let image0 = makeImage() + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [image0], at: 0) + assertThat(sut, isRendering: [image0]) + + sut.simulateUserInitiatedFeedReload() + loader.completeFeedLoadingWithError(at: 1) + assertThat(sut, isRendering: [image0]) + } + // MARK: - Helper private func makeSUT( @@ -101,13 +114,13 @@ final class FeedViewControllerTests: XCTestCase { file: StaticString = #file, line: UInt = #line ) { - XCTAssertEqual( - sut.numberOfRenderedFeedImageViews(), - feed.count, - "Expected \(feed.count) images, got \(sut.numberOfRenderedFeedImageViews()) instead", - file: file, - line: line - ) + guard sut.numberOfRenderedFeedImageViews() == feed.count else { + return XCTFail( + "Expected \(feed.count) images, got \(sut.numberOfRenderedFeedImageViews()) instead", + file: file, + line: line + ) + } feed.enumerated().forEach { assertThat( @@ -154,6 +167,10 @@ final class FeedViewControllerTests: XCTestCase { func completeFeedLoading(with feed: [FeedImage] = [], at index: Int) { completions[index](.success(feed)) } + + func completeFeedLoadingWithError(at index: Int) { + completions[index](.failure(NSError(domain: "any error", code: 0, userInfo: nil))) + } } } From 2d0d9d63b443fda45d659ad1767fa00a7c4b61d5 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 13:13:57 +0200 Subject: [PATCH 048/125] Hide loading indicator on both error and success --- .../EssentialFeediOS/FeedViewController.swift | 6 ++---- .../FeedViewControllerTests.swift | 11 ++++++----- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index d9a97b7..69dc789 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -37,12 +37,10 @@ public final class FeedViewController: UITableViewController { @objc func load() { refreshControl?.beginRefreshing() loader?.load { [weak self] result in - switch result { - case let .success(feed): + self?.refreshControl?.endRefreshing() + if let feed = try? result.get() { self?.tableModel = feed self?.tableView.reloadData() - self?.refreshControl?.endRefreshing() - case .failure: break } } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index b1e8065..b1963c3 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -46,16 +46,17 @@ final class FeedViewControllerTests: XCTestCase { let (sut, loader) = makeSUT() sut.simulateAppearance() - XCTAssertTrue(sut.isShowingLoadingIndicator, "Expect loading indicator to be visible on viewAppearance") + XCTAssertTrue(sut.isShowingLoadingIndicator, "Expect loading indicator on viewAppearance") loader.completeFeedLoading(at: 0) - XCTAssertFalse(sut.isShowingLoadingIndicator, "Expect loading indicator to be hidden once loading is completed") + XCTAssertFalse(sut.isShowingLoadingIndicator, "Expect no loading indicator once loading completes succesfully") sut.simulateUserInitiatedFeedReload() - XCTAssertTrue(sut.isShowingLoadingIndicator, "Expect loading indicator to be visible again after user initiates reload") + XCTAssertTrue(sut.isShowingLoadingIndicator, "Expect loading indicator once user initiates a reload") + + loader.completeFeedLoadingWithError(at: 1) + XCTAssertFalse(sut.isShowingLoadingIndicator, "Expect no loading indicator once loading completes with error") - loader.completeFeedLoading(at: 1) - XCTAssertFalse(sut.isShowingLoadingIndicator, "Expect loading indicator to be hidden once user initiated feed reload is done") } func test_loadFeedCompletion_rendersSuccesfullyLoadedFeed() { From 366a52321b8a6a22208adbcb1dcc870de23ec3f1 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 13:29:23 +0200 Subject: [PATCH 049/125] Load image url when load view is visible --- .../EssentialFeediOS/FeedViewController.swift | 18 ++++-- .../FeedViewControllerTests.swift | 60 +++++++++++++++---- 2 files changed, 63 insertions(+), 15 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index 69dc789..0dff4cc 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -8,15 +8,24 @@ import EssentialFeed import UIKit +public protocol FeedImageDataLoader { + func loadImageData(from url: URL) +} + public final class FeedViewController: UITableViewController { - private var loader: FeedLoader? + private var feedLoader: FeedLoader? + private var imageLoader: FeedImageDataLoader? private var tableModel = [FeedImage]() private var onViewIsAppearing: ((FeedViewController) -> ())? - public convenience init(loader: FeedLoader) { + public convenience init( + loader: FeedLoader, + imageLoader: FeedImageDataLoader + ) { self.init() - self.loader = loader + self.feedLoader = loader + self.imageLoader = imageLoader } public override func viewDidLoad() { @@ -36,7 +45,7 @@ public final class FeedViewController: UITableViewController { @objc func load() { refreshControl?.beginRefreshing() - loader?.load { [weak self] result in + feedLoader?.load { [weak self] result in self?.refreshControl?.endRefreshing() if let feed = try? result.get() { self?.tableModel = feed @@ -55,6 +64,7 @@ public final class FeedViewController: UITableViewController { cell.locationContainer.isHidden = (cellModel.location == nil) cell.locationLabel.text = cellModel.location cell.descriptionLabel.text = cellModel.description + imageLoader?.loadImageData(from: cellModel.url) return cell } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index b1963c3..12758b9 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -30,16 +30,16 @@ final class FeedViewControllerTests: XCTestCase { func test_loadFeedActions_requestFeedFromLoader() { let (sut, loader) = makeSUT() - XCTAssertEqual(loader.loadCallCount, 0, "Expect no loading requests before view is load") + XCTAssertEqual(loader.loadFeedCallCount, 0, "Expect no loading requests before view is load") sut.simulateAppearance() - XCTAssertEqual(loader.loadCallCount, 1, "Expect a loading request once view is loaded") + XCTAssertEqual(loader.loadFeedCallCount, 1, "Expect a loading request once view is loaded") sut.simulateUserInitiatedFeedReload() - XCTAssertEqual(loader.loadCallCount, 2, "Expect another loading request after user initiates reload") + XCTAssertEqual(loader.loadFeedCallCount, 2, "Expect another loading request after user initiates reload") sut.simulateUserInitiatedFeedReload() - XCTAssertEqual(loader.loadCallCount, 3, "Expect a third loading request once user initiates another reload") + XCTAssertEqual(loader.loadFeedCallCount, 3, "Expect a third loading request once user initiates another reload") } func test_loadingFeedIndicator_isVisibleWhileLoadingFeed() { @@ -93,6 +93,23 @@ final class FeedViewControllerTests: XCTestCase { assertThat(sut, isRendering: [image0]) } + func test_feedImageView_loadsImageURLWhenVisible() { + let image0 = makeImage(url: URL(string: "http://url-0.com")!) + let image1 = makeImage(url: URL(string: "http://url-1.com")!) + + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [image0, image1], at: 0) + XCTAssertEqual(loader.loadedImageURLs, [], "Expected no image URL requests until views become visible") + + sut.simulateFeedImageViewVisible(at: 0) + XCTAssertEqual(loader.loadedImageURLs, [image0.url], "Expected first image URL request once first view becomes visible") + + sut.simulateFeedImageViewVisible(at: 1) + XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url], "Expected second image URL request once second view also becomes visible") + } + // MARK: - Helper private func makeSUT( @@ -103,7 +120,10 @@ final class FeedViewControllerTests: XCTestCase { loader: LoaderSpy ) { let loader = LoaderSpy() - let sut = FeedViewController(loader: loader) + let sut = FeedViewController( + loader: loader, + imageLoader: loader + ) trackForMemoryLeaks(loader, file: file, line: line) trackForMemoryLeaks(sut, file: file, line: line) return (sut, loader) @@ -157,21 +177,35 @@ final class FeedViewControllerTests: XCTestCase { } - class LoaderSpy: FeedLoader { - private(set) var completions = [(FeedLoader.Result) -> Void]() - var loadCallCount: Int { completions.count } + class LoaderSpy: FeedLoader, FeedImageDataLoader { + + // MARK: - FeedLoader + + private(set) var feedRequests = [(FeedLoader.Result) -> Void]() + + var loadFeedCallCount: Int { feedRequests.count } + func load(completion: @escaping (FeedLoader.Result) -> Void) { - completions.append(completion) + feedRequests.append(completion) } + func completeFeedLoading(with feed: [FeedImage] = [], at index: Int) { - completions[index](.success(feed)) + feedRequests[index](.success(feed)) } func completeFeedLoadingWithError(at index: Int) { - completions[index](.failure(NSError(domain: "any error", code: 0, userInfo: nil))) + feedRequests[index](.failure(NSError(domain: "any error", code: 0, userInfo: nil))) } + + // MARK: - FeedImageDataLoader + + private(set) var loadedImageURLs: [URL] = [] + func loadImageData(from url: URL) { + loadedImageURLs.append(url) + } + } } @@ -181,6 +215,10 @@ private extension FeedViewController { refreshControl?.simulatePullToRefresh() } + func simulateFeedImageViewVisible(at index: Int) { + _ = feedImageView(at: index) + } + var isShowingLoadingIndicator: Bool { refreshControl?.isRefreshing == true } From 8c95739d727dcc80df0db67739c6dc18fd2fe50c Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 13:40:49 +0200 Subject: [PATCH 050/125] Cancel image loading when image view is not visible anymore --- .../EssentialFeediOS/FeedViewController.swift | 6 ++++ .../FeedViewControllerTests.swift | 33 +++++++++++++++++-- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index 0dff4cc..a8e82c5 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -10,6 +10,7 @@ import UIKit public protocol FeedImageDataLoader { func loadImageData(from url: URL) + func cancelImageDataLoad(from url: URL) } public final class FeedViewController: UITableViewController { @@ -67,4 +68,9 @@ public final class FeedViewController: UITableViewController { imageLoader?.loadImageData(from: cellModel.url) return cell } + + public override func tableView(_ tableView: UITableView, didEndDisplaying cell: UITableViewCell, forRowAt indexPath: IndexPath) { + let cellModel = tableModel[indexPath.row] + imageLoader?.cancelImageDataLoad(from: cellModel.url) + } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 12758b9..4eeacdf 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -110,6 +110,22 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url], "Expected second image URL request once second view also becomes visible") } + func test_feedImageView_cancelsImageLoadingWhenNotVisibleAnymore() { + let image0 = makeImage(url: URL(string: "http://url-0.com")!) + let image1 = makeImage(url: URL(string: "http://url-1.com")!) + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [image0, image1], at: 0) + XCTAssertEqual(loader.cancelledImageURls, [], "Expected no cancelled image URL requests until image is not visible") + + sut.simulateFeedImageNotViewVisible(at: 0) + XCTAssertEqual(loader.cancelledImageURls, [image0.url], "Expected one cancelled image URL request once first image is not visible anymore") + + sut.simulateFeedImageNotViewVisible(at: 1) + XCTAssertEqual(loader.cancelledImageURls, [image0.url, image1.url], "Expected two cancelled image URL requests once second image is also not visible anymore") + } + // MARK: - Helper private func makeSUT( @@ -202,10 +218,14 @@ final class FeedViewControllerTests: XCTestCase { // MARK: - FeedImageDataLoader private(set) var loadedImageURLs: [URL] = [] + private(set) var cancelledImageURls: [URL] = [] func loadImageData(from url: URL) { loadedImageURLs.append(url) } + func cancelImageDataLoad(from url: URL) { + cancelledImageURls.append(url) + } } } @@ -215,8 +235,17 @@ private extension FeedViewController { refreshControl?.simulatePullToRefresh() } - func simulateFeedImageViewVisible(at index: Int) { - _ = feedImageView(at: index) + @discardableResult + func simulateFeedImageViewVisible(at index: Int) -> FeedImageCell? { + return feedImageView(at: index) as? FeedImageCell + } + + func simulateFeedImageNotViewVisible(at row: Int) { + let view = simulateFeedImageViewVisible(at: row) + + let delegate = tableView.delegate + let index = IndexPath(row: row, section: feedImageSection) + delegate?.tableView?(tableView, didEndDisplaying: view!, forRowAt: index) } var isShowingLoadingIndicator: Bool { From 0bd0ed7b845b8fd516bdcf97786c05b8bb7b0568 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 13:49:51 +0200 Subject: [PATCH 051/125] Extract the `cancelImageDataLoad(from:)` method from `FeedImageDataLoaderTask` protocol into a new `FeedImageDataLoaderTask` protocol that represents a task that can be cancelled. This way, we respect the Interface Segregation Principle and `FeedImageDataLoader` implementation are not forced to be stateful --- .../EssentialFeediOS/FeedViewController.swift | 15 ++++++++++----- .../FeedViewControllerTests.swift | 16 +++++++++++----- 2 files changed, 21 insertions(+), 10 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index a8e82c5..c10de5c 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -8,9 +8,12 @@ import EssentialFeed import UIKit +public protocol FeedImageDataLoaderTask { + func cancel() +} + public protocol FeedImageDataLoader { - func loadImageData(from url: URL) - func cancelImageDataLoad(from url: URL) + func loadImageData(from url: URL) -> FeedImageDataLoaderTask } public final class FeedViewController: UITableViewController { @@ -18,6 +21,8 @@ public final class FeedViewController: UITableViewController { private var imageLoader: FeedImageDataLoader? private var tableModel = [FeedImage]() + private var tasks = [IndexPath: FeedImageDataLoaderTask]() + private var onViewIsAppearing: ((FeedViewController) -> ())? public convenience init( @@ -65,12 +70,12 @@ public final class FeedViewController: UITableViewController { cell.locationContainer.isHidden = (cellModel.location == nil) cell.locationLabel.text = cellModel.location cell.descriptionLabel.text = cellModel.description - imageLoader?.loadImageData(from: cellModel.url) + tasks[indexPath] = imageLoader?.loadImageData(from: cellModel.url) return cell } public override func tableView(_ tableView: UITableView, didEndDisplaying cell: UITableViewCell, forRowAt indexPath: IndexPath) { - let cellModel = tableModel[indexPath.row] - imageLoader?.cancelImageDataLoad(from: cellModel.url) + tasks[indexPath]?.cancel() + tasks[indexPath] = nil } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 4eeacdf..49cf02f 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -217,14 +217,20 @@ final class FeedViewControllerTests: XCTestCase { // MARK: - FeedImageDataLoader + private struct TaskSpy: FeedImageDataLoaderTask { + let cancelCallback: () -> Void + func cancel() { + cancelCallback() + } + } + private(set) var loadedImageURLs: [URL] = [] private(set) var cancelledImageURls: [URL] = [] - func loadImageData(from url: URL) { + func loadImageData(from url: URL) -> FeedImageDataLoaderTask { loadedImageURLs.append(url) - } - - func cancelImageDataLoad(from url: URL) { - cancelledImageURls.append(url) + return TaskSpy { [weak self] in + self?.cancelledImageURls.append(url) + } } } } From a1d2e9d124aca425e39c13542aaf11d5991013d7 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 14:05:57 +0200 Subject: [PATCH 052/125] Feed image view loding indicator is visible while loading image --- .../EssentialFeediOS/FeedImageCell.swift | 1 + .../EssentialFeediOS/FeedViewController.swift | 8 ++- .../EssentialFeediOS/UIView+Shimmering.swift | 42 ++++++++++++++ .../FeedViewControllerTests.swift | 57 ++++++++++++++++++- 4 files changed, 103 insertions(+), 5 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/UIView+Shimmering.swift diff --git a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift index 76fb622..4cd72d6 100644 --- a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift +++ b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift @@ -11,4 +11,5 @@ public final class FeedImageCell: UITableViewCell { public let locationContainer = UIView() public let locationLabel = UILabel() public let descriptionLabel = UILabel() + public let feedImageContainer = UIView() } diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index c10de5c..a1ea500 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -13,7 +13,8 @@ public protocol FeedImageDataLoaderTask { } public protocol FeedImageDataLoader { - func loadImageData(from url: URL) -> FeedImageDataLoaderTask + typealias Result = Swift.Result + func loadImageData(from url: URL, completion: @escaping (Result) -> Void) -> FeedImageDataLoaderTask } public final class FeedViewController: UITableViewController { @@ -70,7 +71,10 @@ public final class FeedViewController: UITableViewController { cell.locationContainer.isHidden = (cellModel.location == nil) cell.locationLabel.text = cellModel.location cell.descriptionLabel.text = cellModel.description - tasks[indexPath] = imageLoader?.loadImageData(from: cellModel.url) + cell.feedImageContainer.startShimmering() + tasks[indexPath] = imageLoader?.loadImageData(from: cellModel.url) { [weak cell] result in + cell?.feedImageContainer.stopShimmering() + } return cell } diff --git a/EssentialFeed/EssentialFeediOS/UIView+Shimmering.swift b/EssentialFeed/EssentialFeediOS/UIView+Shimmering.swift new file mode 100644 index 0000000..d519370 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/UIView+Shimmering.swift @@ -0,0 +1,42 @@ +// +// UIView+Shimmering.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 11/4/25. +// +import UIKit + +extension UIView { + public var isShimmering: Bool { + return layer.mask?.animation(forKey: shimmerAnimationKey) != nil + } + private var shimmerAnimationKey: String { + "shimmer" + } + + func startShimmering() { + let white = UIColor.white.cgColor + let alpha = UIColor.white.withAlphaComponent(0.7).cgColor + let width = bounds.width + let height = bounds.height + + let gradient = CAGradientLayer() + gradient.colors = [alpha, white, alpha] + gradient.startPoint = CGPoint(x: 0.0, y: 0.4) + gradient.endPoint = CGPoint(x: 1.0, y: 0.6) + gradient.locations = [0.4, 0.5, 0.6] + gradient.frame = CGRect(x: -width, y: 0, width: width*3, height: height) + layer.mask = gradient + + let animation = CABasicAnimation(keyPath: #keyPath(CAGradientLayer.locations)) + animation.fromValue = [0.0, 0.1, 0.2] + animation.toValue = [0.8, 0.9, 1.0] + animation.duration = 1 + animation.repeatCount = .infinity + gradient.add(animation, forKey: shimmerAnimationKey) + } + + func stopShimmering() { + layer.mask = nil + } +} diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 49cf02f..eb8a618 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -126,6 +126,29 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.cancelledImageURls, [image0.url, image1.url], "Expected two cancelled image URL requests once second image is also not visible anymore") } + func test_feedImageViewLoadingIndicator_isVisibleWhileLoadingImage() { + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [makeImage(), makeImage()], at: 0) + + let view0 = sut.simulateFeedImageViewVisible(at: 0) + let view1 = sut.simulateFeedImageViewVisible(at: 1) + + + XCTAssertEqual(view0?.isShowingImageLoadingIndicator, true, "Expected loading indicator for first view while loading first image") + XCTAssertEqual(view1?.isShowingImageLoadingIndicator, true, "Expected loading indicator for second view while loading second image") + + loader.completeImageLoading(at: 0) + XCTAssertEqual(view0?.isShowingImageLoadingIndicator, false, "Expected no loading indicator for first view once first image loading completes successfully") + XCTAssertEqual(view1?.isShowingImageLoadingIndicator, true, "Expected loading indicator for second view once second image loading completes successfully") + + + loader.completeImageLoadingWithError(at: 1) + XCTAssertEqual(view0?.isShowingImageLoadingIndicator, false, "Expected no loading indicator for first view once second image loading completes with error") + XCTAssertEqual(view1?.isShowingImageLoadingIndicator, false, "Expected no loading indicator for second view once second image completes with error") + } + // MARK: - Helper private func makeSUT( @@ -224,14 +247,38 @@ final class FeedViewControllerTests: XCTestCase { } } - private(set) var loadedImageURLs: [URL] = [] + private var imageRequests = [( + url: URL, + completion: (FeedImageDataLoader.Result) -> Void + )]() + + var loadedImageURLs: [URL] { + imageRequests.map { $0.url } + } + private(set) var cancelledImageURls: [URL] = [] - func loadImageData(from url: URL) -> FeedImageDataLoaderTask { - loadedImageURLs.append(url) + + + func loadImageData( + from url: URL, + completion: @escaping (FeedImageDataLoader.Result) -> Void + ) -> FeedImageDataLoaderTask { + + imageRequests.append((url: url, completion: completion)) + return TaskSpy { [weak self] in self?.cancelledImageURls.append(url) } } + + func completeImageLoading(with imageData: Data = Data(), at index: Int = 0) { + imageRequests[index].completion(.success(imageData)) + } + + func completeImageLoadingWithError(at index: Int = 0) { + let error = NSError(domain: "an error", code: 0) + imageRequests[index].completion(.failure(error)) + } } } @@ -320,6 +367,10 @@ private extension FeedImageCell { var descriptionText: String? { return descriptionLabel.text } + + var isShowingImageLoadingIndicator: Bool { + return feedImageContainer.isShimmering + } } private extension UIRefreshControl { From 8bf19eb9283973d9494c71d4e3f6c06725d9b93a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 14:42:13 +0200 Subject: [PATCH 053/125] Rendered loaded images from URL --- .../EssentialFeediOS/FeedImageCell.swift | 1 + .../EssentialFeediOS/FeedViewController.swift | 3 ++ .../FeedViewControllerTests.swift | 44 +++++++++++++++++++ 3 files changed, 48 insertions(+) diff --git a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift index 4cd72d6..9da3218 100644 --- a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift +++ b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift @@ -12,4 +12,5 @@ public final class FeedImageCell: UITableViewCell { public let locationLabel = UILabel() public let descriptionLabel = UILabel() public let feedImageContainer = UIView() + public let feedImageView = UIImageView() } diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index a1ea500..bec149a 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -71,8 +71,11 @@ public final class FeedViewController: UITableViewController { cell.locationContainer.isHidden = (cellModel.location == nil) cell.locationLabel.text = cellModel.location cell.descriptionLabel.text = cellModel.description + cell.feedImageView.image = nil cell.feedImageContainer.startShimmering() tasks[indexPath] = imageLoader?.loadImageData(from: cellModel.url) { [weak cell] result in + let data = try? result.get() + cell?.feedImageView.image = data.map(UIImage.init) ?? nil cell?.feedImageContainer.stopShimmering() } return cell diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index eb8a618..b46a47d 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -149,6 +149,30 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(view1?.isShowingImageLoadingIndicator, false, "Expected no loading indicator for second view once second image completes with error") } + func test_feedImageView_rendersImageLoadedFromURL() { + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [makeImage(), makeImage()], at: 0) + + let view0 = sut.simulateFeedImageViewVisible(at: 0) + let view1 = sut.simulateFeedImageViewVisible(at: 1) + + + XCTAssertEqual(view0?.renderedImage, .none, "Expected no image for 1st view hile loading 1st image") + XCTAssertEqual(view1?.renderedImage, .none, "Expected no image for 2nd view hile loading 2nd image") + + let imageData0 = UIImage.make(withColor: .red).pngData()! + loader.completeImageLoading(with: imageData0, at: 0) + XCTAssertEqual(view0?.renderedImage, imageData0, "Expected image for 1st view once 1st image loading completes succesfully") + XCTAssertEqual(view1?.renderedImage, .none, "Expected no image for 2nd view once 1st image loading completes succesfully") + + let imageData1 = UIImage.make(withColor: .blue).pngData()! + loader.completeImageLoading(with: imageData1, at: 1) + XCTAssertEqual(view0?.renderedImage, imageData0, "Expected no image state change for 1st view once 2nd image loading completes succesfully") + XCTAssertEqual(view1?.renderedImage, imageData1, "Expected image for 2nd view once 2nd image loading completes succesfully") + } + // MARK: - Helper private func makeSUT( @@ -371,6 +395,10 @@ private extension FeedImageCell { var isShowingImageLoadingIndicator: Bool { return feedImageContainer.isShimmering } + + var renderedImage: Data? { + return feedImageView.image?.pngData() + } } private extension UIRefreshControl { @@ -382,3 +410,19 @@ private extension UIRefreshControl { } } } + +extension UIImage { + static func make(withColor color: UIColor) -> UIImage { + let rect = CGRect(x: 0, y: 0, width: 1, height: 1) + let format = UIGraphicsImageRendererFormat() + format.scale = 1 + + return UIGraphicsImageRenderer( + size: rect.size, + format: format + ).image { rendererContext in + color.setFill() + rendererContext.fill(rect) + } + } +} From e8399b419222e912a9ac52640d22208029deb317 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 14:57:37 +0200 Subject: [PATCH 054/125] Feed image view retry button is visible on image url load error --- .../EssentialFeediOS/FeedImageCell.swift | 1 + .../EssentialFeediOS/FeedViewController.swift | 2 ++ .../FeedViewControllerTests.swift | 31 +++++++++++++++++++ 3 files changed, 34 insertions(+) diff --git a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift index 9da3218..820d59d 100644 --- a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift +++ b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift @@ -13,4 +13,5 @@ public final class FeedImageCell: UITableViewCell { public let descriptionLabel = UILabel() public let feedImageContainer = UIView() public let feedImageView = UIImageView() + public let feedImageRetryButton = UIButton() } diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index bec149a..338c6f5 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -72,10 +72,12 @@ public final class FeedViewController: UITableViewController { cell.locationLabel.text = cellModel.location cell.descriptionLabel.text = cellModel.description cell.feedImageView.image = nil + cell.feedImageRetryButton.isHidden = true cell.feedImageContainer.startShimmering() tasks[indexPath] = imageLoader?.loadImageData(from: cellModel.url) { [weak cell] result in let data = try? result.get() cell?.feedImageView.image = data.map(UIImage.init) ?? nil + cell?.feedImageRetryButton.isHidden = (data != nil) cell?.feedImageContainer.stopShimmering() } return cell diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index b46a47d..1bc151e 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -173,6 +173,33 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(view1?.renderedImage, imageData1, "Expected image for 2nd view once 2nd image loading completes succesfully") } + func test_feedImageViewRetryButton_isVisibleOnImageURLLoadError() { + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [makeImage(), makeImage()], at: 0) + + let view0 = sut.simulateFeedImageViewVisible(at: 0) + let view1 = sut.simulateFeedImageViewVisible(at: 1) + + XCTAssertEqual(view0?.isShowingRetryAction, false, "Expected no retry action for first view while loading first image") + XCTAssertEqual(view1?.isShowingRetryAction, false, "Expected no retry action for second view while loading second image") + + let imageData0 = UIImage.make(withColor: .red).pngData()! + loader.completeImageLoading(with: imageData0, at: 0) + XCTAssertEqual(view0?.isShowingRetryAction, false, "Expected no retry action for first view once first image loading completes successfully") + XCTAssertEqual(view1?.isShowingRetryAction, false, "Expected no retry action for second view once first image loading completes successfully") + + let imageData1 = UIImage.make(withColor: .blue).pngData()! + loader.completeImageLoading(with: imageData1, at: 1) + XCTAssertEqual(view0?.isShowingRetryAction, false, "Expected no retry action for first view once second image loading completes successfully") + XCTAssertEqual(view1?.isShowingRetryAction, false, "Expected no retry action for second view once second image loading completes successfully") + + loader.completeImageLoadingWithError(at: 1) + XCTAssertEqual(view0?.isShowingRetryAction, false, "Expected no retry action state change for first view once second image loading completes with error") + XCTAssertEqual(view1?.isShowingRetryAction, true, "Expected retry action for second view once second image loading completes with error") + } + // MARK: - Helper private func makeSUT( @@ -399,6 +426,10 @@ private extension FeedImageCell { var renderedImage: Data? { return feedImageView.image?.pngData() } + + var isShowingRetryAction: Bool { + feedImageRetryButton.isHidden == false + } } private extension UIRefreshControl { From 96ffb7dd16bb9ab218a5a02bda8ce4d456af6325 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 15:03:51 +0200 Subject: [PATCH 055/125] Feed image retry button is visible when image loader delivers invalid data --- .../EssentialFeediOS/FeedViewController.swift | 5 +++-- .../FeedViewControllerTests.swift | 14 ++++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index 338c6f5..86c09e2 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -76,8 +76,9 @@ public final class FeedViewController: UITableViewController { cell.feedImageContainer.startShimmering() tasks[indexPath] = imageLoader?.loadImageData(from: cellModel.url) { [weak cell] result in let data = try? result.get() - cell?.feedImageView.image = data.map(UIImage.init) ?? nil - cell?.feedImageRetryButton.isHidden = (data != nil) + let image = data.map(UIImage.init) ?? nil + cell?.feedImageView.image = image + cell?.feedImageRetryButton.isHidden = (image != nil) cell?.feedImageContainer.stopShimmering() } return cell diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 1bc151e..8dfb60a 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -200,6 +200,20 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(view1?.isShowingRetryAction, true, "Expected retry action for second view once second image loading completes with error") } + func test_feedImageViewRetryButton_isVisibleOnInvalidImageData() { + + let (sut, loader) = makeSUT() + sut.simulateAppearance() + loader.completeFeedLoading(with: [makeImage()], at: 0) + + let view = sut.simulateFeedImageViewVisible(at: 0) + XCTAssertEqual(view?.isShowingRetryAction, false, "Expeced no retry action while loading image") + + let invalidImageData = Data("invalid image data".utf8) + loader.completeImageLoading(with: invalidImageData, at: 0) + XCTAssertEqual(view?.isShowingRetryAction, true, "Expected retry action once image loading completes with invalid image data") + } + // MARK: - Helper private func makeSUT( From a4c569451f0e10f3eddf64c5d8f13ed5f509084d Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 15:22:54 +0200 Subject: [PATCH 056/125] Retry failed image load on retry action --- .../EssentialFeediOS/FeedImageCell.swift | 14 ++++++- .../EssentialFeediOS/FeedViewController.swift | 18 ++++++--- .../FeedViewControllerTests.swift | 38 +++++++++++++++++++ 3 files changed, 63 insertions(+), 7 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift index 820d59d..f44364a 100644 --- a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift +++ b/EssentialFeed/EssentialFeediOS/FeedImageCell.swift @@ -13,5 +13,17 @@ public final class FeedImageCell: UITableViewCell { public let descriptionLabel = UILabel() public let feedImageContainer = UIView() public let feedImageView = UIImageView() - public let feedImageRetryButton = UIButton() + + private(set) public lazy var feedImageRetryButton: UIButton = { + let button = UIButton() + button.addTarget(self, action: #selector(retryButtonTapped), for: .touchUpInside) + return button + }() + + var onRetry: (() -> Void)? + + @objc + func retryButtonTapped() { + onRetry?() + } } diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index 86c09e2..1ab9f43 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -74,13 +74,19 @@ public final class FeedViewController: UITableViewController { cell.feedImageView.image = nil cell.feedImageRetryButton.isHidden = true cell.feedImageContainer.startShimmering() - tasks[indexPath] = imageLoader?.loadImageData(from: cellModel.url) { [weak cell] result in - let data = try? result.get() - let image = data.map(UIImage.init) ?? nil - cell?.feedImageView.image = image - cell?.feedImageRetryButton.isHidden = (image != nil) - cell?.feedImageContainer.stopShimmering() + let loadImage = { [weak self, cell] in + guard let self else { return } + self.tasks[indexPath] = self.imageLoader?.loadImageData(from: cellModel.url) { [weak cell] result in + let data = try? result.get() + let image = data.map(UIImage.init) ?? nil + cell?.feedImageView.image = image + cell?.feedImageRetryButton.isHidden = (image != nil) + cell?.feedImageContainer.stopShimmering() + } } + + cell.onRetry = loadImage + loadImage() return cell } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 8dfb60a..d640ef2 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -214,6 +214,30 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(view?.isShowingRetryAction, true, "Expected retry action once image loading completes with invalid image data") } + func test_feedImageViewRetryActiion_retrievesImageLoad() { + let image0 = makeImage(url: URL(string: "http://url-0.com")!) + let image1 = makeImage(url: URL(string: "http://url-1.com")!) + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [image0, image1], at: 0) + + let view0 = sut.simulateFeedImageViewVisible(at: 0) + let view1 = sut.simulateFeedImageViewVisible(at: 1) + XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url], "Expected two image URL request for two visible views") + + loader.completeImageLoadingWithError(at: 0) + loader.completeImageLoadingWithError(at: 1) + XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url], "Expected only two image URL requests before retry action") + + view0?.simulateRetryAction() + XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url, image0.url], "Expected third imageURL request after first view retry action") + + view1?.simulateRetryAction() + XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url, image0.url, image1.url], "Expected fourth imageURL request after second view retry action") + + } + // MARK: - Helper private func makeSUT( @@ -444,6 +468,20 @@ private extension FeedImageCell { var isShowingRetryAction: Bool { feedImageRetryButton.isHidden == false } + + func simulateRetryAction() { + feedImageRetryButton.simulateTap() + } +} + +private extension UIButton { + func simulateTap() { + allTargets.forEach { target in + actions(forTarget: target, forControlEvent: .touchUpInside)?.forEach { + (target as NSObject).perform(Selector($0)) + } + } + } } private extension UIRefreshControl { From 42196c83bd06b8b8de81655f194eeb2e0e593d12 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 15:29:11 +0200 Subject: [PATCH 057/125] Preload image url when image view is near visible --- .../EssentialFeediOS/FeedViewController.swift | 12 +++++++++- .../FeedViewControllerTests.swift | 22 +++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index 1ab9f43..736a619 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -17,7 +17,7 @@ public protocol FeedImageDataLoader { func loadImageData(from url: URL, completion: @escaping (Result) -> Void) -> FeedImageDataLoaderTask } -public final class FeedViewController: UITableViewController { +public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { private var feedLoader: FeedLoader? private var imageLoader: FeedImageDataLoader? private var tableModel = [FeedImage]() @@ -40,6 +40,9 @@ public final class FeedViewController: UITableViewController { refreshControl = UIRefreshControl() refreshControl?.addTarget(self, action: #selector(load), for: .valueChanged) + + tableView.prefetchDataSource = self + onViewIsAppearing = { vc in vc.load() vc.onViewIsAppearing = nil @@ -94,4 +97,11 @@ public final class FeedViewController: UITableViewController { tasks[indexPath]?.cancel() tasks[indexPath] = nil } + + public func tableView(_ tableView: UITableView, prefetchRowsAt indexPaths: [IndexPath]) { + indexPaths.forEach { indexPath in + let cellModel = tableModel[indexPath.row] + _ = imageLoader?.loadImageData(from: cellModel.url) { _ in } + } + } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index d640ef2..1b244ef 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -235,7 +235,23 @@ final class FeedViewControllerTests: XCTestCase { view1?.simulateRetryAction() XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url, image0.url, image1.url], "Expected fourth imageURL request after second view retry action") + } + + func test_feedImageView_preloadsImageURLWhenNearVisible() { + let image0 = makeImage(url: URL(string: "http://url-0.com")!) + let image1 = makeImage(url: URL(string: "http://url-1.com")!) + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [image0, image1], at: 0) + XCTAssertEqual(loader.loadedImageURLs, [], "Expected no image URL requests until image is near visible") + + sut.simulateFeedImageViewNearVisible(at: 0) + XCTAssertEqual(loader.loadedImageURLs, [image0.url], "Expected first image URL request once first image is near visible") + + sut.simulateFeedImageViewNearVisible(at: 1) + XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url], "Expected second image URL request once second image is near visible") } // MARK: - Helper @@ -382,6 +398,12 @@ private extension FeedViewController { return feedImageView(at: index) as? FeedImageCell } + func simulateFeedImageViewNearVisible(at row: Int) { + let ds = tableView.prefetchDataSource + let index = IndexPath(row: row, section: feedImageSection) + ds?.tableView(tableView, prefetchRowsAt: [index]) + } + func simulateFeedImageNotViewVisible(at row: Int) { let view = simulateFeedImageViewVisible(at: row) From f23753419741500d770e70fabd3f335a869da05c Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 11 Apr 2025 15:34:49 +0200 Subject: [PATCH 058/125] Cancel image URL prefetching when image view is not near visible anymore --- .../EssentialFeediOS/FeedViewController.swift | 12 +++++-- .../FeedViewControllerTests.swift | 35 ++++++++++++++++--- 2 files changed, 40 insertions(+), 7 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/FeedViewController.swift index 736a619..6780573 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/FeedViewController.swift @@ -94,8 +94,7 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou } public override func tableView(_ tableView: UITableView, didEndDisplaying cell: UITableViewCell, forRowAt indexPath: IndexPath) { - tasks[indexPath]?.cancel() - tasks[indexPath] = nil + cancelTask(forRowAt: indexPath) } public func tableView(_ tableView: UITableView, prefetchRowsAt indexPaths: [IndexPath]) { @@ -104,4 +103,13 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou _ = imageLoader?.loadImageData(from: cellModel.url) { _ in } } } + + public func tableView(_ tableView: UITableView, cancelPrefetchingForRowsAt indexPaths: [IndexPath]) { + indexPaths.forEach(cancelTask) + } + + private func cancelTask(forRowAt indexPath: IndexPath) { + tasks[indexPath]?.cancel() + tasks[indexPath] = nil + } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 1b244ef..c52b614 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -254,6 +254,23 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadedImageURLs, [image0.url, image1.url], "Expected second image URL request once second image is near visible") } + func test_feedImageView_cancelsImageURLPreloadingWhenNotNearVisibleAnymore() { + let image0 = makeImage(url: URL(string: "http://url-0.com")!) + let image1 = makeImage(url: URL(string: "http://url-1.com")!) + + let (sut, loader) = makeSUT() + + sut.simulateAppearance() + loader.completeFeedLoading(with: [image0, image1], at: 0) + XCTAssertEqual(loader.loadedImageURLs, [], "Expected no image URL requests until image is near visible") + + sut.simulateFeedImageViewNotNearVisible(at: 0) + XCTAssertEqual(loader.cancelledImageURls, [image0.url], "Expected first image URL request once first image is near visible") + + sut.simulateFeedImageViewNotNearVisible(at: 1) + XCTAssertEqual(loader.cancelledImageURls, [image0.url, image1.url], "Expected second image URL request once second image is near visible") + } + // MARK: - Helper private func makeSUT( @@ -398,11 +415,6 @@ private extension FeedViewController { return feedImageView(at: index) as? FeedImageCell } - func simulateFeedImageViewNearVisible(at row: Int) { - let ds = tableView.prefetchDataSource - let index = IndexPath(row: row, section: feedImageSection) - ds?.tableView(tableView, prefetchRowsAt: [index]) - } func simulateFeedImageNotViewVisible(at row: Int) { let view = simulateFeedImageViewVisible(at: row) @@ -412,6 +424,19 @@ private extension FeedViewController { delegate?.tableView?(tableView, didEndDisplaying: view!, forRowAt: index) } + func simulateFeedImageViewNearVisible(at row: Int) { + let ds = tableView.prefetchDataSource + let index = IndexPath(row: row, section: feedImageSection) + ds?.tableView(tableView, prefetchRowsAt: [index]) + } + + func simulateFeedImageViewNotNearVisible(at row: Int) { + simulateFeedImageViewVisible(at: row) + let ds = tableView.prefetchDataSource + let index = IndexPath(row: row, section: feedImageSection) + ds?.tableView?(tableView, cancelPrefetchingForRowsAt: [index]) + } + var isShowingLoadingIndicator: Bool { refreshControl?.isRefreshing == true } From 38e13dfb5db6727d0e873eb7551d7241fdba842f Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 09:45:26 +0200 Subject: [PATCH 059/125] Group controllers , views and data loader into their own folders for better organization --- .../Feed Image Loder/FeedImageDataLoader.swift | 16 ++++++++++++++++ .../Controllers}/FeedViewController.swift | 9 --------- .../{ => Feed UI/Views}/FeedImageCell.swift | 0 .../{ => Feed UI/Views}/UIView+Shimmering.swift | 0 4 files changed, 16 insertions(+), 9 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed Image Loder/FeedImageDataLoader.swift rename EssentialFeed/EssentialFeediOS/{ => Feed UI/Controllers}/FeedViewController.swift (93%) rename EssentialFeed/EssentialFeediOS/{ => Feed UI/Views}/FeedImageCell.swift (100%) rename EssentialFeed/EssentialFeediOS/{ => Feed UI/Views}/UIView+Shimmering.swift (100%) diff --git a/EssentialFeed/EssentialFeediOS/Feed Image Loder/FeedImageDataLoader.swift b/EssentialFeed/EssentialFeediOS/Feed Image Loder/FeedImageDataLoader.swift new file mode 100644 index 0000000..af57482 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed Image Loder/FeedImageDataLoader.swift @@ -0,0 +1,16 @@ +// +// FeedImageDataLoader.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 14/4/25. +// +import Foundation + +public protocol FeedImageDataLoaderTask { + func cancel() +} + +public protocol FeedImageDataLoader { + typealias Result = Swift.Result + func loadImageData(from url: URL, completion: @escaping (Result) -> Void) -> FeedImageDataLoaderTask +} diff --git a/EssentialFeed/EssentialFeediOS/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift similarity index 93% rename from EssentialFeed/EssentialFeediOS/FeedViewController.swift rename to EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 6780573..9327a30 100644 --- a/EssentialFeed/EssentialFeediOS/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -8,15 +8,6 @@ import EssentialFeed import UIKit -public protocol FeedImageDataLoaderTask { - func cancel() -} - -public protocol FeedImageDataLoader { - typealias Result = Swift.Result - func loadImageData(from url: URL, completion: @escaping (Result) -> Void) -> FeedImageDataLoaderTask -} - public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { private var feedLoader: FeedLoader? private var imageLoader: FeedImageDataLoader? diff --git a/EssentialFeed/EssentialFeediOS/FeedImageCell.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedImageCell.swift similarity index 100% rename from EssentialFeed/EssentialFeediOS/FeedImageCell.swift rename to EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedImageCell.swift diff --git a/EssentialFeed/EssentialFeediOS/UIView+Shimmering.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Views/UIView+Shimmering.swift similarity index 100% rename from EssentialFeed/EssentialFeediOS/UIView+Shimmering.swift rename to EssentialFeed/EssentialFeediOS/Feed UI/Views/UIView+Shimmering.swift From 550e593ded3dfda81f8b92e4b7ba99e8bee26f3a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 10:03:05 +0200 Subject: [PATCH 060/125] wip: refactoring --- .../Controllers/FeedViewController.swift | 51 ++++++++++++------- 1 file changed, 34 insertions(+), 17 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 9327a30..7d5bb2b 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -8,8 +8,34 @@ import EssentialFeed import UIKit +final class FeedRefreshViewController: NSObject { + + private(set) lazy var view: UIRefreshControl = { + let view = UIRefreshControl() + view.addTarget(self, action: #selector(refresh), for: .valueChanged) + return view + }() + + private let feedLoader: FeedLoader + + var onRefresh: (([FeedImage]) -> Void)? + init(feedLoader: FeedLoader) { + self.feedLoader = feedLoader + } + + @objc func refresh() { + view.beginRefreshing() + feedLoader.load { [weak self] result in + self?.view.endRefreshing() + if let feed = try? result.get() { + self?.onRefresh?(feed) + } + } + } +} + public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { - private var feedLoader: FeedLoader? + private var refreshController: FeedRefreshViewController? private var imageLoader: FeedImageDataLoader? private var tableModel = [FeedImage]() @@ -22,20 +48,22 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou imageLoader: FeedImageDataLoader ) { self.init() - self.feedLoader = loader + self.refreshController = FeedRefreshViewController(feedLoader: loader) self.imageLoader = imageLoader } public override func viewDidLoad() { super.viewDidLoad() - refreshControl = UIRefreshControl() - refreshControl?.addTarget(self, action: #selector(load), for: .valueChanged) - + refreshControl = refreshController?.view + refreshController?.onRefresh = { [weak self] feed in + self?.tableModel = feed + self?.tableView.reloadData() + } tableView.prefetchDataSource = self onViewIsAppearing = { vc in - vc.load() + vc.refreshController?.refresh() vc.onViewIsAppearing = nil } } @@ -44,17 +72,6 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou onViewIsAppearing?(self) } - @objc func load() { - refreshControl?.beginRefreshing() - feedLoader?.load { [weak self] result in - self?.refreshControl?.endRefreshing() - if let feed = try? result.get() { - self?.tableModel = feed - self?.tableView.reloadData() - } - } - } - public override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return tableModel.count } From c1f84adaa7d774cca2eaeaf33d117ab035d5471e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 10:40:21 +0200 Subject: [PATCH 061/125] Extract `UIRefreshControl` creation/configuration and refresh logic with `FeedLoader` in the new `FeedRefreshViewController` --- .../FeedRefreshViewController.swift | 36 +++++++++++++++++++ .../Controllers/FeedViewController.swift | 28 ++------------- .../FeedViewControllerTests.swift | 3 +- 3 files changed, 40 insertions(+), 27 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift new file mode 100644 index 0000000..b71f8a4 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift @@ -0,0 +1,36 @@ +// +// FeedRefreshViewController.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 14/4/25. +// + + +import EssentialFeed +import UIKit + +public final class FeedRefreshViewController: NSObject { + + public lazy var view: UIRefreshControl = { + let view = UIRefreshControl() + view.addTarget(self, action: #selector(refresh), for: .valueChanged) + return view + }() + + private let feedLoader: FeedLoader + + var onRefresh: (([FeedImage]) -> Void)? + init(feedLoader: FeedLoader) { + self.feedLoader = feedLoader + } + + @objc func refresh() { + view.beginRefreshing() + feedLoader.load { [weak self] result in + self?.view.endRefreshing() + if let feed = try? result.get() { + self?.onRefresh?(feed) + } + } + } +} \ No newline at end of file diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 7d5bb2b..294af95 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -8,34 +8,10 @@ import EssentialFeed import UIKit -final class FeedRefreshViewController: NSObject { - - private(set) lazy var view: UIRefreshControl = { - let view = UIRefreshControl() - view.addTarget(self, action: #selector(refresh), for: .valueChanged) - return view - }() - - private let feedLoader: FeedLoader - - var onRefresh: (([FeedImage]) -> Void)? - init(feedLoader: FeedLoader) { - self.feedLoader = feedLoader - } - - @objc func refresh() { - view.beginRefreshing() - feedLoader.load { [weak self] result in - self?.view.endRefreshing() - if let feed = try? result.get() { - self?.onRefresh?(feed) - } - } - } -} + public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { - private var refreshController: FeedRefreshViewController? + public var refreshController: FeedRefreshViewController? private var imageLoader: FeedImageDataLoader? private var tableModel = [FeedImage]() diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index c52b614..020f271 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -471,8 +471,9 @@ private extension FeedViewController { fake.addTarget(target, action: Selector(action), for: .valueChanged) } } - refreshControl = fake + refreshController?.view = fake + refreshControl = fake } class FakeRefreshControl: UIRefreshControl { From 03c10c694cee0c324fe13a1d7beba386fc0513e8 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 10:41:22 +0200 Subject: [PATCH 062/125] Reame init parameter --- .../Feed UI/Controllers/FeedViewController.swift | 4 ++-- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 294af95..5b7ca26 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -20,11 +20,11 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou private var onViewIsAppearing: ((FeedViewController) -> ())? public convenience init( - loader: FeedLoader, + feedLoader: FeedLoader, imageLoader: FeedImageDataLoader ) { self.init() - self.refreshController = FeedRefreshViewController(feedLoader: loader) + self.refreshController = FeedRefreshViewController(feedLoader: feedLoader) self.imageLoader = imageLoader } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 020f271..3f6ab0e 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -282,7 +282,7 @@ final class FeedViewControllerTests: XCTestCase { ) { let loader = LoaderSpy() let sut = FeedViewController( - loader: loader, + feedLoader: loader, imageLoader: loader ) trackForMemoryLeaks(loader, file: file, line: line) From f225727da2acb51ad83b90a1794c61d90ff7851e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 10:58:00 +0200 Subject: [PATCH 063/125] Fix test assertion descriptions --- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 3f6ab0e..b6f9986 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -265,10 +265,10 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.loadedImageURLs, [], "Expected no image URL requests until image is near visible") sut.simulateFeedImageViewNotNearVisible(at: 0) - XCTAssertEqual(loader.cancelledImageURls, [image0.url], "Expected first image URL request once first image is near visible") + XCTAssertEqual(loader.cancelledImageURls, [image0.url], "Expected first image URL request cancle once first image is not near visible") sut.simulateFeedImageViewNotNearVisible(at: 1) - XCTAssertEqual(loader.cancelledImageURls, [image0.url, image1.url], "Expected second image URL request once second image is near visible") + XCTAssertEqual(loader.cancelledImageURls, [image0.url, image1.url], "Expected second image URL request cancel once second image is not near visible") } // MARK: - Helper From 6d19abc9530546d38662b05cfe22857c3fe38437 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 11:10:34 +0200 Subject: [PATCH 064/125] Extract `FeedImageCell` creation/configuration and image load logic with `FeedImageDataLoader` to the new `FeedImageCellController` --- .../Controllers/FeedImageCellController.swift | 55 +++++++++++++++++++ .../Controllers/FeedViewController.swift | 49 +++++------------ 2 files changed, 70 insertions(+), 34 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift new file mode 100644 index 0000000..1619243 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -0,0 +1,55 @@ +// +// FeedImageCellController.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 14/4/25. +// + + +import EssentialFeed +import UIKit + +final class FeedImageCellController { + private var task: FeedImageDataLoaderTask? + + let model: FeedImage + let imageLoader: FeedImageDataLoader + + init(model: FeedImage, imageLoader: FeedImageDataLoader) { + self.model = model + self.imageLoader = imageLoader + } + + func view() -> UITableViewCell { + let cell = FeedImageCell() + cell.locationContainer.isHidden = (model.location == nil) + cell.locationLabel.text = model.location + cell.descriptionLabel.text = model.description + cell.feedImageView.image = nil + cell.feedImageRetryButton.isHidden = true + cell.feedImageContainer.startShimmering() + let loadImage = { [weak self, cell] in + guard let self else { return } + self.task = imageLoader.loadImageData(from: model.url) { [weak cell] result in + let data = try? result.get() + let image = data.map(UIImage.init) ?? nil + cell?.feedImageView.image = image + cell?.feedImageRetryButton.isHidden = (image != nil) + cell?.feedImageContainer.stopShimmering() + } + } + + cell.onRetry = loadImage + loadImage() + return cell + } + + func preload() { + task = imageLoader.loadImageData(from: model.url) { _ in } + } + + deinit { + task?.cancel() + task = nil + } +} \ No newline at end of file diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 5b7ca26..ef2b203 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -8,15 +8,12 @@ import EssentialFeed import UIKit - - public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { public var refreshController: FeedRefreshViewController? private var imageLoader: FeedImageDataLoader? private var tableModel = [FeedImage]() - - private var tasks = [IndexPath: FeedImageDataLoaderTask]() - + private var cellControllers = [IndexPath: FeedImageCellController]() + private var onViewIsAppearing: ((FeedViewController) -> ())? public convenience init( @@ -53,47 +50,31 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou } public override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { - let cellModel = tableModel[indexPath.row] - let cell = FeedImageCell() - cell.locationContainer.isHidden = (cellModel.location == nil) - cell.locationLabel.text = cellModel.location - cell.descriptionLabel.text = cellModel.description - cell.feedImageView.image = nil - cell.feedImageRetryButton.isHidden = true - cell.feedImageContainer.startShimmering() - let loadImage = { [weak self, cell] in - guard let self else { return } - self.tasks[indexPath] = self.imageLoader?.loadImageData(from: cellModel.url) { [weak cell] result in - let data = try? result.get() - let image = data.map(UIImage.init) ?? nil - cell?.feedImageView.image = image - cell?.feedImageRetryButton.isHidden = (image != nil) - cell?.feedImageContainer.stopShimmering() - } - } - - cell.onRetry = loadImage - loadImage() - return cell + return cellController(forRowAt: indexPath).view() } public override func tableView(_ tableView: UITableView, didEndDisplaying cell: UITableViewCell, forRowAt indexPath: IndexPath) { - cancelTask(forRowAt: indexPath) + removeCellController(forRowAt: indexPath) } public func tableView(_ tableView: UITableView, prefetchRowsAt indexPaths: [IndexPath]) { indexPaths.forEach { indexPath in - let cellModel = tableModel[indexPath.row] - _ = imageLoader?.loadImageData(from: cellModel.url) { _ in } + cellController(forRowAt: indexPath).preload() } } public func tableView(_ tableView: UITableView, cancelPrefetchingForRowsAt indexPaths: [IndexPath]) { - indexPaths.forEach(cancelTask) + indexPaths.forEach(removeCellController) + } + + private func cellController(forRowAt indexPath: IndexPath) -> FeedImageCellController { + let cellModel = tableModel[indexPath.row] + let cellController = FeedImageCellController(model: cellModel, imageLoader: imageLoader!) + cellControllers[indexPath] = cellController + return cellController } - private func cancelTask(forRowAt indexPath: IndexPath) { - tasks[indexPath]?.cancel() - tasks[indexPath] = nil + private func removeCellController(forRowAt indexPath: IndexPath) { + cellControllers[indexPath] = nil } } From 7c32c98cd441bc494dfb7277aea120939fa60b90 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 11:59:53 +0200 Subject: [PATCH 065/125] Extract dependency creation and composition logic from the `FeedViewController` to a `FeedUIComposer` --- .../Composers/FeedUIComposer.swift | 29 +++++++++++++++ .../Controllers/FeedImageCellController.swift | 4 +-- .../Controllers/FeedViewController.swift | 36 +++++++------------ .../FeedViewControllerTests.swift | 3 +- 4 files changed, 46 insertions(+), 26 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift new file mode 100644 index 0000000..6660218 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -0,0 +1,29 @@ +// +// FeedUIComposer.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 14/4/25. +// + + +import EssentialFeed +import UIKit + +public enum FeedUIComposer { + + public static func feedComposedWith( + feedLoader: FeedLoader, + imageLoader: FeedImageDataLoader + ) -> FeedViewController { + + let refreshController = FeedRefreshViewController(feedLoader: feedLoader) + let feedController = FeedViewController(refreshController: refreshController) + refreshController.onRefresh = { [weak feedController] feed in + feedController?.tableModel = feed.map { + FeedImageCellController(model: $0, imageLoader: imageLoader) + } + } + + return feedController + } +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 1619243..18fdfc2 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -48,8 +48,8 @@ final class FeedImageCellController { task = imageLoader.loadImageData(from: model.url) { _ in } } - deinit { + func cancelLoad() { task?.cancel() task = nil } -} \ No newline at end of file +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index ef2b203..cadb6ae 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -10,29 +10,22 @@ import UIKit public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { public var refreshController: FeedRefreshViewController? - private var imageLoader: FeedImageDataLoader? - private var tableModel = [FeedImage]() - private var cellControllers = [IndexPath: FeedImageCellController]() - + var tableModel = [FeedImageCellController]() { + didSet { tableView.reloadData() } + } + private var onViewIsAppearing: ((FeedViewController) -> ())? - public convenience init( - feedLoader: FeedLoader, - imageLoader: FeedImageDataLoader - ) { + convenience init(refreshController: FeedRefreshViewController) { self.init() - self.refreshController = FeedRefreshViewController(feedLoader: feedLoader) - self.imageLoader = imageLoader + self.refreshController = refreshController } public override func viewDidLoad() { super.viewDidLoad() refreshControl = refreshController?.view - refreshController?.onRefresh = { [weak self] feed in - self?.tableModel = feed - self?.tableView.reloadData() - } + tableView.prefetchDataSource = self onViewIsAppearing = { vc in @@ -54,7 +47,7 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou } public override func tableView(_ tableView: UITableView, didEndDisplaying cell: UITableViewCell, forRowAt indexPath: IndexPath) { - removeCellController(forRowAt: indexPath) + cancelCellControllerLoad(forRowAt: indexPath) } public func tableView(_ tableView: UITableView, prefetchRowsAt indexPaths: [IndexPath]) { @@ -64,17 +57,14 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou } public func tableView(_ tableView: UITableView, cancelPrefetchingForRowsAt indexPaths: [IndexPath]) { - indexPaths.forEach(removeCellController) + indexPaths.forEach(cancelCellControllerLoad) } - private func cellController(forRowAt indexPath: IndexPath) -> FeedImageCellController { - let cellModel = tableModel[indexPath.row] - let cellController = FeedImageCellController(model: cellModel, imageLoader: imageLoader!) - cellControllers[indexPath] = cellController - return cellController + private func cancelCellControllerLoad(forRowAt indexPath: IndexPath) { + cellController(forRowAt: indexPath).cancelLoad() } - private func removeCellController(forRowAt indexPath: IndexPath) { - cellControllers[indexPath] = nil + private func cellController(forRowAt indexPath: IndexPath) -> FeedImageCellController { + return tableModel[indexPath.row] } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index b6f9986..8e993fc 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -281,7 +281,8 @@ final class FeedViewControllerTests: XCTestCase { loader: LoaderSpy ) { let loader = LoaderSpy() - let sut = FeedViewController( + + let sut = FeedUIComposer.feedComposedWith( feedLoader: loader, imageLoader: loader ) From d4124a3b8ded826d989cde2e09c8608bffe78a66 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 12:03:05 +0200 Subject: [PATCH 066/125] Extract adapter pattern into a separate function to clarify intent --- .../Composers/FeedUIComposer.swift | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 6660218..fc5ac4a 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -18,12 +18,16 @@ public enum FeedUIComposer { let refreshController = FeedRefreshViewController(feedLoader: feedLoader) let feedController = FeedViewController(refreshController: refreshController) - refreshController.onRefresh = { [weak feedController] feed in - feedController?.tableModel = feed.map { - FeedImageCellController(model: $0, imageLoader: imageLoader) - } - } + refreshController.onRefresh = adaptFeedCellControllers(forwardingTo: feedController, loader: imageLoader) return feedController } + + private static func adaptFeedCellControllers(forwardingTo controller: FeedViewController, loader: FeedImageDataLoader) -> ([FeedImage]) -> Void { + return { [weak controller] feed in + controller?.tableModel = feed.map { + FeedImageCellController(model: $0, imageLoader: loader) + } + } + } } From f22fef469f8464d0c39aeb94a7c38f181357e16f Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 13:02:46 +0200 Subject: [PATCH 067/125] Remvoe `EssentialFeed`dependency on `FeedRefreshViewController` by moving `FeedLoader` loading state managemnet to `FeedViewModel`. Now `FeedRefreshViewController` acts as a binder between the view and the `ViewModel` --- .../Composers/FeedUIComposer.swift | 5 ++- .../FeedRefreshViewController.swift | 37 +++++++++---------- .../Feed UI/Models/FeedViewModel.swift | 35 ++++++++++++++++++ 3 files changed, 56 insertions(+), 21 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index fc5ac4a..bef9af9 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -16,9 +16,10 @@ public enum FeedUIComposer { imageLoader: FeedImageDataLoader ) -> FeedViewController { - let refreshController = FeedRefreshViewController(feedLoader: feedLoader) + let feedViewModel = FeedViewModel(feedLoader: feedLoader) + let refreshController = FeedRefreshViewController(viewModel: feedViewModel) let feedController = FeedViewController(refreshController: refreshController) - refreshController.onRefresh = adaptFeedCellControllers(forwardingTo: feedController, loader: imageLoader) + feedViewModel.onFeedLoad = adaptFeedCellControllers(forwardingTo: feedController, loader: imageLoader) return feedController } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift index b71f8a4..a8f4287 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift @@ -5,32 +5,31 @@ // Created by Cristian Felipe Patiño Rojas on 14/4/25. // - -import EssentialFeed import UIKit public final class FeedRefreshViewController: NSObject { - public lazy var view: UIRefreshControl = { - let view = UIRefreshControl() - view.addTarget(self, action: #selector(refresh), for: .valueChanged) - return view - }() + public lazy var view = binded(UIRefreshControl()) - private let feedLoader: FeedLoader + private let viewModel: FeedViewModel - var onRefresh: (([FeedImage]) -> Void)? - init(feedLoader: FeedLoader) { - self.feedLoader = feedLoader + init(viewModel: FeedViewModel) { + self.viewModel = viewModel } @objc func refresh() { - view.beginRefreshing() - feedLoader.load { [weak self] result in - self?.view.endRefreshing() - if let feed = try? result.get() { - self?.onRefresh?(feed) - } - } + viewModel.loadFeed() + } + + func binded(_ view: UIRefreshControl) -> UIRefreshControl { + view.addTarget(self, action: #selector(refresh), for: .valueChanged) + viewModel.onChange = { [weak self] viewModel in + if viewModel.isLoading { + self?.view.beginRefreshing() + } else { + self?.view.endRefreshing() + } + } + return view } -} \ No newline at end of file +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift new file mode 100644 index 0000000..b7a2c5d --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift @@ -0,0 +1,35 @@ +// +// FeedViewModel.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 14/4/25. +// + + +import EssentialFeed +import UIKit + +final class FeedViewModel { + private let feedLoader: FeedLoader + + init(feedLoader: FeedLoader) { + self.feedLoader = feedLoader + } + + var onChange: ((FeedViewModel) -> Void)? + var onFeedLoad: (([FeedImage]) -> Void)? + + private(set) var isLoading: Bool = false { + didSet { onChange?(self) } + } + + func loadFeed() { + isLoading = true + feedLoader.load { [weak self] result in + if let feed = try? result.get() { + self?.onFeedLoad?(feed) + } + self?.isLoading = false + } + } +} From 4a90698f2bc30478757039f1f3e285fe50bbbaa2 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 13:11:24 +0200 Subject: [PATCH 068/125] Remove mutable state from `FeedViewModel`. The `FeedViewModel`only needs to forward state changes (so the state is only transiet) --- .../FeedRefreshViewController.swift | 20 +++++++++++++------ .../Feed UI/Models/FeedViewModel.swift | 16 +++++++-------- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift index a8f4287..e8f04fa 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift @@ -23,13 +23,21 @@ public final class FeedRefreshViewController: NSObject { func binded(_ view: UIRefreshControl) -> UIRefreshControl { view.addTarget(self, action: #selector(refresh), for: .valueChanged) - viewModel.onChange = { [weak self] viewModel in - if viewModel.isLoading { - self?.view.beginRefreshing() - } else { - self?.view.endRefreshing() - } + // @todo @question: when capturingo only the view + // test fail: test_loadingFeedIndicator_isVisibleWhileLoadingFeed + viewModel.onLoadingStateChange = { [weak self] isLoading in + self?.view.refreshIf(isLoading) } return view } } + +private extension UIRefreshControl { + func refreshIf(_ shouldRefresh: Bool) { + if shouldRefresh { + beginRefreshing() + } else { + endRefreshing() + } + } +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift index b7a2c5d..6ef7693 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift @@ -10,26 +10,24 @@ import EssentialFeed import UIKit final class FeedViewModel { + typealias Observer = (T) -> Void + private let feedLoader: FeedLoader init(feedLoader: FeedLoader) { self.feedLoader = feedLoader } - var onChange: ((FeedViewModel) -> Void)? - var onFeedLoad: (([FeedImage]) -> Void)? - - private(set) var isLoading: Bool = false { - didSet { onChange?(self) } - } - + var onLoadingStateChange: Observer? + var onFeedLoad: Observer<[FeedImage]>? + func loadFeed() { - isLoading = true + onLoadingStateChange?(true) feedLoader.load { [weak self] result in if let feed = try? result.get() { self?.onFeedLoad?(feed) } - self?.isLoading = false + self?.onLoadingStateChange?(false) } } } From 4f08ecd3390c8197d11e53a889034a071ec808f5 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 13:19:54 +0200 Subject: [PATCH 069/125] Extract task, load, and cancel logic from `FeedImageCellController` into a UI agnostic viewModel --- .../Composers/FeedUIComposer.swift | 3 +- .../Controllers/FeedImageCellController.swift | 40 ++++++++--------- .../Feed UI/Models/FeedImageViewModel.swift | 43 +++++++++++++++++++ 3 files changed, 62 insertions(+), 24 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index bef9af9..406ac6a 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -27,7 +27,8 @@ public enum FeedUIComposer { private static func adaptFeedCellControllers(forwardingTo controller: FeedViewController, loader: FeedImageDataLoader) -> ([FeedImage]) -> Void { return { [weak controller] feed in controller?.tableModel = feed.map { - FeedImageCellController(model: $0, imageLoader: loader) + let viewModel = FeedImageViewModel(model: $0, imageLoader: loader) + return FeedImageCellController(viewModel: viewModel) } } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 18fdfc2..8de1d03 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -10,46 +10,40 @@ import EssentialFeed import UIKit final class FeedImageCellController { - private var task: FeedImageDataLoaderTask? - let model: FeedImage - let imageLoader: FeedImageDataLoader + let viewModel: FeedImageViewModel - init(model: FeedImage, imageLoader: FeedImageDataLoader) { - self.model = model - self.imageLoader = imageLoader + init(viewModel: FeedImageViewModel) { + self.viewModel = viewModel } func view() -> UITableViewCell { let cell = FeedImageCell() - cell.locationContainer.isHidden = (model.location == nil) - cell.locationLabel.text = model.location - cell.descriptionLabel.text = model.description + cell.locationContainer.isHidden = viewModel.shouldHideLocationContainer + cell.locationLabel.text = viewModel.location + cell.descriptionLabel.text = viewModel.description cell.feedImageView.image = nil cell.feedImageRetryButton.isHidden = true cell.feedImageContainer.startShimmering() - let loadImage = { [weak self, cell] in - guard let self else { return } - self.task = imageLoader.loadImageData(from: model.url) { [weak cell] result in - let data = try? result.get() - let image = data.map(UIImage.init) ?? nil - cell?.feedImageView.image = image - cell?.feedImageRetryButton.isHidden = (image != nil) - cell?.feedImageContainer.stopShimmering() - } + + viewModel.onChange = { [weak cell] result in + let data = try? result.get() + let image = data.map(UIImage.init) ?? nil + cell?.feedImageView.image = image + cell?.feedImageRetryButton.isHidden = (image != nil) + cell?.feedImageContainer.stopShimmering() } - cell.onRetry = loadImage - loadImage() + cell.onRetry = viewModel.loadImage + viewModel.loadImage() return cell } func preload() { - task = imageLoader.loadImageData(from: model.url) { _ in } + viewModel.preloadImage() } func cancelLoad() { - task?.cancel() - task = nil + viewModel.cancelLoad() } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift new file mode 100644 index 0000000..c2580f9 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift @@ -0,0 +1,43 @@ +// +// FeedImageViewModel.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 14/4/25. +// + + +import EssentialFeed +import UIKit + +final class FeedImageViewModel { + private var task: FeedImageDataLoaderTask? + private let model: FeedImage + private let imageLoader: FeedImageDataLoader + + var url: URL { model.url } + + var shouldHideLocationContainer: Bool { location == nil } + var location: String? { model.location } + var description: String? { model.description } + + init(model: FeedImage, imageLoader: FeedImageDataLoader) { + self.model = model + self.imageLoader = imageLoader + } + + var onChange: ((Result) -> Void)? + func loadImage() { + task = imageLoader.loadImageData(from: url) { [weak self] in + self?.onChange?($0) + } + } + + func preloadImage() { + task = imageLoader.loadImageData(from: url) { _ in } + } + + func cancelLoad() { + task?.cancel() + task = nil + } +} \ No newline at end of file From 82cf7358cc4cd2229a52ebaa8450128b6dc52abf Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 13:47:47 +0200 Subject: [PATCH 070/125] Decouple `FeedImageViewModel` from `UIKit` by creating a transformation closure that converts an image `Data` value into a generic `image` type. When composing with a UIKit user interface, we inject a closure to transform the image `Data` into `UIImage`. --- .../Composers/FeedUIComposer.swift | 2 +- .../Controllers/FeedImageCellController.swift | 54 +++++++++++-------- .../Feed UI/Models/FeedImageViewModel.swift | 46 ++++++++++------ 3 files changed, 61 insertions(+), 41 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 406ac6a..0544af7 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -27,7 +27,7 @@ public enum FeedUIComposer { private static func adaptFeedCellControllers(forwardingTo controller: FeedViewController, loader: FeedImageDataLoader) -> ([FeedImage]) -> Void { return { [weak controller] feed in controller?.tableModel = feed.map { - let viewModel = FeedImageViewModel(model: $0, imageLoader: loader) + let viewModel = FeedImageViewModel(model: $0, imageLoader: loader, imageTransformer: UIImage.init) return FeedImageCellController(viewModel: viewModel) } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 8de1d03..eaf54cb 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -5,45 +5,53 @@ // Created by Cristian Felipe Patiño Rojas on 14/4/25. // - import EssentialFeed import UIKit final class FeedImageCellController { - let viewModel: FeedImageViewModel + let viewModel: FeedImageViewModel - init(viewModel: FeedImageViewModel) { + init(viewModel: FeedImageViewModel) { self.viewModel = viewModel } func view() -> UITableViewCell { - let cell = FeedImageCell() - cell.locationContainer.isHidden = viewModel.shouldHideLocationContainer - cell.locationLabel.text = viewModel.location - cell.descriptionLabel.text = viewModel.description - cell.feedImageView.image = nil - cell.feedImageRetryButton.isHidden = true - cell.feedImageContainer.startShimmering() - - viewModel.onChange = { [weak cell] result in - let data = try? result.get() - let image = data.map(UIImage.init) ?? nil - cell?.feedImageView.image = image - cell?.feedImageRetryButton.isHidden = (image != nil) - cell?.feedImageContainer.stopShimmering() - } - - cell.onRetry = viewModel.loadImage - viewModel.loadImage() + let cell = binded(FeedImageCell()) + viewModel.loadImageData() return cell } func preload() { - viewModel.preloadImage() + viewModel.loadImageData() } func cancelLoad() { - viewModel.cancelLoad() + viewModel.cancelImageDataLoad() + } + + private func binded(_ cell: FeedImageCell) -> FeedImageCell { + cell.locationContainer.isHidden = !viewModel.hasLocation + cell.locationLabel.text = viewModel.location + cell.descriptionLabel.text = viewModel.description + cell.onRetry = viewModel.loadImageData + + viewModel.onImageLoad = { [weak cell] image in + cell?.feedImageView.image = image + } + + viewModel.onImageLoadingStateChange = { [weak cell] isLoading in + if isLoading { + cell?.feedImageContainer.startShimmering() + } else { + cell?.feedImageContainer.stopShimmering() + } + } + + viewModel.onShouldRetryImageLoadStateChange = { [weak cell] shouldRetry in + cell?.feedImageRetryButton.isHidden = !shouldRetry + } + + return cell } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift index c2580f9..ec37a56 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift @@ -5,39 +5,51 @@ // Created by Cristian Felipe Patiño Rojas on 14/4/25. // - +import Foundation import EssentialFeed -import UIKit -final class FeedImageViewModel { +final class FeedImageViewModel { + typealias Observer = (T) -> Void + private var task: FeedImageDataLoaderTask? private let model: FeedImage private let imageLoader: FeedImageDataLoader + private let imageTransformer: (Data) -> Image? - var url: URL { model.url } + init(model: FeedImage, imageLoader: FeedImageDataLoader, imageTransformer: @escaping (Data) -> Image?) { + self.model = model + self.imageLoader = imageLoader + self.imageTransformer = imageTransformer + } - var shouldHideLocationContainer: Bool { location == nil } + private var url: URL { model.url } var location: String? { model.location } + var hasLocation: Bool { location != nil } var description: String? { model.description } - init(model: FeedImage, imageLoader: FeedImageDataLoader) { - self.model = model - self.imageLoader = imageLoader - } + var onImageLoad: Observer? + var onImageLoadingStateChange: Observer? + var onShouldRetryImageLoadStateChange: Observer? - var onChange: ((Result) -> Void)? - func loadImage() { - task = imageLoader.loadImageData(from: url) { [weak self] in - self?.onChange?($0) + func loadImageData() { + onImageLoadingStateChange?(true) + onShouldRetryImageLoadStateChange?(false) + task = imageLoader.loadImageData(from: url) { [weak self] result in + self?.handle(result) } } - func preloadImage() { - task = imageLoader.loadImageData(from: url) { _ in } + private func handle(_ result: FeedImageDataLoader.Result) { + if let image = (try? result.get()).flatMap(imageTransformer) { + onImageLoad?(image) + } else { + onShouldRetryImageLoadStateChange?(true) + } + onImageLoadingStateChange?(false) } - func cancelLoad() { + func cancelImageDataLoad() { task?.cancel() task = nil } -} \ No newline at end of file +} From 516a2b31f5f1a0372d6e02434a9d04543897de61 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 13:49:31 +0200 Subject: [PATCH 071/125] Remove `EssentialFeed` module import form the `FeedViewController` file since it does not depend on any `EssentialFeed` component --- .../Feed UI/Controllers/FeedViewController.swift | 1 - 1 file changed, 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index cadb6ae..675a0bd 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -5,7 +5,6 @@ // Created by Cristian Felipe Patiño Rojas on 11/4/25. // -import EssentialFeed import UIKit public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { From 4111a3b5a0edd213bc8bf6ec42c893f81650f54c Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 14:54:26 +0200 Subject: [PATCH 072/125] Add `FeedPresenter` holding feed presentation logic --- .../Composers/FeedUIComposer.swift | 28 ++++++++----- .../FeedImageViewModel.swift | 0 .../Feed Presentation/FeedPresenter.swift | 40 +++++++++++++++++++ .../FeedViewModel.swift | 0 .../FeedRefreshViewController.swift | 25 ++++++------ 5 files changed, 71 insertions(+), 22 deletions(-) rename EssentialFeed/EssentialFeediOS/{Feed UI/Models => Feed Presentation}/FeedImageViewModel.swift (100%) create mode 100644 EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift rename EssentialFeed/EssentialFeediOS/{Feed UI/Models => Feed Presentation}/FeedViewModel.swift (100%) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 0544af7..89b2202 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -16,20 +16,28 @@ public enum FeedUIComposer { imageLoader: FeedImageDataLoader ) -> FeedViewController { - let feedViewModel = FeedViewModel(feedLoader: feedLoader) - let refreshController = FeedRefreshViewController(viewModel: feedViewModel) + let presenter = FeedPresenter(feedLoader: feedLoader) + let refreshController = FeedRefreshViewController(presenter: presenter) let feedController = FeedViewController(refreshController: refreshController) - feedViewModel.onFeedLoad = adaptFeedCellControllers(forwardingTo: feedController, loader: imageLoader) - + presenter.loadingView = refreshController + presenter.feedView = FeedViewAdapter(controller: feedController, imageLoader: imageLoader) return feedController } +} + +private final class FeedViewAdapter: FeedView { + private weak var controller: FeedViewController? + private let imageLoader: FeedImageDataLoader + + init(controller: FeedViewController, imageLoader: FeedImageDataLoader) { + self.controller = controller + self.imageLoader = imageLoader + } - private static func adaptFeedCellControllers(forwardingTo controller: FeedViewController, loader: FeedImageDataLoader) -> ([FeedImage]) -> Void { - return { [weak controller] feed in - controller?.tableModel = feed.map { - let viewModel = FeedImageViewModel(model: $0, imageLoader: loader, imageTransformer: UIImage.init) - return FeedImageCellController(viewModel: viewModel) - } + func display(feed: [EssentialFeed.FeedImage]) { + controller?.tableModel = feed.map { + let viewModel = FeedImageViewModel(model: $0, imageLoader: imageLoader, imageTransformer: UIImage.init) + return FeedImageCellController(viewModel: viewModel) } } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImageViewModel.swift similarity index 100% rename from EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedImageViewModel.swift rename to EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImageViewModel.swift diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift new file mode 100644 index 0000000..f34d190 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -0,0 +1,40 @@ +// +// FeedViewModel.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 14/4/25. +// + + +import EssentialFeed +import UIKit + +protocol FeedLoadingView: AnyObject { + func display(isLoading: Bool) +} + +protocol FeedView { + func display(feed: [FeedImage]) +} + +final class FeedPresenter { + + private let feedLoader: FeedLoader + + init(feedLoader: FeedLoader) { + self.feedLoader = feedLoader + } + + var feedView: FeedView? + weak var loadingView: FeedLoadingView? + + func loadFeed() { + loadingView?.display(isLoading: true) + feedLoader.load { [weak self] result in + if let feed = try? result.get() { + self?.feedView?.display(feed: feed) + } + self?.loadingView?.display(isLoading: false) + } + } +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedViewModel.swift similarity index 100% rename from EssentialFeed/EssentialFeediOS/Feed UI/Models/FeedViewModel.swift rename to EssentialFeed/EssentialFeediOS/Feed Presentation/FeedViewModel.swift diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift index e8f04fa..509ae57 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift @@ -7,27 +7,28 @@ import UIKit -public final class FeedRefreshViewController: NSObject { + +public final class FeedRefreshViewController: NSObject, FeedLoadingView { - public lazy var view = binded(UIRefreshControl()) + public lazy var view = loadView() - private let viewModel: FeedViewModel + private let presenter: FeedPresenter - init(viewModel: FeedViewModel) { - self.viewModel = viewModel + init(presenter: FeedPresenter) { + self.presenter = presenter } @objc func refresh() { - viewModel.loadFeed() + presenter.loadFeed() + } + + func display(isLoading: Bool) { + view.refreshIf(isLoading) } - func binded(_ view: UIRefreshControl) -> UIRefreshControl { + func loadView() -> UIRefreshControl { + let view = UIRefreshControl() view.addTarget(self, action: #selector(refresh), for: .valueChanged) - // @todo @question: when capturingo only the view - // test fail: test_loadingFeedIndicator_isVisibleWhileLoadingFeed - viewModel.onLoadingStateChange = { [weak self] isLoading in - self?.view.refreshIf(isLoading) - } return view } } From 10c6657354dd0d1095b5335b1ae9d32a0b6805e6 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 15:00:09 +0200 Subject: [PATCH 073/125] Move memory management to composer layer: The `FeedPresenter` shoudln't know or handle their dependencies lifetime --- .../Composers/FeedUIComposer.swift | 15 ++++++++++++++- .../Feed Presentation/FeedPresenter.swift | 2 +- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 89b2202..bc683e6 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -19,12 +19,25 @@ public enum FeedUIComposer { let presenter = FeedPresenter(feedLoader: feedLoader) let refreshController = FeedRefreshViewController(presenter: presenter) let feedController = FeedViewController(refreshController: refreshController) - presenter.loadingView = refreshController + presenter.loadingView = WeakRefVirtualProxy(refreshController) presenter.feedView = FeedViewAdapter(controller: feedController, imageLoader: imageLoader) return feedController } } +private final class WeakRefVirtualProxy { + private weak var object: T? + init(_ object: T) { + self.object = object + } +} + +extension WeakRefVirtualProxy: FeedLoadingView where T: FeedLoadingView { + func display(isLoading: Bool) { + object?.display(isLoading: isLoading) + } +} + private final class FeedViewAdapter: FeedView { private weak var controller: FeedViewController? private let imageLoader: FeedImageDataLoader diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index f34d190..0058f4f 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -26,7 +26,7 @@ final class FeedPresenter { } var feedView: FeedView? - weak var loadingView: FeedLoadingView? + var loadingView: FeedLoadingView? func loadFeed() { loadingView?.display(isLoading: true) From f0715a303abc0a7cd741b52f35d38b246606dd16 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 15:00:43 +0200 Subject: [PATCH 074/125] Remove unused `FeedViewModel` (replaced by the new `FeedPrresenter` --- .../Feed Presentation/FeedViewModel.swift | 33 ------------------- 1 file changed, 33 deletions(-) delete mode 100644 EssentialFeed/EssentialFeediOS/Feed Presentation/FeedViewModel.swift diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedViewModel.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedViewModel.swift deleted file mode 100644 index 6ef7693..0000000 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedViewModel.swift +++ /dev/null @@ -1,33 +0,0 @@ -// -// FeedViewModel.swift -// EssentialFeed -// -// Created by Cristian Felipe Patiño Rojas on 14/4/25. -// - - -import EssentialFeed -import UIKit - -final class FeedViewModel { - typealias Observer = (T) -> Void - - private let feedLoader: FeedLoader - - init(feedLoader: FeedLoader) { - self.feedLoader = feedLoader - } - - var onLoadingStateChange: Observer? - var onFeedLoad: Observer<[FeedImage]>? - - func loadFeed() { - onLoadingStateChange?(true) - feedLoader.load { [weak self] result in - if let feed = try? result.get() { - self?.onFeedLoad?(feed) - } - self?.onLoadingStateChange?(false) - } - } -} From 59ec2f5f8970463b160afe497d70721d8f64378a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 15:05:37 +0200 Subject: [PATCH 075/125] Add Presentable View Models as pure data to clarify communication between Presentation and U. --- .../Composers/FeedUIComposer.swift | 17 +++++++++++------ .../Feed Presentation/FeedPresenter.swift | 18 +++++++++++++----- .../FeedRefreshViewController.swift | 4 ++-- 3 files changed, 26 insertions(+), 13 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index bc683e6..d486b84 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -33,8 +33,8 @@ private final class WeakRefVirtualProxy { } extension WeakRefVirtualProxy: FeedLoadingView where T: FeedLoadingView { - func display(isLoading: Bool) { - object?.display(isLoading: isLoading) + func display(_ viewModel: FeedLoadingViewModel) { + object?.display(viewModel) } } @@ -47,10 +47,15 @@ private final class FeedViewAdapter: FeedView { self.imageLoader = imageLoader } - func display(feed: [EssentialFeed.FeedImage]) { - controller?.tableModel = feed.map { - let viewModel = FeedImageViewModel(model: $0, imageLoader: imageLoader, imageTransformer: UIImage.init) - return FeedImageCellController(viewModel: viewModel) + func display(_ viewModel: FeedViewModel) { + controller?.tableModel = viewModel.feed.map { + FeedImageCellController( + viewModel: FeedImageViewModel( + model: $0, + imageLoader: imageLoader, + imageTransformer: UIImage.init + ) + ) } } } diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index 0058f4f..d4a688a 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -9,12 +9,20 @@ import EssentialFeed import UIKit +struct FeedLoadingViewModel { + let isLoading: Bool +} + protocol FeedLoadingView: AnyObject { - func display(isLoading: Bool) + func display(_ viewModel: FeedLoadingViewModel) +} + +struct FeedViewModel { + let feed: [FeedImage] } protocol FeedView { - func display(feed: [FeedImage]) + func display(_ viewModel: FeedViewModel) } final class FeedPresenter { @@ -29,12 +37,12 @@ final class FeedPresenter { var loadingView: FeedLoadingView? func loadFeed() { - loadingView?.display(isLoading: true) + loadingView?.display(FeedLoadingViewModel(isLoading: true)) feedLoader.load { [weak self] result in if let feed = try? result.get() { - self?.feedView?.display(feed: feed) + self?.feedView?.display(FeedViewModel(feed: feed)) } - self?.loadingView?.display(isLoading: false) + self?.loadingView?.display(FeedLoadingViewModel(isLoading: false)) } } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift index 509ae57..077a896 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift @@ -22,8 +22,8 @@ public final class FeedRefreshViewController: NSObject, FeedLoadingView { presenter.loadFeed() } - func display(isLoading: Bool) { - view.refreshIf(isLoading) + func display(_ viewModel: FeedLoadingViewModel) { + view.refreshIf(viewModel.isLoading) } func loadView() -> UIRefreshControl { From da556d59d76de4a83c28c759a759c6fb7b14f3ca Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 15:12:28 +0200 Subject: [PATCH 076/125] Decouple `FeedRefreshViewController` from the concrete `FeedPresenter`dependency with a closure. --- .../EssentialFeediOS/Composers/FeedUIComposer.swift | 2 +- .../Feed UI/Controllers/FeedRefreshViewController.swift | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index d486b84..1a98ac0 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -17,7 +17,7 @@ public enum FeedUIComposer { ) -> FeedViewController { let presenter = FeedPresenter(feedLoader: feedLoader) - let refreshController = FeedRefreshViewController(presenter: presenter) + let refreshController = FeedRefreshViewController(loadFeed: presenter.loadFeed) let feedController = FeedViewController(refreshController: refreshController) presenter.loadingView = WeakRefVirtualProxy(refreshController) presenter.feedView = FeedViewAdapter(controller: feedController, imageLoader: imageLoader) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift index 077a896..c5f34fe 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift @@ -7,19 +7,18 @@ import UIKit - public final class FeedRefreshViewController: NSObject, FeedLoadingView { public lazy var view = loadView() - private let presenter: FeedPresenter + private let loadFeed: () -> Void - init(presenter: FeedPresenter) { - self.presenter = presenter + init(loadFeed: @escaping () -> Void) { + self.loadFeed = loadFeed } @objc func refresh() { - presenter.loadFeed() + loadFeed() } func display(_ viewModel: FeedLoadingViewModel) { From a4f27c2aee38f4cae5f8f125a9f2e93aca672a42 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 15:23:50 +0200 Subject: [PATCH 077/125] Decouple `FeedPresenter` from `FeedLoader` with an adapter in the Composition layer --- .../Composers/FeedUIComposer.swift | 31 +++++++++++++++++-- .../Feed Presentation/FeedPresenter.swift | 24 ++++++-------- 2 files changed, 39 insertions(+), 16 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 1a98ac0..8a3d6bb 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -16,8 +16,12 @@ public enum FeedUIComposer { imageLoader: FeedImageDataLoader ) -> FeedViewController { - let presenter = FeedPresenter(feedLoader: feedLoader) - let refreshController = FeedRefreshViewController(loadFeed: presenter.loadFeed) + let presenter = FeedPresenter() + let presentationAdapter = FeedLoaderPresentationAdapter( + feedLoader: feedLoader, + presenter: presenter + ) + let refreshController = FeedRefreshViewController(loadFeed: presentationAdapter.loadFeed) let feedController = FeedViewController(refreshController: refreshController) presenter.loadingView = WeakRefVirtualProxy(refreshController) presenter.feedView = FeedViewAdapter(controller: feedController, imageLoader: imageLoader) @@ -59,3 +63,26 @@ private final class FeedViewAdapter: FeedView { } } } + +private final class FeedLoaderPresentationAdapter { + private let feedLoader: FeedLoader + private let presenter: FeedPresenter + + init(feedLoader: FeedLoader, presenter: FeedPresenter) { + self.feedLoader = feedLoader + self.presenter = presenter + } + + func loadFeed() { + presenter.didStartLoadingFeed() + feedLoader.load { [weak self] result in + switch result { + case let .success(feed): + self?.presenter.didFinishLoadingFeed(with: feed) + case let .failure(error): + self?.presenter.didFinishLoadingFeed(with: error) + } + } + } +} + diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index d4a688a..e97e9a1 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -26,23 +26,19 @@ protocol FeedView { } final class FeedPresenter { + var feedView: FeedView? + var loadingView: FeedLoadingView? - private let feedLoader: FeedLoader + func didStartLoadingFeed() { + loadingView?.display(FeedLoadingViewModel(isLoading: true)) + } - init(feedLoader: FeedLoader) { - self.feedLoader = feedLoader + func didFinishLoadingFeed(with feed: [FeedImage]) { + feedView?.display(FeedViewModel(feed: feed)) + loadingView?.display(FeedLoadingViewModel(isLoading: false)) } - var feedView: FeedView? - var loadingView: FeedLoadingView? - - func loadFeed() { - loadingView?.display(FeedLoadingViewModel(isLoading: true)) - feedLoader.load { [weak self] result in - if let feed = try? result.get() { - self?.feedView?.display(FeedViewModel(feed: feed)) - } - self?.loadingView?.display(FeedLoadingViewModel(isLoading: false)) - } + func didFinishLoadingFeed(with error: Error) { + loadingView?.display(FeedLoadingViewModel(isLoading: false)) } } From e835f1f938c544410c06c17fd67faaafd43b3b8a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 15:28:14 +0200 Subject: [PATCH 078/125] Replace closure event handler with delegate protocol to demonstrate different composition approaches --- .../EssentialFeediOS/Composers/FeedUIComposer.swift | 8 ++++++-- .../Controllers/FeedRefreshViewController.swift | 12 ++++++++---- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 8a3d6bb..9e08511 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -21,7 +21,7 @@ public enum FeedUIComposer { feedLoader: feedLoader, presenter: presenter ) - let refreshController = FeedRefreshViewController(loadFeed: presentationAdapter.loadFeed) + let refreshController = FeedRefreshViewController(delegate: presentationAdapter) let feedController = FeedViewController(refreshController: refreshController) presenter.loadingView = WeakRefVirtualProxy(refreshController) presenter.feedView = FeedViewAdapter(controller: feedController, imageLoader: imageLoader) @@ -64,7 +64,7 @@ private final class FeedViewAdapter: FeedView { } } -private final class FeedLoaderPresentationAdapter { +private final class FeedLoaderPresentationAdapter: FeedRefreshViewControllerDelegate { private let feedLoader: FeedLoader private let presenter: FeedPresenter @@ -84,5 +84,9 @@ private final class FeedLoaderPresentationAdapter { } } } + + func didRequestFeedRefresh() { + loadFeed() + } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift index c5f34fe..03cf21e 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift @@ -7,18 +7,22 @@ import UIKit +protocol FeedRefreshViewControllerDelegate { + func didRequestFeedRefresh() +} + public final class FeedRefreshViewController: NSObject, FeedLoadingView { public lazy var view = loadView() - private let loadFeed: () -> Void + private let delegate: FeedRefreshViewControllerDelegate - init(loadFeed: @escaping () -> Void) { - self.loadFeed = loadFeed + init(delegate: FeedRefreshViewControllerDelegate) { + self.delegate = delegate } @objc func refresh() { - loadFeed() + delegate.didRequestFeedRefresh() } func display(_ viewModel: FeedLoadingViewModel) { From 6e82a5eb1fb0fbd7daadf28408980c77a2d98d40 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Mon, 14 Apr 2025 15:34:11 +0200 Subject: [PATCH 079/125] Move from property injection to construction injection in the `FeedPresenter` to guarantee presenter instances have access to their dependencies at all times. --- .../Composers/FeedUIComposer.swift | 23 ++++++++----------- .../Feed Presentation/FeedPresenter.swift | 17 +++++++++----- 2 files changed, 21 insertions(+), 19 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 9e08511..f3e42f7 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -16,15 +16,13 @@ public enum FeedUIComposer { imageLoader: FeedImageDataLoader ) -> FeedViewController { - let presenter = FeedPresenter() - let presentationAdapter = FeedLoaderPresentationAdapter( - feedLoader: feedLoader, - presenter: presenter - ) + let presentationAdapter = FeedLoaderPresentationAdapter(feedLoader: feedLoader) let refreshController = FeedRefreshViewController(delegate: presentationAdapter) let feedController = FeedViewController(refreshController: refreshController) - presenter.loadingView = WeakRefVirtualProxy(refreshController) - presenter.feedView = FeedViewAdapter(controller: feedController, imageLoader: imageLoader) + presentationAdapter.presenter = FeedPresenter( + feedView: FeedViewAdapter(controller: feedController, imageLoader: imageLoader), + loadingView: WeakRefVirtualProxy(refreshController) + ) return feedController } } @@ -66,21 +64,20 @@ private final class FeedViewAdapter: FeedView { private final class FeedLoaderPresentationAdapter: FeedRefreshViewControllerDelegate { private let feedLoader: FeedLoader - private let presenter: FeedPresenter + var presenter: FeedPresenter? - init(feedLoader: FeedLoader, presenter: FeedPresenter) { + init(feedLoader: FeedLoader) { self.feedLoader = feedLoader - self.presenter = presenter } func loadFeed() { - presenter.didStartLoadingFeed() + presenter?.didStartLoadingFeed() feedLoader.load { [weak self] result in switch result { case let .success(feed): - self?.presenter.didFinishLoadingFeed(with: feed) + self?.presenter?.didFinishLoadingFeed(with: feed) case let .failure(error): - self?.presenter.didFinishLoadingFeed(with: error) + self?.presenter?.didFinishLoadingFeed(with: error) } } } diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index e97e9a1..863956b 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -26,19 +26,24 @@ protocol FeedView { } final class FeedPresenter { - var feedView: FeedView? - var loadingView: FeedLoadingView? + private let feedView: FeedView + private let loadingView: FeedLoadingView + + init(feedView: FeedView, loadingView: FeedLoadingView) { + self.feedView = feedView + self.loadingView = loadingView + } func didStartLoadingFeed() { - loadingView?.display(FeedLoadingViewModel(isLoading: true)) + loadingView.display(FeedLoadingViewModel(isLoading: true)) } func didFinishLoadingFeed(with feed: [FeedImage]) { - feedView?.display(FeedViewModel(feed: feed)) - loadingView?.display(FeedLoadingViewModel(isLoading: false)) + feedView.display(FeedViewModel(feed: feed)) + loadingView.display(FeedLoadingViewModel(isLoading: false)) } func didFinishLoadingFeed(with error: Error) { - loadingView?.display(FeedLoadingViewModel(isLoading: false)) + loadingView.display(FeedLoadingViewModel(isLoading: false)) } } From 3b8fb691dff735a524021ece56858a2fe0e1a60b Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 11:00:38 +0200 Subject: [PATCH 080/125] WIP: refactoring to presenter --- .../Composers/FeedUIComposer.swift | 2 +- .../FeedImagePresenter.swift | 55 +++++++++++++++++++ .../Controllers/FeedImageCellController.swift | 31 ++++++----- 3 files changed, 72 insertions(+), 16 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index f3e42f7..9c6376b 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -52,7 +52,7 @@ private final class FeedViewAdapter: FeedView { func display(_ viewModel: FeedViewModel) { controller?.tableModel = viewModel.feed.map { FeedImageCellController( - viewModel: FeedImageViewModel( + presenter: FeedImagePresenter( model: $0, imageLoader: imageLoader, imageTransformer: UIImage.init diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift new file mode 100644 index 0000000..cb337e2 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift @@ -0,0 +1,55 @@ +// +// FeedImagePresenter.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + +import Foundation +import EssentialFeed + +final class FeedImagePresenter { + typealias Observer = (T) -> Void + + private var task: FeedImageDataLoaderTask? + private let model: FeedImage + private let imageLoader: FeedImageDataLoader + private let imageTransformer: (Data) -> Image? + + init(model: FeedImage, imageLoader: FeedImageDataLoader, imageTransformer: @escaping (Data) -> Image?) { + self.model = model + self.imageLoader = imageLoader + self.imageTransformer = imageTransformer + } + + private var url: URL { model.url } + var location: String? { model.location } + var hasLocation: Bool { location != nil } + var description: String? { model.description } + + var onImageLoad: Observer? + var onImageLoadingStateChange: Observer? + var onShouldRetryImageLoadStateChange: Observer? + + func loadImageData() { + onImageLoadingStateChange?(true) + onShouldRetryImageLoadStateChange?(false) + task = imageLoader.loadImageData(from: url) { [weak self] result in + self?.handle(result) + } + } + + private func handle(_ result: FeedImageDataLoader.Result) { + if let image = (try? result.get()).flatMap(imageTransformer) { + onImageLoad?(image) + } else { + onShouldRetryImageLoadStateChange?(true) + } + onImageLoadingStateChange?(false) + } + + func cancelImageDataLoad() { + task?.cancel() + task = nil + } +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index eaf54cb..4f87b10 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -10,37 +10,38 @@ import UIKit final class FeedImageCellController { - let viewModel: FeedImageViewModel + let presenter: FeedImagePresenter - init(viewModel: FeedImageViewModel) { - self.viewModel = viewModel + init(presenter: FeedImagePresenter) { + self.presenter = presenter } func view() -> UITableViewCell { - let cell = binded(FeedImageCell()) - viewModel.loadImageData() + let cell = makeCell() + presenter.loadImageData() return cell } func preload() { - viewModel.loadImageData() + presenter.loadImageData() } func cancelLoad() { - viewModel.cancelImageDataLoad() + presenter.cancelImageDataLoad() } - private func binded(_ cell: FeedImageCell) -> FeedImageCell { - cell.locationContainer.isHidden = !viewModel.hasLocation - cell.locationLabel.text = viewModel.location - cell.descriptionLabel.text = viewModel.description - cell.onRetry = viewModel.loadImageData + private func makeCell() -> FeedImageCell { + let cell = FeedImageCell() + cell.locationContainer.isHidden = !presenter.hasLocation + cell.locationLabel.text = presenter.location + cell.descriptionLabel.text = presenter.description + cell.onRetry = presenter.loadImageData - viewModel.onImageLoad = { [weak cell] image in + presenter.onImageLoad = { [weak cell] image in cell?.feedImageView.image = image } - viewModel.onImageLoadingStateChange = { [weak cell] isLoading in + presenter.onImageLoadingStateChange = { [weak cell] isLoading in if isLoading { cell?.feedImageContainer.startShimmering() } else { @@ -48,7 +49,7 @@ final class FeedImageCellController { } } - viewModel.onShouldRetryImageLoadStateChange = { [weak cell] shouldRetry in + presenter.onShouldRetryImageLoadStateChange = { [weak cell] shouldRetry in cell?.feedImageRetryButton.isHidden = !shouldRetry } From befacf61cd1b17401503799ec47a77ec09bc2b3d Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 11:50:47 +0200 Subject: [PATCH 081/125] WIP: ViewModel to Presenter (added view protocols) --- .../FeedImagePresenter.swift | 28 ++++++++---- .../Controllers/FeedImageCellController.swift | 43 +++++++++++-------- 2 files changed, 46 insertions(+), 25 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift index cb337e2..721785e 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift @@ -8,6 +8,18 @@ import Foundation import EssentialFeed +protocol FeedImageView { + func display(image: T) +} + +protocol FeedImageLoadingView { + func display(isLoading: Bool) +} + +protocol FeedImageRetryView { + func display(shouldRetry: Bool) +} + final class FeedImagePresenter { typealias Observer = (T) -> Void @@ -27,13 +39,13 @@ final class FeedImagePresenter { var hasLocation: Bool { location != nil } var description: String? { model.description } - var onImageLoad: Observer? - var onImageLoadingStateChange: Observer? - var onShouldRetryImageLoadStateChange: Observer? + var imageView: FeedImageView? + var imageLoadingView: FeedImageLoadingView? + var imageRetryView: FeedImageRetryView? func loadImageData() { - onImageLoadingStateChange?(true) - onShouldRetryImageLoadStateChange?(false) + imageLoadingView?.display(isLoading: true) + imageRetryView?.display(shouldRetry: false) task = imageLoader.loadImageData(from: url) { [weak self] result in self?.handle(result) } @@ -41,11 +53,11 @@ final class FeedImagePresenter { private func handle(_ result: FeedImageDataLoader.Result) { if let image = (try? result.get()).flatMap(imageTransformer) { - onImageLoad?(image) + imageView?.display(image: image) } else { - onShouldRetryImageLoadStateChange?(true) + imageRetryView?.display(shouldRetry: true) } - onImageLoadingStateChange?(false) + imageLoadingView?.display(isLoading: false) } func cancelImageDataLoad() { diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 4f87b10..c438208 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -9,8 +9,9 @@ import EssentialFeed import UIKit final class FeedImageCellController { - + let presenter: FeedImagePresenter + private var cell: FeedImageCell? init(presenter: FeedImagePresenter) { self.presenter = presenter @@ -32,27 +33,35 @@ final class FeedImageCellController { private func makeCell() -> FeedImageCell { let cell = FeedImageCell() + self.cell = cell cell.locationContainer.isHidden = !presenter.hasLocation cell.locationLabel.text = presenter.location cell.descriptionLabel.text = presenter.description cell.onRetry = presenter.loadImageData - - presenter.onImageLoad = { [weak cell] image in - cell?.feedImageView.image = image - } - - presenter.onImageLoadingStateChange = { [weak cell] isLoading in - if isLoading { - cell?.feedImageContainer.startShimmering() - } else { - cell?.feedImageContainer.stopShimmering() - } - } - - presenter.onShouldRetryImageLoadStateChange = { [weak cell] shouldRetry in - cell?.feedImageRetryButton.isHidden = !shouldRetry - } return cell } } + + +extension FeedImageCellController: FeedImageView { + func display(image: T) { + cell?.feedImageView.image = image as? UIImage + } +} + +extension FeedImageCellController: FeedLoadingView { + func display(_ viewModel: FeedLoadingViewModel) { + if viewModel.isLoading { + cell?.feedImageContainer.startShimmering() + } else { + cell?.feedImageContainer.stopShimmering() + } + } +} + +extension FeedImageCellController: FeedImageRetryView { + func display(shouldRetry: Bool) { + cell?.feedImageRetryButton.isHidden = !shouldRetry + } +} From b0ac04c0aca5684610b9f80d7d0f1532cbe84e4e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 11:54:57 +0200 Subject: [PATCH 082/125] =?UTF-8?q?=F0=9F=9F=A2=20Make=20presenter=20views?= =?UTF-8?q?=20weak?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Composers/FeedUIComposer.swift | 16 ++++++++++------ .../Feed Presentation/FeedImagePresenter.swift | 12 ++++++------ .../Controllers/FeedImageCellController.swift | 6 +++--- 3 files changed, 19 insertions(+), 15 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 9c6376b..41f62a6 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -51,13 +51,17 @@ private final class FeedViewAdapter: FeedView { func display(_ viewModel: FeedViewModel) { controller?.tableModel = viewModel.feed.map { - FeedImageCellController( - presenter: FeedImagePresenter( - model: $0, - imageLoader: imageLoader, - imageTransformer: UIImage.init - ) + let presenter = FeedImagePresenter( + model: $0, + imageLoader: imageLoader, + imageTransformer: UIImage.init ) + + let controller = FeedImageCellController(presenter: presenter) + presenter.imageView = controller + presenter.imageRetryView = controller + presenter.imageLoadingView = controller + return controller } } } diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift index 721785e..8876df6 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift @@ -8,15 +8,15 @@ import Foundation import EssentialFeed -protocol FeedImageView { +protocol FeedImageView: AnyObject { func display(image: T) } -protocol FeedImageLoadingView { +protocol FeedImageLoadingView: AnyObject { func display(isLoading: Bool) } -protocol FeedImageRetryView { +protocol FeedImageRetryView: AnyObject { func display(shouldRetry: Bool) } @@ -39,9 +39,9 @@ final class FeedImagePresenter { var hasLocation: Bool { location != nil } var description: String? { model.description } - var imageView: FeedImageView? - var imageLoadingView: FeedImageLoadingView? - var imageRetryView: FeedImageRetryView? + weak var imageView: FeedImageView? + weak var imageLoadingView: FeedImageLoadingView? + weak var imageRetryView: FeedImageRetryView? func loadImageData() { imageLoadingView?.display(isLoading: true) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index c438208..a46b56d 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -50,9 +50,9 @@ extension FeedImageCellController: FeedImageView { } } -extension FeedImageCellController: FeedLoadingView { - func display(_ viewModel: FeedLoadingViewModel) { - if viewModel.isLoading { +extension FeedImageCellController: FeedImageLoadingView { + func display(isLoading: Bool) { + if isLoading { cell?.feedImageContainer.startShimmering() } else { cell?.feedImageContainer.stopShimmering() From 120a0c39801893b70c9e87d1a3d70211ea53c589 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 12:22:43 +0200 Subject: [PATCH 083/125] =?UTF-8?q?=F0=9F=9F=A2=20WIP:=20Invert=20control?= =?UTF-8?q?=20of=20retention=20on=20presenter=20for=20its=20views?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Composers/FeedUIComposer.swift | 24 ++++++++++++++++--- .../FeedImagePresenter.swift | 12 +++++----- 2 files changed, 27 insertions(+), 9 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 41f62a6..315d0b4 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -40,6 +40,24 @@ extension WeakRefVirtualProxy: FeedLoadingView where T: FeedLoadingView { } } +extension WeakRefVirtualProxy: FeedImageLoadingView where T: FeedImageLoadingView { + func display(isLoading: Bool) { + object?.display(isLoading: isLoading) + } +} + +extension WeakRefVirtualProxy: FeedImageRetryView where T: FeedImageRetryView { + func display(shouldRetry: Bool) { + object?.display(shouldRetry: shouldRetry) + } +} + +extension WeakRefVirtualProxy: FeedImageView where T: FeedImageView { + func display(image: A) { + object?.display(image: image) + } +} + private final class FeedViewAdapter: FeedView { private weak var controller: FeedViewController? private let imageLoader: FeedImageDataLoader @@ -58,9 +76,9 @@ private final class FeedViewAdapter: FeedView { ) let controller = FeedImageCellController(presenter: presenter) - presenter.imageView = controller - presenter.imageRetryView = controller - presenter.imageLoadingView = controller + presenter.imageView = WeakRefVirtualProxy(controller) + presenter.imageRetryView = WeakRefVirtualProxy(controller) + presenter.imageLoadingView = WeakRefVirtualProxy(controller) return controller } } diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift index 8876df6..721785e 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift @@ -8,15 +8,15 @@ import Foundation import EssentialFeed -protocol FeedImageView: AnyObject { +protocol FeedImageView { func display(image: T) } -protocol FeedImageLoadingView: AnyObject { +protocol FeedImageLoadingView { func display(isLoading: Bool) } -protocol FeedImageRetryView: AnyObject { +protocol FeedImageRetryView { func display(shouldRetry: Bool) } @@ -39,9 +39,9 @@ final class FeedImagePresenter { var hasLocation: Bool { location != nil } var description: String? { model.description } - weak var imageView: FeedImageView? - weak var imageLoadingView: FeedImageLoadingView? - weak var imageRetryView: FeedImageRetryView? + var imageView: FeedImageView? + var imageLoadingView: FeedImageLoadingView? + var imageRetryView: FeedImageRetryView? func loadImageData() { imageLoadingView?.display(isLoading: true) From 0b11c3fac542d489c0cab465011247a53a08a933 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 12:58:28 +0200 Subject: [PATCH 084/125] Remove unneeded `AnyObject` constraint on `FeedLoadingView` --- .../EssentialFeediOS/Feed Presentation/FeedPresenter.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index 863956b..33a2a04 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -13,7 +13,7 @@ struct FeedLoadingViewModel { let isLoading: Bool } -protocol FeedLoadingView: AnyObject { +protocol FeedLoadingView { func display(_ viewModel: FeedLoadingViewModel) } From f08f6ae0b4093e5c41bd60c5fca86d6deebdb28e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 12:59:44 +0200 Subject: [PATCH 085/125] =?UTF-8?q?=F0=9F=9F=A2=20Remove=20unused=20`FeedI?= =?UTF-8?q?mageViewModel`=20(replaced=20by=20`FeedImagePresenter)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FeedImageViewModel.swift | 55 ------------------- 1 file changed, 55 deletions(-) delete mode 100644 EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImageViewModel.swift diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImageViewModel.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImageViewModel.swift deleted file mode 100644 index ec37a56..0000000 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImageViewModel.swift +++ /dev/null @@ -1,55 +0,0 @@ -// -// FeedImageViewModel.swift -// EssentialFeed -// -// Created by Cristian Felipe Patiño Rojas on 14/4/25. -// - -import Foundation -import EssentialFeed - -final class FeedImageViewModel { - typealias Observer = (T) -> Void - - private var task: FeedImageDataLoaderTask? - private let model: FeedImage - private let imageLoader: FeedImageDataLoader - private let imageTransformer: (Data) -> Image? - - init(model: FeedImage, imageLoader: FeedImageDataLoader, imageTransformer: @escaping (Data) -> Image?) { - self.model = model - self.imageLoader = imageLoader - self.imageTransformer = imageTransformer - } - - private var url: URL { model.url } - var location: String? { model.location } - var hasLocation: Bool { location != nil } - var description: String? { model.description } - - var onImageLoad: Observer? - var onImageLoadingStateChange: Observer? - var onShouldRetryImageLoadStateChange: Observer? - - func loadImageData() { - onImageLoadingStateChange?(true) - onShouldRetryImageLoadStateChange?(false) - task = imageLoader.loadImageData(from: url) { [weak self] result in - self?.handle(result) - } - } - - private func handle(_ result: FeedImageDataLoader.Result) { - if let image = (try? result.get()).flatMap(imageTransformer) { - onImageLoad?(image) - } else { - onShouldRetryImageLoadStateChange?(true) - } - onImageLoadingStateChange?(false) - } - - func cancelImageDataLoad() { - task?.cancel() - task = nil - } -} From a7fa156724775c5accf4f2e56953b04100da1762 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 13:05:53 +0200 Subject: [PATCH 086/125] Create viewModels for presenter views --- .../Composers/FeedUIComposer.swift | 12 ++++---- .../FeedImagePresenter.swift | 29 ++++++++++++++----- .../Controllers/FeedImageCellController.swift | 12 ++++---- 3 files changed, 33 insertions(+), 20 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 315d0b4..6bee640 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -41,20 +41,20 @@ extension WeakRefVirtualProxy: FeedLoadingView where T: FeedLoadingView { } extension WeakRefVirtualProxy: FeedImageLoadingView where T: FeedImageLoadingView { - func display(isLoading: Bool) { - object?.display(isLoading: isLoading) + func display(_ viewModel: FeedImageLoadingViewModel) { + object?.display(viewModel) } } extension WeakRefVirtualProxy: FeedImageRetryView where T: FeedImageRetryView { - func display(shouldRetry: Bool) { - object?.display(shouldRetry: shouldRetry) + func display(_ viewModel: FeedImageRetryViewModel) { + object?.display(viewModel) } } extension WeakRefVirtualProxy: FeedImageView where T: FeedImageView { - func display(image: A) { - object?.display(image: image) + func display(_ viewModel: FeedImageViewModel) { + object?.display(viewModel) } } diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift index 721785e..681f87d 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift @@ -8,16 +8,29 @@ import Foundation import EssentialFeed +struct FeedImageViewModel { + let image: T +} + protocol FeedImageView { - func display(image: T) + func display(_ viewModel: FeedImageViewModel) +} + + +struct FeedImageLoadingViewModel { + let isLoading: Bool } protocol FeedImageLoadingView { - func display(isLoading: Bool) + func display(_ viewModel: FeedImageLoadingViewModel) +} + +struct FeedImageRetryViewModel { + let shouldRetry: Bool } protocol FeedImageRetryView { - func display(shouldRetry: Bool) + func display(_ viewModel: FeedImageRetryViewModel) } final class FeedImagePresenter { @@ -44,8 +57,8 @@ final class FeedImagePresenter { var imageRetryView: FeedImageRetryView? func loadImageData() { - imageLoadingView?.display(isLoading: true) - imageRetryView?.display(shouldRetry: false) + imageLoadingView?.display(FeedImageLoadingViewModel(isLoading: true)) + imageRetryView?.display(FeedImageRetryViewModel(shouldRetry: false)) task = imageLoader.loadImageData(from: url) { [weak self] result in self?.handle(result) } @@ -53,11 +66,11 @@ final class FeedImagePresenter { private func handle(_ result: FeedImageDataLoader.Result) { if let image = (try? result.get()).flatMap(imageTransformer) { - imageView?.display(image: image) + imageView?.display(FeedImageViewModel(image: image)) } else { - imageRetryView?.display(shouldRetry: true) + imageRetryView?.display(FeedImageRetryViewModel(shouldRetry: true)) } - imageLoadingView?.display(isLoading: false) + imageLoadingView?.display(FeedImageLoadingViewModel(isLoading: false)) } func cancelImageDataLoad() { diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index a46b56d..8d6f876 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -45,14 +45,14 @@ final class FeedImageCellController { extension FeedImageCellController: FeedImageView { - func display(image: T) { - cell?.feedImageView.image = image as? UIImage + func display(_ viewModel: FeedImageViewModel) { + cell?.feedImageView.image = viewModel.image as? UIImage } } extension FeedImageCellController: FeedImageLoadingView { - func display(isLoading: Bool) { - if isLoading { + func display(_ viewModel: FeedImageLoadingViewModel) { + if viewModel.isLoading { cell?.feedImageContainer.startShimmering() } else { cell?.feedImageContainer.stopShimmering() @@ -61,7 +61,7 @@ extension FeedImageCellController: FeedImageLoadingView { } extension FeedImageCellController: FeedImageRetryView { - func display(shouldRetry: Bool) { - cell?.feedImageRetryButton.isHidden = !shouldRetry + func display(_ viewModel: FeedImageRetryViewModel) { + cell?.feedImageRetryButton.isHidden = !viewModel.shouldRetry } } From a40cbeb7d2b98eaa156e15703b0d1274d3947e8e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 13:59:01 +0200 Subject: [PATCH 087/125] Refactoring: - Extract properties out of `FeedImagePresenter` into the `FeedImageViewModel` - Simplify presenter but unifying views and viewModels into a single `FeedView` and `FeedViewModel` - Init injection of `view` property - Extract logic from presenter and create and adapter to handle image requests & cancels. --- .../Composers/FeedUIComposer.swift | 59 +++++++---- .../FeedImagePresenter.swift | 100 ++++++++++-------- .../Controllers/FeedImageCellController.swift | 54 ++++------ 3 files changed, 114 insertions(+), 99 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 6bee640..4873e9c 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -40,18 +40,6 @@ extension WeakRefVirtualProxy: FeedLoadingView where T: FeedLoadingView { } } -extension WeakRefVirtualProxy: FeedImageLoadingView where T: FeedImageLoadingView { - func display(_ viewModel: FeedImageLoadingViewModel) { - object?.display(viewModel) - } -} - -extension WeakRefVirtualProxy: FeedImageRetryView where T: FeedImageRetryView { - func display(_ viewModel: FeedImageRetryViewModel) { - object?.display(viewModel) - } -} - extension WeakRefVirtualProxy: FeedImageView where T: FeedImageView { func display(_ viewModel: FeedImageViewModel) { object?.display(viewModel) @@ -68,22 +56,55 @@ private final class FeedViewAdapter: FeedView { } func display(_ viewModel: FeedViewModel) { - controller?.tableModel = viewModel.feed.map { + controller?.tableModel = viewModel.feed.map { model in + let presenterAdapter = FeedImagePresentationAdapter( + model: model, + imageLoader: imageLoader + ) + + let controller = FeedImageCellController(delegate: presenterAdapter) + let presenter = FeedImagePresenter( - model: $0, - imageLoader: imageLoader, + view: WeakRefVirtualProxy(controller), + model: model, imageTransformer: UIImage.init ) - let controller = FeedImageCellController(presenter: presenter) - presenter.imageView = WeakRefVirtualProxy(controller) - presenter.imageRetryView = WeakRefVirtualProxy(controller) - presenter.imageLoadingView = WeakRefVirtualProxy(controller) + presenterAdapter.presenter = presenter return controller } } } +private final class FeedImagePresentationAdapter: FeedImageCellControllerDelegate { + + private var task: FeedImageDataLoaderTask? + private let model: FeedImage + private let imageLoader: FeedImageDataLoader + var presenter: FeedImagePresenter? + + init(model: FeedImage, imageLoader: FeedImageDataLoader) { + self.model = model + self.imageLoader = imageLoader + } + + func didRequestImage() { + presenter?.didStartShowingImage(for: model) + task = imageLoader.loadImageData(from: model.url) { [weak self, model] result in + switch result { + case .success(let data): + self?.presenter?.didFinishLoadingImageData(with: data, for: model) + case .failure(let error): + self?.presenter?.didFinishLoadingImageData(with: error, for: model) + } + } + } + + func didCancelImageRequest() { + task?.cancel() + } +} + private final class FeedLoaderPresentationAdapter: FeedRefreshViewControllerDelegate { private let feedLoader: FeedLoader var presenter: FeedPresenter? diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift index 681f87d..84de2fe 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift @@ -9,72 +9,78 @@ import Foundation import EssentialFeed struct FeedImageViewModel { - let image: T -} - -protocol FeedImageView { - func display(_ viewModel: FeedImageViewModel) -} - - -struct FeedImageLoadingViewModel { + let description: String? + let location: String? + let image: T? + let isLoading: Bool -} - -protocol FeedImageLoadingView { - func display(_ viewModel: FeedImageLoadingViewModel) -} - -struct FeedImageRetryViewModel { let shouldRetry: Bool + + var hasLocation: Bool { location != nil } } -protocol FeedImageRetryView { - func display(_ viewModel: FeedImageRetryViewModel) +protocol FeedImageView { + func display(_ viewModel: FeedImageViewModel) } final class FeedImagePresenter { - typealias Observer = (T) -> Void - private var task: FeedImageDataLoaderTask? + private let view: FeedImageView private let model: FeedImage - private let imageLoader: FeedImageDataLoader private let imageTransformer: (Data) -> Image? + - init(model: FeedImage, imageLoader: FeedImageDataLoader, imageTransformer: @escaping (Data) -> Image?) { + init(view: FeedImageView, model: FeedImage, imageTransformer: @escaping (Data) -> Image?) { + self.view = view self.model = model - self.imageLoader = imageLoader self.imageTransformer = imageTransformer } - private var url: URL { model.url } - var location: String? { model.location } - var hasLocation: Bool { location != nil } - var description: String? { model.description } - - var imageView: FeedImageView? - var imageLoadingView: FeedImageLoadingView? - var imageRetryView: FeedImageRetryView? - - func loadImageData() { - imageLoadingView?.display(FeedImageLoadingViewModel(isLoading: true)) - imageRetryView?.display(FeedImageRetryViewModel(shouldRetry: false)) - task = imageLoader.loadImageData(from: url) { [weak self] result in - self?.handle(result) - } + func didStartShowingImage(for model: FeedImage) { + view.display( + FeedImageViewModel( + description: model.description, + location: model.location, + image: nil, + isLoading: true, + shouldRetry: false + ) + ) } - private func handle(_ result: FeedImageDataLoader.Result) { - if let image = (try? result.get()).flatMap(imageTransformer) { - imageView?.display(FeedImageViewModel(image: image)) - } else { - imageRetryView?.display(FeedImageRetryViewModel(shouldRetry: true)) + func didFinishLoadingImageData(with data: Data, for model: FeedImage) { + guard let image = imageTransformer(data) else { + view.display( + FeedImageViewModel( + description: model.description, + location: model.location, + image: nil, + isLoading: false, + shouldRetry: true + ) + ) + return } - imageLoadingView?.display(FeedImageLoadingViewModel(isLoading: false)) + view.display( + FeedImageViewModel( + description: model.description, + location: model.location, + image: image, + isLoading: false, + shouldRetry: false + ) + ) } - func cancelImageDataLoad() { - task?.cancel() - task = nil + func didFinishLoadingImageData(with error: Error, for model: FeedImage) { + view.display( + FeedImageViewModel( + description: model.description, + location: model.location, + image: nil, + isLoading: false, + shouldRetry: true + ) + ) } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 8d6f876..bb14337 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -8,60 +8,48 @@ import EssentialFeed import UIKit +protocol FeedImageCellControllerDelegate { + func didRequestImage() + func didCancelImageRequest() +} + final class FeedImageCellController { - let presenter: FeedImagePresenter - private var cell: FeedImageCell? + let delegate: FeedImageCellControllerDelegate + private lazy var cell = FeedImageCell() - init(presenter: FeedImagePresenter) { - self.presenter = presenter + init(delegate: FeedImageCellControllerDelegate) { + self.delegate = delegate } func view() -> UITableViewCell { - let cell = makeCell() - presenter.loadImageData() + delegate.didRequestImage() return cell } func preload() { - presenter.loadImageData() + delegate.didRequestImage() } func cancelLoad() { - presenter.cancelImageDataLoad() - } - - private func makeCell() -> FeedImageCell { - let cell = FeedImageCell() - self.cell = cell - cell.locationContainer.isHidden = !presenter.hasLocation - cell.locationLabel.text = presenter.location - cell.descriptionLabel.text = presenter.description - cell.onRetry = presenter.loadImageData - - return cell + delegate.didCancelImageRequest() } } extension FeedImageCellController: FeedImageView { func display(_ viewModel: FeedImageViewModel) { - cell?.feedImageView.image = viewModel.image as? UIImage - } -} - -extension FeedImageCellController: FeedImageLoadingView { - func display(_ viewModel: FeedImageLoadingViewModel) { + cell.feedImageView.image = viewModel.image as? UIImage + cell.locationContainer.isHidden = !viewModel.hasLocation + cell.locationLabel.text = viewModel.location + cell.descriptionLabel.text = viewModel.description + cell.feedImageRetryButton.isHidden = !viewModel.shouldRetry + cell.onRetry = delegate.didRequestImage + if viewModel.isLoading { - cell?.feedImageContainer.startShimmering() + cell.feedImageContainer.startShimmering() } else { - cell?.feedImageContainer.stopShimmering() + cell.feedImageContainer.stopShimmering() } } } - -extension FeedImageCellController: FeedImageRetryView { - func display(_ viewModel: FeedImageRetryViewModel) { - cell?.feedImageRetryButton.isHidden = !viewModel.shouldRetry - } -} From 33ba1d94758100509d261f518cfad5bc91977f23 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 14:07:09 +0200 Subject: [PATCH 088/125] Move generic to associatedType on `FeedImageView` protocol to gain clarity: `func display(_ viewModel: FeedImageViewModel)` instead of: `func display(_ viewModel: FeedImageViewModel)` --- .../EssentialFeediOS/Composers/FeedUIComposer.swift | 13 ++++++------- .../Feed Presentation/FeedImagePresenter.swift | 9 +++++---- .../Controllers/FeedImageCellController.swift | 4 ++-- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 4873e9c..96c885e 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -40,8 +40,8 @@ extension WeakRefVirtualProxy: FeedLoadingView where T: FeedLoadingView { } } -extension WeakRefVirtualProxy: FeedImageView where T: FeedImageView { - func display(_ viewModel: FeedImageViewModel) { +extension WeakRefVirtualProxy: FeedImageView where T: FeedImageView, T.Image == UIImage { + func display(_ viewModel: FeedImageViewModel) { object?.display(viewModel) } } @@ -57,12 +57,12 @@ private final class FeedViewAdapter: FeedView { func display(_ viewModel: FeedViewModel) { controller?.tableModel = viewModel.feed.map { model in - let presenterAdapter = FeedImagePresentationAdapter( + let adapter = FeedImagePresentationAdapter( model: model, imageLoader: imageLoader ) - let controller = FeedImageCellController(delegate: presenterAdapter) + let controller = FeedImageCellController(delegate: adapter) let presenter = FeedImagePresenter( view: WeakRefVirtualProxy(controller), @@ -70,7 +70,7 @@ private final class FeedViewAdapter: FeedView { imageTransformer: UIImage.init ) - presenterAdapter.presenter = presenter + adapter.presenter = presenter return controller } } @@ -81,7 +81,7 @@ private final class FeedImagePresentationAdapter: FeedImageCellControllerDelegat private var task: FeedImageDataLoaderTask? private let model: FeedImage private let imageLoader: FeedImageDataLoader - var presenter: FeedImagePresenter? + var presenter: FeedImagePresenter, UIImage>? init(model: FeedImage, imageLoader: FeedImageDataLoader) { self.model = model @@ -129,4 +129,3 @@ private final class FeedLoaderPresentationAdapter: FeedRefreshViewControllerDele loadFeed() } } - diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift index 84de2fe..4d04354 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift @@ -20,17 +20,18 @@ struct FeedImageViewModel { } protocol FeedImageView { - func display(_ viewModel: FeedImageViewModel) + associatedtype Image + func display(_ viewModel: FeedImageViewModel) } -final class FeedImagePresenter { +final class FeedImagePresenter where View.Image == Image { - private let view: FeedImageView + private let view: View private let model: FeedImage private let imageTransformer: (Data) -> Image? - init(view: FeedImageView, model: FeedImage, imageTransformer: @escaping (Data) -> Image?) { + init(view: View, model: FeedImage, imageTransformer: @escaping (Data) -> Image?) { self.view = view self.model = model self.imageTransformer = imageTransformer diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index bb14337..26eaabb 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -38,8 +38,8 @@ final class FeedImageCellController { extension FeedImageCellController: FeedImageView { - func display(_ viewModel: FeedImageViewModel) { - cell.feedImageView.image = viewModel.image as? UIImage + func display(_ viewModel: FeedImageViewModel) { + cell.feedImageView.image = viewModel.image cell.locationContainer.isHidden = !viewModel.hasLocation cell.locationLabel.text = viewModel.location cell.descriptionLabel.text = viewModel.description From 044d9703559d7ee76738c2169a5d9c76f8dd2385 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 14:14:02 +0200 Subject: [PATCH 089/125] Extract animation logic into a computed var with a setter --- .../Feed Presentation/FeedImagePresenter.swift | 1 - .../Feed UI/Controllers/FeedImageCellController.swift | 7 +------ .../EssentialFeediOS/Feed UI/Views/UIView+Shimmering.swift | 7 ++++++- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift index 4d04354..726cd5b 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedImagePresenter.swift @@ -29,7 +29,6 @@ final class FeedImagePresenter where View.Image == I private let view: View private let model: FeedImage private let imageTransformer: (Data) -> Image? - init(view: View, model: FeedImage, imageTransformer: @escaping (Data) -> Image?) { self.view = view diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 26eaabb..1d31423 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -45,11 +45,6 @@ extension FeedImageCellController: FeedImageView { cell.descriptionLabel.text = viewModel.description cell.feedImageRetryButton.isHidden = !viewModel.shouldRetry cell.onRetry = delegate.didRequestImage - - if viewModel.isLoading { - cell.feedImageContainer.startShimmering() - } else { - cell.feedImageContainer.stopShimmering() - } + cell.feedImageContainer.isShimmering = viewModel.isLoading } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/UIView+Shimmering.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Views/UIView+Shimmering.swift index d519370..638c9cb 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Views/UIView+Shimmering.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/UIView+Shimmering.swift @@ -7,9 +7,14 @@ import UIKit extension UIView { - public var isShimmering: Bool { + private var _isShimmering: Bool { return layer.mask?.animation(forKey: shimmerAnimationKey) != nil } + + public var isShimmering: Bool { + get { _isShimmering } + set { newValue ? startShimmering() : stopShimmering() } + } private var shimmerAnimationKey: String { "shimmer" } From 5bae18ece87e9cb5999540ac35518552f417ac67 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 14:36:51 +0200 Subject: [PATCH 090/125] Add `Feed.storyboard` and `Feed.xcassets` from prototype --- .../Feed UI/Views/Feed.xcassets/Contents.json | 6 + .../Feed.xcassets/pin.imageset/Contents.json | 23 +++ .../Views/Feed.xcassets/pin.imageset/pin.png | Bin 0 -> 888 bytes .../Feed.xcassets/pin.imageset/pin@2x.png | Bin 0 -> 1767 bytes .../Feed.xcassets/pin.imageset/pin@3x.png | Bin 0 -> 2783 bytes .../Feed UI/Views/FeedStoryboard.storyboard | 145 ++++++++++++++++++ 6 files changed, 174 insertions(+) create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/Contents.json create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/Contents.json create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/pin.png create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/pin@2x.png create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/pin@3x.png create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedStoryboard.storyboard diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/Contents.json b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/Contents.json b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/Contents.json new file mode 100644 index 0000000..ab7c630 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "pin.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "pin@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "pin@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/pin.png b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.xcassets/pin.imageset/pin.png new file mode 100644 index 0000000000000000000000000000000000000000..6acdd6152ef8a95d3d0ceb2061c338297dc13057 GIT binary patch literal 888 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 literal 0 HcmV?d00001 diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedStoryboard.storyboard b/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedStoryboard.storyboard new file mode 100644 index 0000000..ac50626 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedStoryboard.storyboard @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 9a0caea4d602c1cea0be3dbdfcf2d432c7e02fa7 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 14:40:59 +0200 Subject: [PATCH 091/125] Instantiate `FeedViewController` from `Feed.storyboard` --- .../EssentialFeediOS/Composers/FeedUIComposer.swift | 7 ++++++- .../Views/{FeedStoryboard.storyboard => Feed.storyboard} | 0 2 files changed, 6 insertions(+), 1 deletion(-) rename EssentialFeed/EssentialFeediOS/Feed UI/Views/{FeedStoryboard.storyboard => Feed.storyboard} (100%) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 96c885e..49346de 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -18,7 +18,12 @@ public enum FeedUIComposer { let presentationAdapter = FeedLoaderPresentationAdapter(feedLoader: feedLoader) let refreshController = FeedRefreshViewController(delegate: presentationAdapter) - let feedController = FeedViewController(refreshController: refreshController) + + let bundle = Bundle(for: FeedViewController.self) + let storyboard = UIStoryboard(name: "Feed", bundle: bundle) + let feedController = storyboard.instantiateInitialViewController() as! FeedViewController + feedController.refreshController = refreshController + presentationAdapter.presenter = FeedPresenter( feedView: FeedViewAdapter(controller: feedController, imageLoader: imageLoader), loadingView: WeakRefVirtualProxy(refreshController) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedStoryboard.storyboard b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard similarity index 100% rename from EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedStoryboard.storyboard rename to EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard From f919041a4fba9a09daa3c3f813d4a1d298951a3f Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 14:49:38 +0200 Subject: [PATCH 092/125] Move `FeedViewController` + `FeedRefreshViewController` composition (instantation and configuration) to Storyboard --- .../Composers/FeedUIComposer.swift | 6 +++--- .../Controllers/FeedRefreshViewController.swift | 14 +++++--------- .../Feed UI/Controllers/FeedViewController.swift | 4 +--- .../Feed UI/Views/Feed.storyboard | 15 +++++++++++++-- 4 files changed, 22 insertions(+), 17 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 49346de..c72cc55 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -17,12 +17,12 @@ public enum FeedUIComposer { ) -> FeedViewController { let presentationAdapter = FeedLoaderPresentationAdapter(feedLoader: feedLoader) - let refreshController = FeedRefreshViewController(delegate: presentationAdapter) - + let bundle = Bundle(for: FeedViewController.self) let storyboard = UIStoryboard(name: "Feed", bundle: bundle) let feedController = storyboard.instantiateInitialViewController() as! FeedViewController - feedController.refreshController = refreshController + let refreshController = feedController.refreshController! + refreshController.delegate = presentationAdapter presentationAdapter.presenter = FeedPresenter( feedView: FeedViewAdapter(controller: feedController, imageLoader: imageLoader), diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift index 03cf21e..cc97356 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift @@ -13,20 +13,16 @@ protocol FeedRefreshViewControllerDelegate { public final class FeedRefreshViewController: NSObject, FeedLoadingView { - public lazy var view = loadView() + @IBOutlet public var view: UIRefreshControl? - private let delegate: FeedRefreshViewControllerDelegate + var delegate: FeedRefreshViewControllerDelegate? - init(delegate: FeedRefreshViewControllerDelegate) { - self.delegate = delegate - } - - @objc func refresh() { - delegate.didRequestFeedRefresh() + @IBAction func refresh() { + delegate?.didRequestFeedRefresh() } func display(_ viewModel: FeedLoadingViewModel) { - view.refreshIf(viewModel.isLoading) + view?.refreshIf(viewModel.isLoading) } func loadView() -> UIRefreshControl { diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 675a0bd..d15b3bd 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -8,7 +8,7 @@ import UIKit public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { - public var refreshController: FeedRefreshViewController? + @IBOutlet public var refreshController: FeedRefreshViewController? var tableModel = [FeedImageCellController]() { didSet { tableView.reloadData() } } @@ -22,8 +22,6 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou public override func viewDidLoad() { super.viewDidLoad() - - refreshControl = refreshController?.view tableView.prefetchDataSource = self diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard index ac50626..06509b5 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard @@ -10,7 +10,7 @@ - + @@ -26,7 +26,7 @@ - + @@ -129,9 +129,20 @@ Location + + + + + + + + + + + From eec72dc1e35c9c8aa79dd8a24d21746c896f0f1d Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 14:57:09 +0200 Subject: [PATCH 093/125] Merge `FeedRefreshViewController` with `FeedViewController` since the `UIRefreshControl` and configuration now lives in the storyboard --- .../Composers/FeedUIComposer.swift | 7 ++- .../FeedRefreshViewController.swift | 43 ------------------- .../Controllers/FeedViewController.swift | 30 ++++++++++--- .../Feed UI/Views/Feed.storyboard | 10 +---- .../FeedViewControllerTests.swift | 1 - 5 files changed, 29 insertions(+), 62 deletions(-) delete mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index c72cc55..8d6be97 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -21,12 +21,11 @@ public enum FeedUIComposer { let bundle = Bundle(for: FeedViewController.self) let storyboard = UIStoryboard(name: "Feed", bundle: bundle) let feedController = storyboard.instantiateInitialViewController() as! FeedViewController - let refreshController = feedController.refreshController! - refreshController.delegate = presentationAdapter + feedController.delegate = presentationAdapter presentationAdapter.presenter = FeedPresenter( feedView: FeedViewAdapter(controller: feedController, imageLoader: imageLoader), - loadingView: WeakRefVirtualProxy(refreshController) + loadingView: WeakRefVirtualProxy(feedController) ) return feedController } @@ -110,7 +109,7 @@ private final class FeedImagePresentationAdapter: FeedImageCellControllerDelegat } } -private final class FeedLoaderPresentationAdapter: FeedRefreshViewControllerDelegate { +private final class FeedLoaderPresentationAdapter: FeedViewControllerDelegate { private let feedLoader: FeedLoader var presenter: FeedPresenter? diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift deleted file mode 100644 index cc97356..0000000 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedRefreshViewController.swift +++ /dev/null @@ -1,43 +0,0 @@ -// -// FeedRefreshViewController.swift -// EssentialFeed -// -// Created by Cristian Felipe Patiño Rojas on 14/4/25. -// - -import UIKit - -protocol FeedRefreshViewControllerDelegate { - func didRequestFeedRefresh() -} - -public final class FeedRefreshViewController: NSObject, FeedLoadingView { - - @IBOutlet public var view: UIRefreshControl? - - var delegate: FeedRefreshViewControllerDelegate? - - @IBAction func refresh() { - delegate?.didRequestFeedRefresh() - } - - func display(_ viewModel: FeedLoadingViewModel) { - view?.refreshIf(viewModel.isLoading) - } - - func loadView() -> UIRefreshControl { - let view = UIRefreshControl() - view.addTarget(self, action: #selector(refresh), for: .valueChanged) - return view - } -} - -private extension UIRefreshControl { - func refreshIf(_ shouldRefresh: Bool) { - if shouldRefresh { - beginRefreshing() - } else { - endRefreshing() - } - } -} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index d15b3bd..6edee6c 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -7,17 +7,21 @@ import UIKit +protocol FeedViewControllerDelegate { + func didRequestFeedRefresh() +} + public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { - @IBOutlet public var refreshController: FeedRefreshViewController? + var delegate: FeedViewControllerDelegate? + var tableModel = [FeedImageCellController]() { didSet { tableView.reloadData() } } private var onViewIsAppearing: ((FeedViewController) -> ())? - convenience init(refreshController: FeedRefreshViewController) { - self.init() - self.refreshController = refreshController + @IBAction private func refresh() { + delegate?.didRequestFeedRefresh() } public override func viewDidLoad() { @@ -26,7 +30,7 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou tableView.prefetchDataSource = self onViewIsAppearing = { vc in - vc.refreshController?.refresh() + vc.refresh() vc.onViewIsAppearing = nil } } @@ -65,3 +69,19 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou return tableModel[indexPath.row] } } + +extension FeedViewController: FeedLoadingView { + func display(_ viewModel: FeedLoadingViewModel) { + refreshControl?.refreshIf(viewModel.isLoading) + } +} + +private extension UIRefreshControl { + func refreshIf(_ shouldRefresh: Bool) { + if shouldRefresh { + beginRefreshing() + } else { + endRefreshing() + } + } +} diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard index 06509b5..b93396b 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard @@ -130,19 +130,11 @@ Location - + - - - - - - - - diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 8e993fc..9db0c76 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -473,7 +473,6 @@ private extension FeedViewController { } } - refreshController?.view = fake refreshControl = fake } From 267c8a3b18113c2f92d39bef7a35b8382e2010b7 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 14:58:23 +0200 Subject: [PATCH 094/125] Move tableView prefetchDataSource setup to the storyboard --- .../Feed UI/Controllers/FeedViewController.swift | 3 --- EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard | 1 + 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 6edee6c..9b5b33a 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -26,9 +26,6 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou public override func viewDidLoad() { super.viewDidLoad() - - tableView.prefetchDataSource = self - onViewIsAppearing = { vc in vc.refresh() vc.onViewIsAppearing = nil diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard index b93396b..a929878 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard @@ -124,6 +124,7 @@ Location + From 57e49136bb3d1f55bd5c70039882fdef3258b1be Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 15:19:17 +0200 Subject: [PATCH 095/125] Reuse table view cells from storyboard configuration --- .../Controllers/FeedImageCellController.swift | 26 ++++++++++++------- .../Controllers/FeedViewController.swift | 2 +- .../Feed UI/Views/Feed.storyboard | 11 ++++++++ .../Feed UI/Views/FeedImageCell.swift | 22 ++++++---------- .../FeedViewControllerTests.swift | 20 ++++++++++++-- 5 files changed, 55 insertions(+), 26 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 1d31423..2907707 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -16,13 +16,15 @@ protocol FeedImageCellControllerDelegate { final class FeedImageCellController { let delegate: FeedImageCellControllerDelegate - private lazy var cell = FeedImageCell() + private var cell: FeedImageCell? init(delegate: FeedImageCellControllerDelegate) { self.delegate = delegate } - func view() -> UITableViewCell { + func view(in tableView: UITableView) -> UITableViewCell { + let cell = tableView.dequeueReusableCell(withIdentifier: "FeedImageCell") as! FeedImageCell + self.cell = cell delegate.didRequestImage() return cell } @@ -32,19 +34,25 @@ final class FeedImageCellController { } func cancelLoad() { + releaseCellForReuse() delegate.didCancelImageRequest() } + + + private func releaseCellForReuse() { + cell = nil + } } extension FeedImageCellController: FeedImageView { func display(_ viewModel: FeedImageViewModel) { - cell.feedImageView.image = viewModel.image - cell.locationContainer.isHidden = !viewModel.hasLocation - cell.locationLabel.text = viewModel.location - cell.descriptionLabel.text = viewModel.description - cell.feedImageRetryButton.isHidden = !viewModel.shouldRetry - cell.onRetry = delegate.didRequestImage - cell.feedImageContainer.isShimmering = viewModel.isLoading + cell?.feedImageView.image = viewModel.image + cell?.locationContainer.isHidden = !viewModel.hasLocation + cell?.locationLabel.text = viewModel.location + cell?.descriptionLabel.text = viewModel.description + cell?.feedImageRetryButton.isHidden = !viewModel.shouldRetry + cell?.onRetry = delegate.didRequestImage + cell?.feedImageContainer.isShimmering = viewModel.isLoading } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 9b5b33a..ff2392d 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -41,7 +41,7 @@ public final class FeedViewController: UITableViewController, UITableViewDataSou } public override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { - return cellController(forRowAt: indexPath).view() + return cellController(forRowAt: indexPath).view(in: tableView) } public override func tableView(_ tableView: UITableView, didEndDisplaying cell: UITableViewCell, forRowAt indexPath: IndexPath) { diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard index a929878..dde809b 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/Feed.storyboard @@ -78,6 +78,9 @@ Location + + + @@ -119,6 +122,14 @@ Location + + + + + + + + diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedImageCell.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedImageCell.swift index f44364a..decb51a 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedImageCell.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Views/FeedImageCell.swift @@ -8,22 +8,16 @@ import UIKit public final class FeedImageCell: UITableViewCell { - public let locationContainer = UIView() - public let locationLabel = UILabel() - public let descriptionLabel = UILabel() - public let feedImageContainer = UIView() - public let feedImageView = UIImageView() - - private(set) public lazy var feedImageRetryButton: UIButton = { - let button = UIButton() - button.addTarget(self, action: #selector(retryButtonTapped), for: .touchUpInside) - return button - }() - + @IBOutlet private(set) public var locationContainer: UIView! + @IBOutlet private(set) public var locationLabel: UILabel! + @IBOutlet private(set) public var descriptionLabel: UILabel! + @IBOutlet private(set) public var feedImageContainer: UIView! + @IBOutlet private(set) public var feedImageRetryButton: UIButton! + @IBOutlet private(set) public var feedImageView: UIImageView! + var onRetry: (() -> Void)? - @objc - func retryButtonTapped() { + @IBAction func retryButtonTapped() { onRetry?() } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 9db0c76..975b585 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -271,6 +271,17 @@ final class FeedViewControllerTests: XCTestCase { XCTAssertEqual(loader.cancelledImageURls, [image0.url, image1.url], "Expected second image URL request cancel once second image is not near visible") } + func test_feedImageView_doesNotRenderLoadedImageWhenNotVisibleAnymore() { + let (sut, loader) = makeSUT() + sut.simulateAppearance() + loader.completeFeedLoading(with: [makeImage()], at: 0) + + let view = sut.simulateFeedImageNotViewVisible(at: 0) + loader.completeImageLoading(with: anyImageData()) + + XCTAssertNil(view?.renderedImage, "Expected no rendered image when an image load finishes after the view is not visible anymore") + } + // MARK: - Helper private func makeSUT( @@ -338,6 +349,10 @@ final class FeedViewControllerTests: XCTestCase { FeedImage(id: UUID(), description: description, location: location, url: url) } + private func anyImageData() -> Data { + UIImage.make(withColor: .red).pngData()! + } + class LoaderSpy: FeedLoader, FeedImageDataLoader { @@ -416,13 +431,14 @@ private extension FeedViewController { return feedImageView(at: index) as? FeedImageCell } - - func simulateFeedImageNotViewVisible(at row: Int) { + @discardableResult + func simulateFeedImageNotViewVisible(at row: Int) -> FeedImageCell? { let view = simulateFeedImageViewVisible(at: row) let delegate = tableView.delegate let index = IndexPath(row: row, section: feedImageSection) delegate?.tableView?(tableView, didEndDisplaying: view!, forRowAt: index) + return view } func simulateFeedImageViewNearVisible(at row: Int) { From 92fcadee4872aeb3646d5c4de76afa3f10bf88ec Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 15:23:58 +0200 Subject: [PATCH 096/125] Add UI table view helper to dequeue cells by class name --- .../Controllers/FeedImageCellController.swift | 7 +++---- .../Controllers/UITableView+dequeueReusable.swift | 15 +++++++++++++++ 2 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Controllers/UITableView+dequeueReusable.swift diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 2907707..592a2a9 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -23,10 +23,9 @@ final class FeedImageCellController { } func view(in tableView: UITableView) -> UITableViewCell { - let cell = tableView.dequeueReusableCell(withIdentifier: "FeedImageCell") as! FeedImageCell - self.cell = cell + cell = tableView.dequeueReusableCell() delegate.didRequestImage() - return cell + return cell! } func preload() { @@ -44,7 +43,6 @@ final class FeedImageCellController { } } - extension FeedImageCellController: FeedImageView { func display(_ viewModel: FeedImageViewModel) { cell?.feedImageView.image = viewModel.image @@ -56,3 +54,4 @@ extension FeedImageCellController: FeedImageView { cell?.feedImageContainer.isShimmering = viewModel.isLoading } } + diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/UITableView+dequeueReusable.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/UITableView+dequeueReusable.swift new file mode 100644 index 0000000..9162522 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/UITableView+dequeueReusable.swift @@ -0,0 +1,15 @@ +// +// UITableView+dequeueReusable.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + +import UIKit + +extension UITableView { + func dequeueReusableCell() -> T { + let identifier = String(describing: T.self) + return dequeueReusableCell(withIdentifier: identifier) as! T + } +} From 782c2ccfbcfa6fa328196e86b7d91026c75a50f8 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 15:28:20 +0200 Subject: [PATCH 097/125] Display image with animation --- .../Controllers/FeedImageCellController.swift | 2 +- .../UIImage+setImageAnimately.swift | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed UI/Controllers/UIImage+setImageAnimately.swift diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift index 592a2a9..66c2b8e 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedImageCellController.swift @@ -45,7 +45,7 @@ final class FeedImageCellController { extension FeedImageCellController: FeedImageView { func display(_ viewModel: FeedImageViewModel) { - cell?.feedImageView.image = viewModel.image + cell?.feedImageView.setImageAnimately(viewModel.image) cell?.locationContainer.isHidden = !viewModel.hasLocation cell?.locationLabel.text = viewModel.location cell?.descriptionLabel.text = viewModel.description diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/UIImage+setImageAnimately.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/UIImage+setImageAnimately.swift new file mode 100644 index 0000000..818edab --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/UIImage+setImageAnimately.swift @@ -0,0 +1,19 @@ +// +// UIImage+setImageAnimately.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + +import UIKit + +extension UIImageView { + func setImageAnimately(_ newImage: UIImage?) { + image = newImage + guard newImage != nil else { return } + alpha = 0 + UIView.animate(withDuration: 0.25) { [weak self] in + self?.alpha = 1 + } + } +} From bb75ed771b823d308432ec077b317f4739810898 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 15:46:30 +0200 Subject: [PATCH 098/125] Add UITableViewController with extended life cycle methods --- .../Controllers/FeedViewController.swift | 27 ++++++++++++------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index ff2392d..a7f214e 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -11,29 +11,25 @@ protocol FeedViewControllerDelegate { func didRequestFeedRefresh() } -public final class FeedViewController: UITableViewController, UITableViewDataSourcePrefetching { +public final class FeedViewController: UITableViewControllerExtendedLifecycle, UITableViewDataSourcePrefetching { var delegate: FeedViewControllerDelegate? var tableModel = [FeedImageCellController]() { didSet { tableView.reloadData() } } - private var onViewIsAppearing: ((FeedViewController) -> ())? - @IBAction private func refresh() { delegate?.didRequestFeedRefresh() } public override func viewDidLoad() { super.viewDidLoad() - onViewIsAppearing = { vc in - vc.refresh() - vc.onViewIsAppearing = nil - } + title = "My Feed" } - public override func viewIsAppearing(_ animated: Bool) { - onViewIsAppearing?(self) + public override func viewFirstAppearance() { + super.viewFirstAppearance() + refresh() } public override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { @@ -82,3 +78,16 @@ private extension UIRefreshControl { } } } + +public class UITableViewControllerExtendedLifecycle: UITableViewController { + + var firstAppeared = true + public override func viewIsAppearing(_ animated: Bool) { + super.viewIsAppearing(animated) + firstAppeared ? viewFirstAppearance() : () + } + + func viewFirstAppearance() { + firstAppeared = false + } +} From ebd6e7ecc88c07db23ad6a63973704431cd860e3 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 15:49:06 +0200 Subject: [PATCH 099/125] =?UTF-8?q?Move=20title=20string=20creation=20from?= =?UTF-8?q?=20FeedViewController=20to=20FeedPresenter=20=E2=80=94=20In=20M?= =?UTF-8?q?VP,=20presentation=20data=20should=20be=20created=20by=20presen?= =?UTF-8?q?ters?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Feed Presentation/FeedPresenter.swift | 4 ++++ .../Feed UI/Controllers/FeedViewController.swift | 2 +- .../EssentialFeediOSTests/FeedViewControllerTests.swift | 8 ++++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index 33a2a04..7e71521 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -34,6 +34,10 @@ final class FeedPresenter { self.loadingView = loadingView } + static var title: String { + "My Feed" + } + func didStartLoadingFeed() { loadingView.display(FeedLoadingViewModel(isLoading: true)) } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index a7f214e..065a4e5 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -24,7 +24,7 @@ public final class FeedViewController: UITableViewControllerExtendedLifecycle, U public override func viewDidLoad() { super.viewDidLoad() - title = "My Feed" + title = FeedPresenter.title } public override func viewFirstAppearance() { diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 975b585..0f9ad39 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -12,6 +12,14 @@ import EssentialFeediOS final class FeedViewControllerTests: XCTestCase { + func test_feedView_hasTitle() { + let (sut, _) = makeSUT() + + sut.simulateAppearance() + + XCTAssertEqual(sut.title, "My Feed") + } + func test_viewDidLoad_doesNotShowRefreshControl() { let (sut, _) = makeSUT() sut.loadViewIfNeeded() From b772bdc03957712d065dd4605a01f08f084d80cc Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 15:52:01 +0200 Subject: [PATCH 100/125] =?UTF-8?q?Move=20title=20configuration=20from=20v?= =?UTF-8?q?iewController=20to=20composer=20=E2=80=94=20The=20View=20Contro?= =?UTF-8?q?llers=20can=20be=20agnostic=20of=20Presenters=20if=20we=20move?= =?UTF-8?q?=20from=20the=20configuration=20in=20composers?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift | 1 + .../Feed UI/Controllers/FeedViewController.swift | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 8d6be97..1cd8b3f 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -22,6 +22,7 @@ public enum FeedUIComposer { let storyboard = UIStoryboard(name: "Feed", bundle: bundle) let feedController = storyboard.instantiateInitialViewController() as! FeedViewController feedController.delegate = presentationAdapter + feedController.title = FeedPresenter.title presentationAdapter.presenter = FeedPresenter( feedView: FeedViewAdapter(controller: feedController, imageLoader: imageLoader), diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 065a4e5..9a508d5 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -24,7 +24,6 @@ public final class FeedViewController: UITableViewControllerExtendedLifecycle, U public override func viewDidLoad() { super.viewDidLoad() - title = FeedPresenter.title } public override func viewFirstAppearance() { From 2d0f53d6f4a2919839a79cbeb29988ba2ac64a1d Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 15:55:24 +0200 Subject: [PATCH 101/125] Extract the `FeedViewController` creation and configuration into a factory method --- .../Composers/FeedUIComposer.swift | 20 ++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 1cd8b3f..6c39a13 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -18,11 +18,10 @@ public enum FeedUIComposer { let presentationAdapter = FeedLoaderPresentationAdapter(feedLoader: feedLoader) - let bundle = Bundle(for: FeedViewController.self) - let storyboard = UIStoryboard(name: "Feed", bundle: bundle) - let feedController = storyboard.instantiateInitialViewController() as! FeedViewController - feedController.delegate = presentationAdapter - feedController.title = FeedPresenter.title + let feedController = FeedViewController.makeWith( + delegate: presentationAdapter, + title: FeedPresenter.title + ) presentationAdapter.presenter = FeedPresenter( feedView: FeedViewAdapter(controller: feedController, imageLoader: imageLoader), @@ -32,6 +31,17 @@ public enum FeedUIComposer { } } +private extension FeedViewController { + static func makeWith(delegate: FeedViewControllerDelegate, title: String) -> FeedViewController { + let bundle = Bundle(for: FeedViewController.self) + let storyboard = UIStoryboard(name: "Feed", bundle: bundle) + let feedController = storyboard.instantiateInitialViewController() as! FeedViewController + feedController.delegate = delegate + feedController.title = title + return feedController + } +} + private final class WeakRefVirtualProxy { private weak var object: T? init(_ object: T) { From e7dbf06b90be4fa8cd5d42ade7c9556c6e3a42b4 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 16:08:18 +0200 Subject: [PATCH 102/125] Localize feed view title string --- .../EssentialFeed.xcodeproj/project.pbxproj | 2 ++ .../Feed Presentation/Feed.xcstrings | 17 +++++++++++++++++ .../Feed Presentation/FeedPresenter.swift | 7 ++++++- .../FeedViewControllerTests.swift | 7 ++++++- 4 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Feed Presentation/Feed.xcstrings diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index 6af3cad..bf23052 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -758,6 +758,7 @@ ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_STRICT_CONCURRENCY = minimal; SWIFT_VERSION = 5.0; @@ -821,6 +822,7 @@ MTL_FAST_MATH = YES; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_EMIT_LOC_STRINGS = YES; SWIFT_OPTIMIZATION_LEVEL = "-O"; SWIFT_STRICT_CONCURRENCY = minimal; SWIFT_VERSION = 5.0; diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/Feed.xcstrings b/EssentialFeed/EssentialFeediOS/Feed Presentation/Feed.xcstrings new file mode 100644 index 0000000..6c2eb50 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/Feed.xcstrings @@ -0,0 +1,17 @@ +{ + "sourceLanguage" : "en", + "strings" : { + "FEED_VIEW_TITLE" : { + "extractionState" : "manual", + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "My Feed" + } + } + } + } + }, + "version" : "1.0" +} \ No newline at end of file diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index 7e71521..044e323 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -35,7 +35,12 @@ final class FeedPresenter { } static var title: String { - "My Feed" + NSLocalizedString( + "FEED_VIEW_TITLE", + tableName: "Feed", + bundle: Bundle(for: FeedPresenter.self), + comment: "Title for the feed view" + ) } func didStartLoadingFeed() { diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index 0f9ad39..f376a97 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -17,7 +17,12 @@ final class FeedViewControllerTests: XCTestCase { sut.simulateAppearance() - XCTAssertEqual(sut.title, "My Feed") + let bundle = Bundle(for: FeedViewController.self) + let localizedKey = "FEED_VIEW_TITLE" + let localizedTitle = bundle.localizedString(forKey: localizedKey, value: nil, table: "Feed") + + XCTAssertNotEqual(localizedKey, localizedTitle, "Missing localized string for key: \(localizedKey)") + XCTAssertEqual(sut.title, localizedTitle) } func test_viewDidLoad_doesNotShowRefreshControl() { From b05b0cd72e81b5fb3169b3462efc02c563f6dc9a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 16:15:33 +0200 Subject: [PATCH 103/125] Create test helper to find missing localized strings --- .../FeedViewControllerTests+Localized.swift | 21 +++++++++++++++++++ .../FeedViewControllerTests.swift | 9 +++----- 2 files changed, 24 insertions(+), 6 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests+Localized.swift diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests+Localized.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests+Localized.swift new file mode 100644 index 0000000..2c8fc61 --- /dev/null +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests+Localized.swift @@ -0,0 +1,21 @@ +// +// FeedViewControllerTests+Localized.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// +import Foundation +import XCTest +import EssentialFeediOS + +extension FeedViewControllerTests { + func localized(_ key: String, file: StaticString = #file, line: UInt = #line) -> String { + let table = "Feed" + let bundle = Bundle(for: FeedViewController.self) + let value = bundle.localizedString(forKey: key, value: nil, table: table) + if value == key { + XCTFail("Missing localized string for key: \(key) in table: \(table)", file: file, line: line) + } + return value + } +} diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift index f376a97..dd8c2c8 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift @@ -17,14 +17,11 @@ final class FeedViewControllerTests: XCTestCase { sut.simulateAppearance() - let bundle = Bundle(for: FeedViewController.self) - let localizedKey = "FEED_VIEW_TITLE" - let localizedTitle = bundle.localizedString(forKey: localizedKey, value: nil, table: "Feed") - - XCTAssertNotEqual(localizedKey, localizedTitle, "Missing localized string for key: \(localizedKey)") - XCTAssertEqual(sut.title, localizedTitle) + XCTAssertEqual(sut.title, localized("FEED_VIEW_TITLE")) } + + func test_viewDidLoad_doesNotShowRefreshControl() { let (sut, _) = makeSUT() sut.loadViewIfNeeded() From fd9fbd9372f69df9266a51688af25ed058153a4f Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 16:18:07 +0200 Subject: [PATCH 104/125] Rename FeedViewControllerTests to FeedUIIntegrationTests since we're testing the composition of multiple UI components in integration --- .../FeedUIIntegrationTests.swift} | 2 +- .../FeedUIIntegrationTests+Localized.swift} | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename EssentialFeed/EssentialFeediOSTests/{FeedViewControllerTests.swift => FeedUI/FeedUIIntegrationTests.swift} (99%) rename EssentialFeed/EssentialFeediOSTests/{FeedViewControllerTests+Localized.swift => Helpers/FeedUIIntegrationTests+Localized.swift} (94%) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift similarity index 99% rename from EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift rename to EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift index dd8c2c8..c6dec9d 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift @@ -10,7 +10,7 @@ import UIKit import EssentialFeed import EssentialFeediOS -final class FeedViewControllerTests: XCTestCase { +final class FeedUIIntegrationTests: XCTestCase { func test_feedView_hasTitle() { let (sut, _) = makeSUT() diff --git a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests+Localized.swift b/EssentialFeed/EssentialFeediOSTests/Helpers/FeedUIIntegrationTests+Localized.swift similarity index 94% rename from EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests+Localized.swift rename to EssentialFeed/EssentialFeediOSTests/Helpers/FeedUIIntegrationTests+Localized.swift index 2c8fc61..bf9c87d 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedViewControllerTests+Localized.swift +++ b/EssentialFeed/EssentialFeediOSTests/Helpers/FeedUIIntegrationTests+Localized.swift @@ -8,7 +8,7 @@ import Foundation import XCTest import EssentialFeediOS -extension FeedViewControllerTests { +extension FeedUIIntegrationTests { func localized(_ key: String, file: StaticString = #file, line: UInt = #line) -> String { let table = "Feed" let bundle = Bundle(for: FeedViewController.self) From 534e55c348e0461c5648c1d5557ea08194b4221f Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 16:20:42 +0200 Subject: [PATCH 105/125] Add support for greek and portuguese localization --- EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj | 2 ++ 1 file changed, 2 insertions(+) diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index bf23052..f1874f7 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -540,6 +540,8 @@ knownRegions = ( en, Base, + "pt-BR", + el, ); mainGroup = 080EDEE721B6DA7E00813479; productRefGroup = 080EDEF221B6DA7E00813479 /* Products */; From 4ac09bb7d6f9f8878035170fc2cdeb4023a331d2 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 16:31:12 +0200 Subject: [PATCH 106/125] Add localization tests to guarantee all localized keys have translatons in all supported localizations --- .../FeedUI/FeedLocalizationTests.swift | 57 +++++++++++++++++++ .../FeedUI/FeedUIIntegrationTests.swift | 2 - 2 files changed, 57 insertions(+), 2 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOSTests/FeedUI/FeedLocalizationTests.swift diff --git a/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedLocalizationTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedLocalizationTests.swift new file mode 100644 index 0000000..8dbbc50 --- /dev/null +++ b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedLocalizationTests.swift @@ -0,0 +1,57 @@ +import XCTest +@testable import EssentialFeediOS + +final class FeedLocalizationTests: XCTestCase { + + func test_localizedStrings_haveKeysAndValuesForAllSupportedLocalizations() { + let table = "Feed" + let presentationBundle = Bundle(for: FeedPresenter.self) + let localizationBundles = allLocalizationBundles(in: presentationBundle) + let localizedStringKeys = allLocalizedStringKeys(in: localizationBundles, table: table) + + localizationBundles.forEach { (bundle, localization) in + localizedStringKeys.forEach { key in + let localizedString = bundle.localizedString(forKey: key, value: nil, table: table) + + if localizedString == key { + let language = Locale.current.localizedString(forLanguageCode: localization) ?? "" + + XCTFail("Missing \(language) (\(localization)) localized string for key: '\(key)' in table: '\(table)'") + } + } + } + } + + // MARK: - Helpers + + private typealias LocalizedBundle = (bundle: Bundle, localization: String) + + private func allLocalizationBundles(in bundle: Bundle, file: StaticString = #file, line: UInt = #line) -> [LocalizedBundle] { + return bundle.localizations.compactMap { localization in + guard + let path = bundle.path(forResource: localization, ofType: "lproj"), + let localizedBundle = Bundle(path: path) + else { + XCTFail("Couldn't find bundle for localization: \(localization)", file: file, line: line) + return nil + } + + return (localizedBundle, localization) + } + } + + private func allLocalizedStringKeys(in bundles: [LocalizedBundle], table: String, file: StaticString = #file, line: UInt = #line) -> Set { + return bundles.reduce([]) { (acc, current) in + guard + let path = current.bundle.path(forResource: table, ofType: "strings"), + let strings = NSDictionary(contentsOfFile: path), + let keys = strings.allKeys as? [String] + else { + XCTFail("Couldn't load localized strings for localization: \(current.localization)", file: file, line: line) + return acc + } + + return acc.union(Set(keys)) + } + } +} diff --git a/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift index c6dec9d..c6e9992 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift @@ -20,8 +20,6 @@ final class FeedUIIntegrationTests: XCTestCase { XCTAssertEqual(sut.title, localized("FEED_VIEW_TITLE")) } - - func test_viewDidLoad_doesNotShowRefreshControl() { let (sut, _) = makeSUT() sut.loadViewIfNeeded() From 00adbe3213a06cebca77060a620a33ded2cf2d89 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 16:51:47 +0200 Subject: [PATCH 107/125] Dispatch background feed copletion to main thread before updating the UI since UIKit is not thread safe --- .../Feed UI/Controllers/FeedViewController.swift | 14 +++++++++++++- .../FeedUI/FeedUIIntegrationTests.swift | 14 +++++++++++++- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index 9a508d5..db8fd52 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -15,7 +15,14 @@ public final class FeedViewController: UITableViewControllerExtendedLifecycle, U var delegate: FeedViewControllerDelegate? var tableModel = [FeedImageCellController]() { - didSet { tableView.reloadData() } + didSet { + guard Thread.isMainThread else { + return DispatchQueue.main.async { [weak self] in + self?.tableView.reloadData() + } + } + tableView.reloadData() + } } @IBAction private func refresh() { @@ -64,6 +71,11 @@ public final class FeedViewController: UITableViewControllerExtendedLifecycle, U extension FeedViewController: FeedLoadingView { func display(_ viewModel: FeedLoadingViewModel) { + guard Thread.isMainThread else { + return DispatchQueue.main.async { [weak self] in + self?.refreshControl?.refreshIf(viewModel.isLoading) + } + } refreshControl?.refreshIf(viewModel.isLoading) } } diff --git a/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift index c6e9992..3e6b495 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift @@ -290,6 +290,19 @@ final class FeedUIIntegrationTests: XCTestCase { XCTAssertNil(view?.renderedImage, "Expected no rendered image when an image load finishes after the view is not visible anymore") } + func test_loadFeedCompletion_dispatchesFromBackgroundToMainThread() { + let (sut, loader) = makeSUT() + sut.simulateAppearance() + + let exp = expectation(description: "Wait for background queue") + DispatchQueue.global().async { + loader.completeFeedLoading(at: 0) + exp.fulfill() + } + + wait(for: [exp], timeout: 1.0) + } + // MARK: - Helper private func makeSUT( @@ -367,7 +380,6 @@ final class FeedUIIntegrationTests: XCTestCase { // MARK: - FeedLoader private(set) var feedRequests = [(FeedLoader.Result) -> Void]() - var loadFeedCallCount: Int { feedRequests.count } From 743cc5c8ef9163141473b02c3b92ef0c9e3acbf6 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 17:05:22 +0200 Subject: [PATCH 108/125] Move main thread dispatch to the presenter --- .../Feed Presentation/FeedPresenter.swift | 16 ++++++++++++++++ .../Feed UI/Controllers/FeedViewController.swift | 10 ---------- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index 044e323..fa55de2 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -44,15 +44,31 @@ final class FeedPresenter { } func didStartLoadingFeed() { + guard Thread.isMainThread else { + return DispatchQueue.main.async { [weak self] in + self?.loadingView.display(FeedLoadingViewModel(isLoading: true)) + } + } loadingView.display(FeedLoadingViewModel(isLoading: true)) } func didFinishLoadingFeed(with feed: [FeedImage]) { + guard Thread.isMainThread else { + return DispatchQueue.main.async { [weak self] in + self?.feedView.display(FeedViewModel(feed: feed)) + self?.loadingView.display(FeedLoadingViewModel(isLoading: false)) + } + } feedView.display(FeedViewModel(feed: feed)) loadingView.display(FeedLoadingViewModel(isLoading: false)) } func didFinishLoadingFeed(with error: Error) { + guard Thread.isMainThread else { + return DispatchQueue.main.async { [weak self] in + self?.loadingView.display(FeedLoadingViewModel(isLoading: false)) + } + } loadingView.display(FeedLoadingViewModel(isLoading: false)) } } diff --git a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift index db8fd52..944c8ad 100644 --- a/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift +++ b/EssentialFeed/EssentialFeediOS/Feed UI/Controllers/FeedViewController.swift @@ -16,11 +16,6 @@ public final class FeedViewController: UITableViewControllerExtendedLifecycle, U var tableModel = [FeedImageCellController]() { didSet { - guard Thread.isMainThread else { - return DispatchQueue.main.async { [weak self] in - self?.tableView.reloadData() - } - } tableView.reloadData() } } @@ -71,11 +66,6 @@ public final class FeedViewController: UITableViewControllerExtendedLifecycle, U extension FeedViewController: FeedLoadingView { func display(_ viewModel: FeedLoadingViewModel) { - guard Thread.isMainThread else { - return DispatchQueue.main.async { [weak self] in - self?.refreshControl?.refreshIf(viewModel.isLoading) - } - } refreshControl?.refreshIf(viewModel.isLoading) } } From 6f9f329418893386721152b4c577a34753019cf4 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 17:10:23 +0200 Subject: [PATCH 109/125] Move main thread dispatch to the composition layer with a decorator --- .../Composers/FeedUIComposer.swift | 21 ++++++++++++++++++- .../Feed Presentation/FeedPresenter.swift | 16 -------------- 2 files changed, 20 insertions(+), 17 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 6c39a13..00812bf 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -16,7 +16,7 @@ public enum FeedUIComposer { imageLoader: FeedImageDataLoader ) -> FeedViewController { - let presentationAdapter = FeedLoaderPresentationAdapter(feedLoader: feedLoader) + let presentationAdapter = FeedLoaderPresentationAdapter(feedLoader: MainQueueDispatchDecorator(feedLoader)) let feedController = FeedViewController.makeWith( delegate: presentationAdapter, @@ -31,6 +31,25 @@ public enum FeedUIComposer { } } +private final class MainQueueDispatchDecorator: FeedLoader { + private let decoratee: FeedLoader + init(_ decorate: FeedLoader) { + self.decoratee = decorate + } + + func load(completion: @escaping (FeedLoader.Result) -> Void) { + decoratee.load { result in + if Thread.isMainThread { + completion(result) + } else { + DispatchQueue.main.async { + completion(result) + } + } + } + } +} + private extension FeedViewController { static func makeWith(delegate: FeedViewControllerDelegate, title: String) -> FeedViewController { let bundle = Bundle(for: FeedViewController.self) diff --git a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift index fa55de2..044e323 100644 --- a/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift +++ b/EssentialFeed/EssentialFeediOS/Feed Presentation/FeedPresenter.swift @@ -44,31 +44,15 @@ final class FeedPresenter { } func didStartLoadingFeed() { - guard Thread.isMainThread else { - return DispatchQueue.main.async { [weak self] in - self?.loadingView.display(FeedLoadingViewModel(isLoading: true)) - } - } loadingView.display(FeedLoadingViewModel(isLoading: true)) } func didFinishLoadingFeed(with feed: [FeedImage]) { - guard Thread.isMainThread else { - return DispatchQueue.main.async { [weak self] in - self?.feedView.display(FeedViewModel(feed: feed)) - self?.loadingView.display(FeedLoadingViewModel(isLoading: false)) - } - } feedView.display(FeedViewModel(feed: feed)) loadingView.display(FeedLoadingViewModel(isLoading: false)) } func didFinishLoadingFeed(with error: Error) { - guard Thread.isMainThread else { - return DispatchQueue.main.async { [weak self] in - self?.loadingView.display(FeedLoadingViewModel(isLoading: false)) - } - } loadingView.display(FeedLoadingViewModel(isLoading: false)) } } From 67574c3654e4c274a7541b02cdea74923497f745 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 17:12:47 +0200 Subject: [PATCH 110/125] Generalize MainQueueDispatchDecorator so we can reuse it --- .../Composers/FeedUIComposer.swift | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 00812bf..448a921 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -31,20 +31,22 @@ public enum FeedUIComposer { } } -private final class MainQueueDispatchDecorator: FeedLoader { - private let decoratee: FeedLoader - init(_ decorate: FeedLoader) { +private final class MainQueueDispatchDecorator { + private let decoratee: T + init(_ decorate: T) { self.decoratee = decorate } + static func dispatch(work: @escaping () -> Void) { + Thread.isMainThread ? work() : DispatchQueue.main.async(execute: work) + } +} + +extension MainQueueDispatchDecorator: FeedLoader where T == FeedLoader { func load(completion: @escaping (FeedLoader.Result) -> Void) { decoratee.load { result in - if Thread.isMainThread { + Self.dispatch { completion(result) - } else { - DispatchQueue.main.async { - completion(result) - } } } } From 68dd82e9fba671d207feca8d1329e9ad2ebf640e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 17:25:05 +0200 Subject: [PATCH 111/125] Dispatch background load imaga data comlpletion to main thread before passing result to the UI components. Threading is ealt with a Decorator in the Composition layer. --- .../Composers/FeedUIComposer.swift | 15 ++++++++++++++- .../FeedUI/FeedUIIntegrationTests.swift | 16 ++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 448a921..47db172 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -24,7 +24,10 @@ public enum FeedUIComposer { ) presentationAdapter.presenter = FeedPresenter( - feedView: FeedViewAdapter(controller: feedController, imageLoader: imageLoader), + feedView: FeedViewAdapter( + controller: feedController, + imageLoader: MainQueueDispatchDecorator(imageLoader) + ), loadingView: WeakRefVirtualProxy(feedController) ) return feedController @@ -52,6 +55,16 @@ extension MainQueueDispatchDecorator: FeedLoader where T == FeedLoader { } } +extension MainQueueDispatchDecorator: FeedImageDataLoader where T == FeedImageDataLoader { + func loadImageData(from url: URL, completion: @escaping (FeedImageDataLoader.Result) -> Void) -> any FeedImageDataLoaderTask { + decoratee.loadImageData(from: url) { result in + Self.dispatch { + completion(result) + } + } + } +} + private extension FeedViewController { static func makeWith(delegate: FeedViewControllerDelegate, title: String) -> FeedViewController { let bundle = Bundle(for: FeedViewController.self) diff --git a/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift index 3e6b495..651dbb1 100644 --- a/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift +++ b/EssentialFeed/EssentialFeediOSTests/FeedUI/FeedUIIntegrationTests.swift @@ -303,6 +303,22 @@ final class FeedUIIntegrationTests: XCTestCase { wait(for: [exp], timeout: 1.0) } + func test_loadImageDataCompletion_dispatchesFromBackgroundToMainThread() { + let (sut, loader) = makeSUT() + sut.simulateAppearance() + + loader.completeFeedLoading(with: [makeImage()], at: 0) + sut.simulateFeedImageViewVisible(at: 0) + + let exp = expectation(description: "Wait for background queue") + DispatchQueue.global().async { + loader.completeImageLoading(with: self.anyImageData(), at: 0) + exp.fulfill() + } + + wait(for: [exp], timeout: 1.0) + } + // MARK: - Helper private func makeSUT( From 395dba1de31da2da8bf09cfed3cd4085a4dd791c Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 17:28:30 +0200 Subject: [PATCH 112/125] Move composition helpers to their own file --- .../FeedImagePresentationAdapter.swift | 39 +++++ .../FeedLoaderPresentationAdapter.swift | 35 +++++ .../Composers/FeedUIComposer.swift | 140 ------------------ .../Composers/FeedViewAdapter.swift | 40 +++++ .../FeedViewController+factory.swift | 21 +++ .../MainQueueDispatchDecorator.swift | 41 +++++ .../Composers/WeakRefVirtualProxy.swift | 28 ++++ 7 files changed, 204 insertions(+), 140 deletions(-) create mode 100644 EssentialFeed/EssentialFeediOS/Composers/FeedImagePresentationAdapter.swift create mode 100644 EssentialFeed/EssentialFeediOS/Composers/FeedLoaderPresentationAdapter.swift create mode 100644 EssentialFeed/EssentialFeediOS/Composers/FeedViewAdapter.swift create mode 100644 EssentialFeed/EssentialFeediOS/Composers/FeedViewController+factory.swift create mode 100644 EssentialFeed/EssentialFeediOS/Composers/MainQueueDispatchDecorator.swift create mode 100644 EssentialFeed/EssentialFeediOS/Composers/WeakRefVirtualProxy.swift diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedImagePresentationAdapter.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedImagePresentationAdapter.swift new file mode 100644 index 0000000..81f5a06 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedImagePresentationAdapter.swift @@ -0,0 +1,39 @@ +// +// FeedImagePresentationAdapter.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + + +import EssentialFeed +import UIKit + +final class FeedImagePresentationAdapter: FeedImageCellControllerDelegate { + + private var task: FeedImageDataLoaderTask? + private let model: FeedImage + private let imageLoader: FeedImageDataLoader + var presenter: FeedImagePresenter, UIImage>? + + init(model: FeedImage, imageLoader: FeedImageDataLoader) { + self.model = model + self.imageLoader = imageLoader + } + + func didRequestImage() { + presenter?.didStartShowingImage(for: model) + task = imageLoader.loadImageData(from: model.url) { [weak self, model] result in + switch result { + case .success(let data): + self?.presenter?.didFinishLoadingImageData(with: data, for: model) + case .failure(let error): + self?.presenter?.didFinishLoadingImageData(with: error, for: model) + } + } + } + + func didCancelImageRequest() { + task?.cancel() + } +} \ No newline at end of file diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedLoaderPresentationAdapter.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedLoaderPresentationAdapter.swift new file mode 100644 index 0000000..0f9e042 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedLoaderPresentationAdapter.swift @@ -0,0 +1,35 @@ +// +// FeedLoaderPresentationAdapter.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + + +import EssentialFeed +import UIKit + +final class FeedLoaderPresentationAdapter: FeedViewControllerDelegate { + private let feedLoader: FeedLoader + var presenter: FeedPresenter? + + init(feedLoader: FeedLoader) { + self.feedLoader = feedLoader + } + + func loadFeed() { + presenter?.didStartLoadingFeed() + feedLoader.load { [weak self] result in + switch result { + case let .success(feed): + self?.presenter?.didFinishLoadingFeed(with: feed) + case let .failure(error): + self?.presenter?.didFinishLoadingFeed(with: error) + } + } + } + + func didRequestFeedRefresh() { + loadFeed() + } +} \ No newline at end of file diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift index 47db172..46e7871 100644 --- a/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedUIComposer.swift @@ -34,147 +34,7 @@ public enum FeedUIComposer { } } -private final class MainQueueDispatchDecorator { - private let decoratee: T - init(_ decorate: T) { - self.decoratee = decorate - } - - static func dispatch(work: @escaping () -> Void) { - Thread.isMainThread ? work() : DispatchQueue.main.async(execute: work) - } -} - -extension MainQueueDispatchDecorator: FeedLoader where T == FeedLoader { - func load(completion: @escaping (FeedLoader.Result) -> Void) { - decoratee.load { result in - Self.dispatch { - completion(result) - } - } - } -} - -extension MainQueueDispatchDecorator: FeedImageDataLoader where T == FeedImageDataLoader { - func loadImageData(from url: URL, completion: @escaping (FeedImageDataLoader.Result) -> Void) -> any FeedImageDataLoaderTask { - decoratee.loadImageData(from: url) { result in - Self.dispatch { - completion(result) - } - } - } -} - -private extension FeedViewController { - static func makeWith(delegate: FeedViewControllerDelegate, title: String) -> FeedViewController { - let bundle = Bundle(for: FeedViewController.self) - let storyboard = UIStoryboard(name: "Feed", bundle: bundle) - let feedController = storyboard.instantiateInitialViewController() as! FeedViewController - feedController.delegate = delegate - feedController.title = title - return feedController - } -} - -private final class WeakRefVirtualProxy { - private weak var object: T? - init(_ object: T) { - self.object = object - } -} -extension WeakRefVirtualProxy: FeedLoadingView where T: FeedLoadingView { - func display(_ viewModel: FeedLoadingViewModel) { - object?.display(viewModel) - } -} - -extension WeakRefVirtualProxy: FeedImageView where T: FeedImageView, T.Image == UIImage { - func display(_ viewModel: FeedImageViewModel) { - object?.display(viewModel) - } -} -private final class FeedViewAdapter: FeedView { - private weak var controller: FeedViewController? - private let imageLoader: FeedImageDataLoader - - init(controller: FeedViewController, imageLoader: FeedImageDataLoader) { - self.controller = controller - self.imageLoader = imageLoader - } - - func display(_ viewModel: FeedViewModel) { - controller?.tableModel = viewModel.feed.map { model in - let adapter = FeedImagePresentationAdapter( - model: model, - imageLoader: imageLoader - ) - - let controller = FeedImageCellController(delegate: adapter) - - let presenter = FeedImagePresenter( - view: WeakRefVirtualProxy(controller), - model: model, - imageTransformer: UIImage.init - ) - - adapter.presenter = presenter - return controller - } - } -} -private final class FeedImagePresentationAdapter: FeedImageCellControllerDelegate { - - private var task: FeedImageDataLoaderTask? - private let model: FeedImage - private let imageLoader: FeedImageDataLoader - var presenter: FeedImagePresenter, UIImage>? - - init(model: FeedImage, imageLoader: FeedImageDataLoader) { - self.model = model - self.imageLoader = imageLoader - } - - func didRequestImage() { - presenter?.didStartShowingImage(for: model) - task = imageLoader.loadImageData(from: model.url) { [weak self, model] result in - switch result { - case .success(let data): - self?.presenter?.didFinishLoadingImageData(with: data, for: model) - case .failure(let error): - self?.presenter?.didFinishLoadingImageData(with: error, for: model) - } - } - } - - func didCancelImageRequest() { - task?.cancel() - } -} -private final class FeedLoaderPresentationAdapter: FeedViewControllerDelegate { - private let feedLoader: FeedLoader - var presenter: FeedPresenter? - - init(feedLoader: FeedLoader) { - self.feedLoader = feedLoader - } - - func loadFeed() { - presenter?.didStartLoadingFeed() - feedLoader.load { [weak self] result in - switch result { - case let .success(feed): - self?.presenter?.didFinishLoadingFeed(with: feed) - case let .failure(error): - self?.presenter?.didFinishLoadingFeed(with: error) - } - } - } - - func didRequestFeedRefresh() { - loadFeed() - } -} diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedViewAdapter.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedViewAdapter.swift new file mode 100644 index 0000000..9ed0d2c --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedViewAdapter.swift @@ -0,0 +1,40 @@ +// +// FeedViewAdapter.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + + +import EssentialFeed +import UIKit + +final class FeedViewAdapter: FeedView { + private weak var controller: FeedViewController? + private let imageLoader: FeedImageDataLoader + + init(controller: FeedViewController, imageLoader: FeedImageDataLoader) { + self.controller = controller + self.imageLoader = imageLoader + } + + func display(_ viewModel: FeedViewModel) { + controller?.tableModel = viewModel.feed.map { model in + let adapter = FeedImagePresentationAdapter( + model: model, + imageLoader: imageLoader + ) + + let controller = FeedImageCellController(delegate: adapter) + + let presenter = FeedImagePresenter( + view: WeakRefVirtualProxy(controller), + model: model, + imageTransformer: UIImage.init + ) + + adapter.presenter = presenter + return controller + } + } +} \ No newline at end of file diff --git a/EssentialFeed/EssentialFeediOS/Composers/FeedViewController+factory.swift b/EssentialFeed/EssentialFeediOS/Composers/FeedViewController+factory.swift new file mode 100644 index 0000000..37f8a35 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Composers/FeedViewController+factory.swift @@ -0,0 +1,21 @@ +// +// FeedViewController+factory.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + + +import EssentialFeed +import UIKit + +extension FeedViewController { + static func makeWith(delegate: FeedViewControllerDelegate, title: String) -> FeedViewController { + let bundle = Bundle(for: FeedViewController.self) + let storyboard = UIStoryboard(name: "Feed", bundle: bundle) + let feedController = storyboard.instantiateInitialViewController() as! FeedViewController + feedController.delegate = delegate + feedController.title = title + return feedController + } +} \ No newline at end of file diff --git a/EssentialFeed/EssentialFeediOS/Composers/MainQueueDispatchDecorator.swift b/EssentialFeed/EssentialFeediOS/Composers/MainQueueDispatchDecorator.swift new file mode 100644 index 0000000..64805a6 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Composers/MainQueueDispatchDecorator.swift @@ -0,0 +1,41 @@ +// +// MainQueueDispatchDecorator.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + + +import EssentialFeed +import UIKit + +final class MainQueueDispatchDecorator { + private let decoratee: T + init(_ decorate: T) { + self.decoratee = decorate + } + + static func dispatch(work: @escaping () -> Void) { + Thread.isMainThread ? work() : DispatchQueue.main.async(execute: work) + } +} + +extension MainQueueDispatchDecorator: FeedLoader where T == FeedLoader { + func load(completion: @escaping (FeedLoader.Result) -> Void) { + decoratee.load { result in + Self.dispatch { + completion(result) + } + } + } +} + +extension MainQueueDispatchDecorator: FeedImageDataLoader where T == FeedImageDataLoader { + func loadImageData(from url: URL, completion: @escaping (FeedImageDataLoader.Result) -> Void) -> any FeedImageDataLoaderTask { + decoratee.loadImageData(from: url) { result in + Self.dispatch { + completion(result) + } + } + } +} diff --git a/EssentialFeed/EssentialFeediOS/Composers/WeakRefVirtualProxy.swift b/EssentialFeed/EssentialFeediOS/Composers/WeakRefVirtualProxy.swift new file mode 100644 index 0000000..70fc900 --- /dev/null +++ b/EssentialFeed/EssentialFeediOS/Composers/WeakRefVirtualProxy.swift @@ -0,0 +1,28 @@ +// +// WeakRefVirtualProxy.swift +// EssentialFeed +// +// Created by Cristian Felipe Patiño Rojas on 15/4/25. +// + + +final class WeakRefVirtualProxy { + private weak var object: T? + init(_ object: T) { + self.object = object + } +} + +extension WeakRefVirtualProxy: FeedLoadingView where T: FeedLoadingView { + func display(_ viewModel: FeedLoadingViewModel) { + object?.display(viewModel) + } +} + +import UIKit + +extension WeakRefVirtualProxy: FeedImageView where T: FeedImageView, T.Image == UIImage { + func display(_ viewModel: FeedImageViewModel) { + object?.display(viewModel) + } +} From e41b4c498941975d8f2d52250bcd04351fd3493f Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 17:34:51 +0200 Subject: [PATCH 113/125] Add environment variable so we can crash the tests if UI is modified from a non main thread --- .../EssentialFeediOSTests/EssentialFeediOS.xctestplan | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/EssentialFeed/EssentialFeediOSTests/EssentialFeediOS.xctestplan b/EssentialFeed/EssentialFeediOSTests/EssentialFeediOS.xctestplan index cb8e8dc..804ab74 100644 --- a/EssentialFeed/EssentialFeediOSTests/EssentialFeediOS.xctestplan +++ b/EssentialFeed/EssentialFeediOSTests/EssentialFeediOS.xctestplan @@ -18,6 +18,12 @@ } ] }, + "environmentVariableEntries" : [ + { + "key" : "MTC_CRASH_ON_REPORT", + "value" : "1" + } + ], "testExecutionOrdering" : "random" }, "testTargets" : [ From 5141c0f521181bde3985580995618ddd703f9f4c Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Tue, 15 Apr 2025 23:11:58 +0200 Subject: [PATCH 114/125] Fix: rename `CI` scheme to `CI_macOS` so it matches the name used on the CI configuration --- .../xcshareddata/xcschemes/CI.xcscheme | 94 ------------------- 1 file changed, 94 deletions(-) delete mode 100644 EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI.xcscheme diff --git a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI.xcscheme b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI.xcscheme deleted file mode 100644 index 9c07f4c..0000000 --- a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI.xcscheme +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From 9962e9cff0c65fa8dcb35d8939eb62340d83f14d Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 13:23:58 +0200 Subject: [PATCH 115/125] Rename `CI.xctestplan` to `CI_macOS.xctestplan` --- .../{CI.xctestplan => CI_macOS.xctestplan} | 0 .../EssentialFeed.xcodeproj/project.pbxproj | 2 + .../xcshareddata/xcschemes/CI_macOS.xcscheme | 94 +++++++++++++++++++ 3 files changed, 96 insertions(+) rename EssentialFeed/{CI.xctestplan => CI_macOS.xctestplan} (100%) create mode 100644 EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI_macOS.xcscheme diff --git a/EssentialFeed/CI.xctestplan b/EssentialFeed/CI_macOS.xctestplan similarity index 100% rename from EssentialFeed/CI.xctestplan rename to EssentialFeed/CI_macOS.xctestplan diff --git a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj index f1874f7..00d41fc 100644 --- a/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj +++ b/EssentialFeed/EssentialFeed.xcodeproj/project.pbxproj @@ -99,6 +99,7 @@ 40412A1E2DA67223004677C4 /* ManagedCache.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ManagedCache.swift; sourceTree = ""; }; 40412A202DA6723E004677C4 /* ManagedFeedImage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ManagedFeedImage.swift; sourceTree = ""; }; 40412A4A2DA67465004677C4 /* EssentialFeedCacheIntegrationTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = EssentialFeedCacheIntegrationTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 406533992DB26D66001DB1A5 /* CI_macOS.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = CI_macOS.xctestplan; sourceTree = ""; }; 407F4FA42D9FD7EF0070F56E /* ValidateFeedCacheUseCaseTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ValidateFeedCacheUseCaseTests.swift; sourceTree = ""; }; 407F4FA62D9FDB780070F56E /* FeedCacheTestHelpers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedCacheTestHelpers.swift; sourceTree = ""; }; 407F4FAC2D9FEBC50070F56E /* FeedCachePolicy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedCachePolicy.swift; sourceTree = ""; }; @@ -226,6 +227,7 @@ 080EDEE721B6DA7E00813479 = { isa = PBXGroup; children = ( + 406533992DB26D66001DB1A5 /* CI_macOS.xctestplan */, 40C765C52DA7CCCE00A3F596 /* CI_iOS.xctestplan */, 080EDEF321B6DA7E00813479 /* EssentialFeed */, 080EDEFE21B6DA7E00813479 /* EssentialFeedTests */, diff --git a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI_macOS.xcscheme b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI_macOS.xcscheme new file mode 100644 index 0000000..99caaaa --- /dev/null +++ b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI_macOS.xcscheme @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 4634bfc31b236f422ba08cffcf78a8859c7e463e Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 13:36:18 +0200 Subject: [PATCH 116/125] Update test server url on end to end tests as 301 redirection was making the tests fail --- .../EssentialFeedAPIEndToEndTests.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EssentialFeed/EssentialFeedAPIEndToEndTests/EssentialFeedAPIEndToEndTests.swift b/EssentialFeed/EssentialFeedAPIEndToEndTests/EssentialFeedAPIEndToEndTests.swift index 7d0402a..806426b 100644 --- a/EssentialFeed/EssentialFeedAPIEndToEndTests/EssentialFeedAPIEndToEndTests.swift +++ b/EssentialFeed/EssentialFeedAPIEndToEndTests/EssentialFeedAPIEndToEndTests.swift @@ -33,7 +33,7 @@ final class EssentialFeedAPIEndToEndTests: XCTestCase { file: StaticString = #file, line: UInt = #line ) -> FeedLoader.Result? { - let testServerURL = URL(string: "https://essentialdeveloper.com/feed-case-study/test-api/feed")! + let testServerURL = URL(string: "https://static1.squarespace.com/static/5891c5b8d1758ec68ef5dbc2/t/5c52cdd0b8a045df091d2fff/1548930512083/feed-case-study-test-api-feed.json")! let client = URLSessionHTTPClient() let loader = RemoteFeedLoader( url: testServerURL, From 39b156b47ec504122a471d063ba9626a32acda8a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 13:42:06 +0200 Subject: [PATCH 117/125] Make `CI_iOS` scheme shared so it can be run on CI --- .../xcshareddata/xcschemes/CI_iOS.xcscheme | 94 +++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI_iOS.xcscheme diff --git a/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI_iOS.xcscheme b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI_iOS.xcscheme new file mode 100644 index 0000000..1d44ce2 --- /dev/null +++ b/EssentialFeed/EssentialFeed.xcodeproj/xcshareddata/xcschemes/CI_iOS.xcscheme @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From d9a4211a80d2a11db69d12e9e60d06cbf833f2b2 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 13:52:44 +0200 Subject: [PATCH 118/125] Update CI simulator device --- .github/workflows/CI.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index f2d2d1a..46dd4b5 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -32,5 +32,5 @@ jobs: xcodebuild clean build test \ -project EssentialFeed/EssentialFeed.xcodeproj \ -scheme "CI_iOS" \ - -destination 'platform=iOS Simulator,name=iPhone 15' \ + -destination 'platform=iOS Simulator,name=iPhone 16' \ CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO From f2c8ec119d00f53b27eddfa9c6221685f36d26ec Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 14:33:18 +0200 Subject: [PATCH 119/125] Disable parallelization on `CI_iOS` to verify if this is the reason CI is failing --- EssentialFeed/CI_iOS.xctestplan | 2 ++ 1 file changed, 2 insertions(+) diff --git a/EssentialFeed/CI_iOS.xctestplan b/EssentialFeed/CI_iOS.xctestplan index bcf1b0d..dba1bdf 100644 --- a/EssentialFeed/CI_iOS.xctestplan +++ b/EssentialFeed/CI_iOS.xctestplan @@ -27,6 +27,7 @@ }, "testTargets" : [ { + "parallelizable" : true, "target" : { "containerPath" : "container:EssentialFeed.xcodeproj", "identifier" : "40B002442CF9E9DB0058D3E0", @@ -34,6 +35,7 @@ } }, { + "parallelizable" : false, "target" : { "containerPath" : "container:EssentialFeed.xcodeproj", "identifier" : "40412A492DA67465004677C4", From 136e3b62f9ce4b91268fb766a02e6761c6d8d075 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 14:59:05 +0200 Subject: [PATCH 120/125] Remove parallelization for ci_iOS to verify if cache integration tests are failing because of it --- .github/workflows/CI.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 46dd4b5..21264b8 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -33,4 +33,5 @@ jobs: -project EssentialFeed/EssentialFeed.xcodeproj \ -scheme "CI_iOS" \ -destination 'platform=iOS Simulator,name=iPhone 16' \ - CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO + -parallel-testing-enabled NO \ + CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NOxcodebuild test \ From 66e693aa9b223ba60172dab7c9c5823a7e6e3360 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 15:41:08 +0200 Subject: [PATCH 121/125] Use flag on CI schemes so we match local environment configurations --- .github/workflows/CI.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 21264b8..0d836bb 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -24,6 +24,7 @@ jobs: xcodebuild clean build test \ -project EssentialFeed/EssentialFeed.xcodeproj \ -scheme "CI_macOS" \ + -testPlan CI_macOS \ -destination 'platform=macOS' \ CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO @@ -32,6 +33,6 @@ jobs: xcodebuild clean build test \ -project EssentialFeed/EssentialFeed.xcodeproj \ -scheme "CI_iOS" \ + -testPlan CI_iOS \ -destination 'platform=iOS Simulator,name=iPhone 16' \ - -parallel-testing-enabled NO \ CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NOxcodebuild test \ From f3191d0b3724a0236209ac45b0cc5bcaf7481e0a Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 17:39:03 +0200 Subject: [PATCH 122/125] Remove `testPlan` flag as it's used by default if not specified (CI tests are being run with specific test targets, so it means it's not needed) --- .github/workflows/CI.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 0d836bb..46dd4b5 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -24,7 +24,6 @@ jobs: xcodebuild clean build test \ -project EssentialFeed/EssentialFeed.xcodeproj \ -scheme "CI_macOS" \ - -testPlan CI_macOS \ -destination 'platform=macOS' \ CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO @@ -33,6 +32,5 @@ jobs: xcodebuild clean build test \ -project EssentialFeed/EssentialFeed.xcodeproj \ -scheme "CI_iOS" \ - -testPlan CI_iOS \ -destination 'platform=iOS Simulator,name=iPhone 16' \ - CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NOxcodebuild test \ + CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO From af63289cf6ec5cba4463985208ac584272af0a6b Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 22:20:13 +0200 Subject: [PATCH 123/125] Use static model to instantiate it only once across tests --- .../CoreData/CoreDataFeedStore.swift | 14 +++++++++----- .../Infrastructure/CoreData/CoreDataHelpers.swift | 8 ++++---- .../EssentialFeedCacheIntegrationTests.swift | 6 +----- .../Feed Cache/CoreDataFeedStoreSpecs.swift | 6 +----- 4 files changed, 15 insertions(+), 19 deletions(-) diff --git a/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataFeedStore.swift b/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataFeedStore.swift index 611007f..39dc919 100644 --- a/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataFeedStore.swift +++ b/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataFeedStore.swift @@ -9,13 +9,17 @@ import CoreData public final class CoreDataFeedStore: FeedStore { - let container: NSPersistentContainer + private let container: NSPersistentContainer private let context: NSManagedObjectContext - public init(storeURL: URL, bundle: Bundle = .main) throws { + + static private let modelName = "FeedStore" + static private let model = NSManagedObjectModel.with(name: modelName, in: Bundle(for: CoreDataFeedStore.self)) + + public init(storeURL: URL) throws { container = try NSPersistentContainer.load( - modelName: "FeedStore", - url: storeURL, - in: bundle + modelName: Self.modelName, + model: Self.model, + url: storeURL ) context = container.newBackgroundContext() } diff --git a/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataHelpers.swift b/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataHelpers.swift index 9f6053f..474a6ed 100644 --- a/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataHelpers.swift +++ b/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataHelpers.swift @@ -15,10 +15,10 @@ extension NSPersistentContainer { static func load( modelName name: String, - url: URL, - in bundle: Bundle + model: NSManagedObjectModel?, + url: URL ) throws -> NSPersistentContainer { - guard let model = NSManagedObjectModel.with(name: name, in: bundle) else { throw LoadingError.modelNotFound } + guard let model else { throw LoadingError.modelNotFound } let container = NSPersistentContainer(name: name, managedObjectModel: model) container.persistentStoreDescriptions = [ @@ -38,7 +38,7 @@ extension NSPersistentContainer { } } -private extension NSManagedObjectModel { +extension NSManagedObjectModel { static func with(name: String, in bundle: Bundle) -> NSManagedObjectModel? { return bundle.url(forResource: name, withExtension: "momd") .flatMap { diff --git a/EssentialFeed/EssentialFeedCacheIntegrationTests/EssentialFeedCacheIntegrationTests.swift b/EssentialFeed/EssentialFeedCacheIntegrationTests/EssentialFeedCacheIntegrationTests.swift index 29541f3..4ac8da1 100644 --- a/EssentialFeed/EssentialFeedCacheIntegrationTests/EssentialFeedCacheIntegrationTests.swift +++ b/EssentialFeed/EssentialFeedCacheIntegrationTests/EssentialFeedCacheIntegrationTests.swift @@ -51,12 +51,8 @@ final class EssentialFeedCacheIntegrationTests: XCTestCase { // MARK: - Helpers private func makeSUT(file: StaticString = #file, line: UInt = #line) -> LocalFeedLoader { - let storeBundle = Bundle(for: CoreDataFeedStore.self) let storeURL = testSpecificStoreURL() - let store = try! CoreDataFeedStore( - storeURL: storeURL, - bundle: storeBundle - ) + let store = try! CoreDataFeedStore(storeURL: storeURL) let sut = LocalFeedLoader( store: store, currentDate: Date.init diff --git a/EssentialFeed/EssentialFeedTests/Feed Cache/CoreDataFeedStoreSpecs.swift b/EssentialFeed/EssentialFeedTests/Feed Cache/CoreDataFeedStoreSpecs.swift index 7f7ac9e..428ee4f 100644 --- a/EssentialFeed/EssentialFeedTests/Feed Cache/CoreDataFeedStoreSpecs.swift +++ b/EssentialFeed/EssentialFeedTests/Feed Cache/CoreDataFeedStoreSpecs.swift @@ -71,12 +71,8 @@ class CoreDataFeedStoreSpecs: XCTestCase, FeedStoreSpecs { // MARK: - Helpers private func makeSUT(file: StaticString = #file, line: UInt = #line) -> CoreDataFeedStore { - let storeBundle = Bundle(for: CoreDataFeedStore.self) let storeURL = URL(fileURLWithPath: "/dev/null") - let sut = try! CoreDataFeedStore( - storeURL: storeURL, - bundle: storeBundle - ) + let sut = try! CoreDataFeedStore(storeURL: storeURL) trackForMemoryLeaks(sut, file: file, line: line) return sut } From e9b8093a59fe3f33190e535821f4c820cc876884 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 23:04:50 +0200 Subject: [PATCH 124/125] =?UTF-8?q?Fix=20(again)=20CI=20failing=20by=20rem?= =?UTF-8?q?oving=20parallel=20testing=20on=20run=20as=20that=20is=20a=20mo?= =?UTF-8?q?re=20than=20acceptable=20tradeoff=20(mesure=20before=20optimizi?= =?UTF-8?q?ng=20=F0=9F=A5=8B)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/CI.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 46dd4b5..7d0add2 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -32,5 +32,6 @@ jobs: xcodebuild clean build test \ -project EssentialFeed/EssentialFeed.xcodeproj \ -scheme "CI_iOS" \ + -parallel-testing-enabled NO \ -destination 'platform=iOS Simulator,name=iPhone 16' \ CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO From d4035789eee0c1958657aacf88af222120184589 Mon Sep 17 00:00:00 2001 From: Cristian Rojas Date: Fri, 18 Apr 2025 23:28:30 +0200 Subject: [PATCH 125/125] Clean up coordinators on deinit. When reusing a shared Core Data model across multiple containers in tests, Core Data may retain internal state between instances, causing CI-only failures. Removing persistent stores in deinit ensures proper isolation and prevents store conflicts when running tests in sequence. --- .../Infrastructure/CoreData/CoreDataFeedStore.swift | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataFeedStore.swift b/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataFeedStore.swift index 39dc919..33491ba 100644 --- a/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataFeedStore.swift +++ b/EssentialFeed/EssentialFeed/Feed Cache/Infrastructure/CoreData/CoreDataFeedStore.swift @@ -72,4 +72,17 @@ public final class CoreDataFeedStore: FeedStore { action(context) } } + + deinit { + cleanUpReferencesToPersistentStores() + } + + private func cleanUpReferencesToPersistentStores() { + context.performAndWait { + let coordinator = container.persistentStoreCoordinator + for store in coordinator.persistentStores { + try? coordinator.remove(store) + } + } + } }