diff --git a/tests/Relation/ParserTestCase.php b/tests/Relation/ParserTestCase.php
index c40db5127..8c905329e 100644
--- a/tests/Relation/ParserTestCase.php
+++ b/tests/Relation/ParserTestCase.php
@@ -37,23 +37,52 @@ class Doctrine_Relation_Parser_TestCase extends Doctrine_UnitTestCase
         $r = new Doctrine_Relation_Parser($this->conn->getTable('User'));
         
         $p = array('type' => Doctrine_Relation::ONE, 
-                   'local' => 'email_id');
+                   'local' => 'email_id',
+                   'definer' => 'User');
 
         $r->bind('Email', $p);
                                 
         $this->assertEqual($r->getPendingRelation('Email'), array('type' => Doctrine_Relation::ONE, 
                                                                   'local' => 'email_id',
                                                                   'class' => 'Email',
-                                                                  'alias' => 'Email'
+                                                                  'alias' => 'Email',
+                                                                  'definer' => 'User'
                                                                   ));
     }
+    public function testBindThrowsExceptionIfDefinerNotSet() 
+    {
+        $r = new Doctrine_Relation_Parser($this->conn->getTable('User'));
+        
+        $p = array('type' => Doctrine_Relation::ONE, 
+                   'local' => 'email_id');
+        try {
+            $r->bind('Email', $p);
+            $this->fail('should throw exception');
+        } catch(Doctrine_Relation_Exception $e) {
+            $this->pass();
+        }
+    }
+    public function testBindThrowsExceptionIfTypeNotSet()
+    {
+        $r = new Doctrine_Relation_Parser($this->conn->getTable('User'));
+
+        $p = array('local' => 'email_id',
+                   'definer' => 'User');
+        try {
+            $r->bind('Email', $p);
+            $this->fail('should throw exception');
+        } catch(Doctrine_Relation_Exception $e) {
+            $this->pass();
+        }
+    }
     public function testRelationParserSupportsLocalColumnGuessing()
     {
         $r = new Doctrine_Relation_Parser($this->conn->getTable('User'));
 
         $d = $r->completeDefinition(array('class'   => 'Phonenumber',
                                           'type'    => Doctrine_Relation::MANY,
-                                          'foreign' => 'user_id'));
+                                          'foreign' => 'entity_id',
+                                          'definer' => 'Entity'));
         
         $this->assertEqual($d['local'], 'id');
     }
@@ -63,7 +92,8 @@ class Doctrine_Relation_Parser_TestCase extends Doctrine_UnitTestCase
 
         $d = $r->completeDefinition(array('class'   => 'Email',
                                           'type'    => Doctrine_Relation::ONE,
-                                          'foreign' => 'id'));
+                                          'foreign' => 'id',
+                                          'definer' => 'User'));
 
         $this->assertEqual($d['local'], 'email_id');
     }
@@ -73,9 +103,10 @@ class Doctrine_Relation_Parser_TestCase extends Doctrine_UnitTestCase
 
         $d = $r->completeDefinition(array('class' => 'Phonenumber',
                                           'type'  => Doctrine_Relation::MANY,
-                                          'local' => 'id'));
+                                          'local' => 'id',
+                                          'definer' => 'Entity'));
 
-        $this->assertEqual($d['foreign'], 'user_id');
+        $this->assertEqual($d['foreign'], 'entity_id');
     }
     public function testRelationParserSupportsForeignColumnGuessing2()
     {
@@ -83,7 +114,8 @@ class Doctrine_Relation_Parser_TestCase extends Doctrine_UnitTestCase
 
         $d = $r->completeDefinition(array('class' => 'Email',
                                           'type'  => Doctrine_Relation::ONE,
-                                          'local' => 'email_id'));
+                                          'local' => 'email_id',
+                                          'definer' => 'User'));
 
         $this->assertEqual($d['foreign'], 'id');
     }
@@ -92,7 +124,8 @@ class Doctrine_Relation_Parser_TestCase extends Doctrine_UnitTestCase
         $r = new Doctrine_Relation_Parser($this->conn->getTable('User'));
 
         $d = $r->completeDefinition(array('class' => 'Email',
-                                          'type'  => Doctrine_Relation::MANY));
+                                          'type'  => Doctrine_Relation::MANY,
+                                          'definer' => 'User'));
 
         $this->assertEqual($d['foreign'], 'id');
         $this->assertEqual($d['local'], 'email_id');