diff --git a/test/test_go.rb b/test/test_go.rb
index 27c7b332329a1fee1a7b6207a481ac7d8b3a06dd..fe32a4ea9a07392970117bc69bb42706fce3d227 100644
--- a/test/test_go.rb
+++ b/test/test_go.rb
@@ -112,6 +112,10 @@ class TestGoFZF < MiniTest::Unit::TestCase
   end
 
   def fzf(*opts)
+    fzf!(*opts) + " > #{TEMPNAME} && echo #{FIN}"
+  end
+
+  def fzf!(*opts)
     opts = opts.map { |o|
       case o
       when Symbol
@@ -123,7 +127,7 @@ class TestGoFZF < MiniTest::Unit::TestCase
         nil
       end
     }.compact
-    "fzf #{opts.join ' '} > #{TEMPNAME} && echo #{FIN}"
+    "fzf #{opts.join ' '}"
   end
 
   def test_vanilla
@@ -307,5 +311,16 @@ class TestGoFZF < MiniTest::Unit::TestCase
     tmux.until { |lines| lines[-1].include?(FIN) }
     assert_equal ['臧€雮橂嫟'], readonce.split($/)
   end
+
+  def test_sync
+    tmux.send_keys "seq 1 100 | #{fzf! :multi} | awk '{print \\$1 \\$1}' | #{fzf :sync}", :Enter
+    tmux.until { |lines| lines[-1] == '>' }
+    tmux.send_keys 9
+    tmux.until { |lines| lines[-2] == '  19/100' }
+    tmux.send_keys :BTab, :BTab, :BTab, :Enter
+    tmux.until { |lines| lines[-1] == '>' }
+    tmux.send_keys 'C-K', :Enter
+    assert_equal ['1919'], readonce.split($/)
+  end
 end