         return self
     }
 
+    // swiftlint:disable function_body_length
     @discardableResult
     func build() -> Context {
-        let app = EurofurenceSessionBuilder(conventionIdentifier: conventionIdentifier)
+        let conventionIdentifier = ConventionIdentifier(identifier: ModelCharacteristics.testConventionIdentifier)
+        let notificationTokenRegistration = CapturingRemoteNotificationsTokenRegistration()
+        let dateDistanceCalculator = StubDateDistanceCalculator()
+        let conventionStartDateRepository = StubConventionStartDateRepository()
+        let significantTimeChangeAdapter = CapturingSignificantTimeChangeAdapter()
+        let longRunningTaskManager = FakeLongRunningTaskManager()
+        let mapCoordinateRender = CapturingMapCoordinateRender()
+        
+        let session = EurofurenceSessionBuilder(conventionIdentifier: conventionIdentifier)
             .with(api)
             .with(clock)
             .with(credentialStore)

    private var collectThemAllRequestFactory: CollectThemAllRequestFactory = StubCollectThemAllRequestFactory()
    private var forceUpgradeRequired: ForceRefreshRequired = StubForceRefreshRequired(isForceRefreshRequired: false)

    private let dateDistanceCalculator = StubDateDistanceCalculator()
    private let conventionStartDateRepository = StubConventionStartDateRepository()
    private let significantTimeChangeAdapter = CapturingSignificantTimeChangeAdapter()
    private let longRunningTaskManager = FakeLongRunningTaskManager()
    private let mapCoordinateRender = CapturingMapCoordinateRender()

    func with(_ currentDate: Date) -> EurofurenceSessionTestBuilder {
        clock = StubClock(currentDate: currentDate)
        return self


    }

    private var api = FakeAPI()
    private var credentialStore = CapturingCredentialStore()
    private var clock = StubClock()
    private var dataStore = FakeDataStore()
