@@ -65,6 +65,43 @@ class SwiftQueueManagerTests: XCTestCase {
6565 XCTAssertEqual ( 0 , persister. removeQueueName. count)
6666 }
6767
68+ func testCancelWithUUID( ) {
69+ let id = UUID ( ) . uuidString
70+ let type = UUID ( ) . uuidString
71+ let group = UUID ( ) . uuidString
72+
73+ let job = TestJob ( )
74+ let creator = TestCreator ( [ type: job] )
75+
76+ let persister = PersisterTracker ( key: UUID ( ) . uuidString)
77+
78+ let manager = SwiftQueueManager ( creators: [ creator] , persister: persister)
79+
80+ JobBuilder ( type: type)
81+ . singleInstance ( forId: id)
82+ . group ( name: group)
83+ . delay ( time: 3600 )
84+ . schedule ( manager: manager)
85+
86+ manager. cancelOperations ( uuid: id)
87+
88+ job. await ( )
89+
90+ XCTAssertEqual ( job. onRunJobCalled, 0 )
91+ XCTAssertEqual ( job. onCompleteCalled, 0 )
92+ XCTAssertEqual ( job. onRetryCalled, 0 )
93+ XCTAssertEqual ( job. onCancelCalled, 1 )
94+
95+ XCTAssertTrue ( job. lastError is Canceled )
96+
97+ XCTAssertEqual ( 0 , persister. putQueueName. count)
98+ XCTAssertEqual ( 0 , persister. putJobUUID. count)
99+ XCTAssertEqual ( 0 , persister. putData. count)
100+
101+ XCTAssertEqual ( 0 , persister. removeJobUUID. count)
102+ XCTAssertEqual ( 0 , persister. removeQueueName. count)
103+ }
104+
68105 func testCancelAll( ) {
69106 let id = UUID ( ) . uuidString
70107 let tag = UUID ( ) . uuidString
0 commit comments