diff --git a/_test/cases/inc/pageutils_resolve_pageid.test.php b/_test/cases/inc/pageutils_resolve_pageid.test.php
index c65ed1866e7b639688d11753771c9c956dd73d5f..ec56af2a11310c2b37b91698e4ce1548a31ab41e 100644
--- a/_test/cases/inc/pageutils_resolve_pageid.test.php
+++ b/_test/cases/inc/pageutils_resolve_pageid.test.php
@@ -48,7 +48,6 @@ class init_resolve_pageid_test extends UnitTestCase {
         $tests[] = array('foo','.:','foo:start');
         $tests[] = array('','foo:','foo:start');
         $tests[] = array('foo','foo:','foo:start');
-        $tests[] = array('foo','playground:','playground:playground');
 
         // empty $page
         global $ID;
@@ -69,7 +68,6 @@ class init_resolve_pageid_test extends UnitTestCase {
     function test_resolve_pageid_empty_homepage() {
         global $ID;
         $ID = '';
-
         global $conf;
         $conf['start'] = 'someverystrangestartname';
 
@@ -77,7 +75,7 @@ class init_resolve_pageid_test extends UnitTestCase {
         $page = '';
         $exist = true;
 
-        resolve_pageid($ns, $page, $exist);
+        @resolve_pageid($ns, $page, $exist);
         $this->assertEqual($page, $conf['start']);
    }
 
diff --git a/_testing/unittests/inc/pageutils_resolve_pageid.test.php b/_testing/unittests/inc/pageutils_resolve_pageid.test.php
new file mode 100644
index 0000000000000000000000000000000000000000..defbd2a69ba372eff67cd56c1875ee223100b17c
--- /dev/null
+++ b/_testing/unittests/inc/pageutils_resolve_pageid.test.php
@@ -0,0 +1,83 @@
+<?php
+require_once DOKU_INC.'inc/utf8.php';
+require_once DOKU_INC.'inc/pageutils.php';
+
+global $conf;
+if (!isset($conf['datadir'])) $conf['datadir'] = $conf['savedir'].'/pages';
+
+class init_resolve_pageid_test extends PHPUnit_Framework_TestCase {
+
+
+    function test1(){
+        global $conf;
+
+        // we test multiple cases here
+        // format: $ns, $page, $output
+        $tests   = array();
+
+        // relative current in root
+        $tests[] = array('','page','page');
+        $tests[] = array('','.page','page');
+        $tests[] = array('','.:page','page');
+
+        // relative current in namespace
+        $tests[] = array('lev1:lev2','page','lev1:lev2:page');
+        $tests[] = array('lev1:lev2','.page','lev1:lev2:page');
+        $tests[] = array('lev1:lev2','.:page','lev1:lev2:page');
+
+        // relative upper in root
+        $tests[] = array('','..page','page');
+        $tests[] = array('','..:page','page');
+
+        // relative upper in namespace
+        $tests[] = array('lev1:lev2','..page','lev1:page');
+        $tests[] = array('lev1:lev2','..:page','lev1:page');
+        $tests[] = array('lev1:lev2','..:..:page','page');
+        $tests[] = array('lev1:lev2','..:..:..:page','page');
+
+        // strange and broken ones
+        $tests[] = array('lev1:lev2','....:....:page','lev1:lev2:page');
+        $tests[] = array('lev1:lev2','..:..:lev3:page','lev3:page');
+        $tests[] = array('lev1:lev2','..:..:lev3:..:page','page');
+        $tests[] = array('lev1:lev2','..:..:lev3:..:page:....:...','page');
+
+        // now some tests with existing and none existing files
+        $conf['start'] = 'start';
+
+        $tests[] = array('','.:','start');
+        $tests[] = array('foo','.:','foo:start');
+        $tests[] = array('','foo:','foo:start');
+        $tests[] = array('foo','foo:','foo:start');
+
+        // empty $page
+        global $ID;
+        $ID = 'my:space';
+        $tests[] = array('my', '', 'my:space');
+
+        foreach($tests as $test){
+            $page = $test[1];
+            resolve_pageid($test[0],$page,$foo);
+
+            $this->assertEquals($page,$test[2]);
+        }
+    }
+
+    /**
+     * Empty page on homepage should resolve to start page
+     */
+    function test_resolve_pageid_empty_homepage() {
+        global $ID;
+        $ID = '';
+        global $conf;
+        $conf['start'] = 'someverystrangestartname';
+
+        $ns = '';
+        $page = '';
+        $exist = true;
+
+        resolve_pageid($ns, $page, $exist);
+        $this->assertEquals($page, $conf['start']);
+   }
+
+}
+//Setup VIM: ex: et ts=4 :