             XCTAssertTrue(finishedTasks == 0)
             XCTAssertTrue(didStartWaiting)
             XCTAssertFalse(NSThread.isMainThread())
+            XCTAssertNil(GCDQueue.Background.isCurrent())
             expectation1.fulfill()
             
             finishedTasks++

        
            expectations.append(self.expectationWithDescription("semaphore block \(i)"))
        }
            
        GCDQueue.createConcurrent("testGCDSemaphore.queue").apply(numberOfTasks) { (iteration: UInt) -> () in
            
            expectations[Int(iteration)].fulfill()
            semaphore.signal()
        }

            
            XCTAssertTrue(finishedTasks == 2)
            XCTAssertTrue(NSThread.isMainThread())
            XCTAssertTrue(GCDQueue.Main.isCurrent() ?? false)
            expectation3.fulfill()
        }
        
