@@ -12,6 +12,30 @@ final class NaturalLanguageTests: XCTestCase {
12
12
XCTAssertEqual ( components, expectedComponents)
13
13
}
14
14
15
+ func testTodayString( ) throws {
16
+ let components = try XCTUnwrap ( DateComponents ( argument: " today " ) )
17
+ let expectedComponents = Calendar . current. dateComponents (
18
+ calendarComponents ( except: timeComponents) , from: Date ( ) )
19
+
20
+ XCTAssertEqual ( components, expectedComponents)
21
+ }
22
+
23
+ func testTodayNoon( ) throws {
24
+ let components = try XCTUnwrap ( DateComponents ( argument: " 12:00 " ) )
25
+ let today = try XCTUnwrap ( Calendar . current. date ( bySettingHour: 12 , minute: 0 , second: 0 , of: Date ( ) ) )
26
+ let expectedComponents = Calendar . current. dateComponents ( calendarComponents ( ) , from: today)
27
+
28
+ XCTAssertEqual ( components, expectedComponents)
29
+ }
30
+
31
+ func testTonight( ) throws {
32
+ let components = try XCTUnwrap ( DateComponents ( argument: " tonight " ) )
33
+ let today = try XCTUnwrap ( Calendar . current. date ( bySettingHour: 19 , minute: 0 , second: 0 , of: Date ( ) ) )
34
+ let expectedComponents = Calendar . current. dateComponents ( calendarComponents ( ) , from: today)
35
+
36
+ XCTAssertEqual ( components, expectedComponents)
37
+ }
38
+
15
39
func testTomorrow( ) throws {
16
40
let components = try XCTUnwrap ( DateComponents ( argument: " tomorrow " ) )
17
41
let tomorrow = try XCTUnwrap ( Calendar . current. date ( byAdding: . day, value: 1 , to: Date ( ) ) )
0 commit comments