Files
Reflect/Tests iOS/Tests_iOS.swift
Trey t 315fe968d4 Fix Tests iOS build: update deployment target and remove @testable import
Tests iOS target had deployment target 15.2 (mismatched with app's 26.0)
causing linker failures. Also replaced @testable import Feels with a
local Date extension copy since UI test targets can't link the app module.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 13:36:55 -06:00

64 lines
2.1 KiB
Swift

//
// Tests_iOS.swift
// Tests iOS
//
// Created by Trey Tartt on 1/10/22.
//
import XCTest
// Local copy UI test target cannot @testable import Feels
private extension Date {
static func dates(from fromDate: Date, toDate: Date, includingToDate: Bool = false) -> [Date] {
var dates: [Date] = []
var date = Calendar.current.date(bySettingHour: 0, minute: 0, second: 0, of: fromDate)!
let toDate = Calendar.current.date(bySettingHour: 0, minute: 0, second: 0, of: toDate)!
if includingToDate {
while date <= toDate {
dates.append(date)
guard let newDate = Calendar.current.date(byAdding: .day, value: 1, to: date) else { break }
date = newDate
}
} else {
while date < toDate {
dates.append(date)
guard let newDate = Calendar.current.date(byAdding: .day, value: 1, to: date) else { break }
date = newDate
}
}
return dates
}
}
class Tests_iOS: XCTestCase {
override func setUpWithError() throws {
continueAfterFailure = false
}
override func tearDownWithError() throws {
}
func testDatesBetween() {
let today = Calendar.current.date(bySettingHour: 0, minute: 0, second: 0, of: Date())!
let yesterday = Calendar.current.date(byAdding: .day, value: -1, to: today)!
let tenDaysAgo = Calendar.current.date(byAdding: .day, value: -10, to: today)!
let dates = Date.dates(from: Calendar.current.date(byAdding: .day, value: -10, to: Date())!, toDate: Date())
XCTAssertTrue(dates.last == yesterday)
XCTAssertTrue(dates.first == tenDaysAgo)
}
func testDatesIncluding() {
let today = Calendar.current.date(bySettingHour: 0, minute: 0, second: 0, of: Date())!
let tenDaysAgo = Calendar.current.date(byAdding: .day, value: -10, to: today)!
let dates = Date.dates(from: Calendar.current.date(byAdding: .day, value: -10, to: Date())!, toDate: Date(), includingToDate: true)
XCTAssertTrue(dates.last == today)
XCTAssertTrue(dates.first == tenDaysAgo)
}
}