     
     // MARK: Single Signal Operations
     
-    func testKVO_filter()
-    {
-        let expect = self.expectationWithDescription(__FUNCTION__)
-        
-        let obj1 = MyObject()
-        let obj2 = MyObject()
-        
-        let signal = KVO.signal(obj1, "value").filter { (value: AnyObject?) -> Bool in
-            return value as String == "fuga"
-        }
-        
-        // REACT
-        (obj2, "value") <~ signal
-        
-        // REACT
-        ^{ println("[REACT] new value = \($0)") } <~ signal
-        
-        println("*** Start ***")
-        
-        XCTAssertEqual(obj1.value, "initial")
-        XCTAssertEqual(obj2.value, "initial")
-        
-        self.perform {
-            
-            obj1.value = "hoge"
-            
-            XCTAssertEqual(obj1.value, "hoge")
-            XCTAssertEqual(obj2.value, "initial", "obj2.value should not be updated because signal is not sent via filter().")
-            
-            obj1.value = "fuga"
-            
-            XCTAssertEqual(obj1.value, "fuga")
-            XCTAssertEqual(obj2.value, "fuga")
-            
-            expect.fulfill()
-            
-        }
-        
-        self.wait()
-    }
-    
-    func testKVO_filter2()
-    {
-        let expect = self.expectationWithDescription(__FUNCTION__)
-        
-        let obj1 = MyObject()
-        
-        // NOTE: this is distinct signal
-        let signal = KVO.signal(obj1, "value").filter2 { (oldValue: AnyObject??, newValue: AnyObject?) -> Bool in
-            
-            // don't filter for first value
-            if oldValue == nil { return true }
-            
-            return oldValue as String != newValue as String
-        }
-        
-        var count = 0
-        
-        // REACT
-        signal ~> { _ in count++; return }
-        
-        println("*** Start ***")
-        
-        XCTAssertEqual(obj1.value, "initial")
-        
-        self.perform {
-            
-            obj1.value = "hoge"
-            
-            XCTAssertEqual(count, 1)
-            
-            obj1.value = "fuga"
-            
-            XCTAssertEqual(count, 2)
-            
-            obj1.value = "fuga" // same value as before
-            
-            println(count)
-            XCTAssertEqual(count, 2, "`count` should NOT be incremented because previous value was same (should be distinct)")
-            
-            obj1.value = "hoge"
-            
-            XCTAssertEqual(count, 3, "`count` should be incremented.")
-            
-            expect.fulfill()
-            
-        }
-        
-        self.wait()
-    }
+    // MARK: transforming
     
     func testKVO_map()
     {

        self.wait()
    }
    
    func testKVO_take()
    {
        let expect = self.expectationWithDescription(__FUNCTION__)

        self.wait()
    }
    
    // MARK: timing
    
    func testKVO_throttle()
    {
