diff --git a/tests/auto/fakevim/main.cpp b/tests/auto/fakevim/main.cpp
index 755a95c0d00a9e90b93e0a94aadaf5a986ba254f..9d7cd35fa981bbec0a38cd8a5814c9e9363426be 100644
--- a/tests/auto/fakevim/main.cpp
+++ b/tests/auto/fakevim/main.cpp
@@ -59,6 +59,7 @@ private slots:
     void indentation();
 
     // command mode
+    void command_oO();
     void command_Cxx_down_dot();
     void command_Gyyp();
     void command_J();
@@ -620,6 +621,19 @@ return; // FIXME: not in sync with Gui behaviour?
 }
 
 
+void tst_FakeVim::command_oO()
+{
+    setup();
+    check("gg",              "@" + lmid(0));
+    check("Ol1" + escape,    "l@1\n" + lmid(0));
+    check("gg",              "@l1\n" + lmid(0));
+    check("ol2" + escape,    "l1\n" "l@2\n" + lmid(0));
+    check("G$",              "l1\n" "l2\n" + lmid(0)+"@");
+    check("ol-1" + escape,   "l1\n" "l2\n" + lmid(0)+"\n" + "l-@1");
+    check("G",               "l1\n" "l2\n" + lmid(0)+"\n" + "@l-1");
+    check("Ol-2" + escape,   "l1\n" "l2\n" + lmid(0)+"\n" + "l-@2\n" + "l-1");
+}
+
 /*
 
 #include <QtCore>