@@ -38,6 +38,32 @@ class TestLocalKeyTwo(JSONObject):
38
38
self .assertEqual (twos_field_one .field_description .use_join_table ,
39
39
None )
40
40
41
+ def test_auto_generates_1_many_local_key_foreign_key (self ):
42
+
43
+ @jsonclass (class_graph = 'test_marker_auto_gen' )
44
+ class TestOMKeyOne (JSONObject ):
45
+ name : str
46
+ master : Link [TestOMKeyMany , linkto ]
47
+
48
+ @jsonclass (class_graph = 'test_marker_auto_gen' )
49
+ class TestOMKeyMany (JSONObject ):
50
+ name : str
51
+ slaves : Link [list [TestOMKeyOne ], linkedby ('master' )]
52
+
53
+ master_field = field (TestOMKeyOne , 'master' )
54
+ self .assertEqual (master_field .field_description .field_type ,
55
+ FieldType .INSTANCE )
56
+ self .assertEqual (master_field .field_description .field_storage ,
57
+ FieldStorage .LOCAL_KEY )
58
+ self .assertEqual (master_field .field_description .foreign_key , None )
59
+
60
+ slave_fields = field (TestOMKeyMany , 'slaves' )
61
+ self .assertEqual (slave_fields .field_description .field_type ,
62
+ FieldType .LIST )
63
+ self .assertEqual (slave_fields .field_description .field_storage ,
64
+ FieldStorage .FOREIGN_KEY )
65
+ self .assertEqual (slave_fields .field_description .foreign_key , 'master' )
66
+
41
67
def test_auto_generates_many_many_foreign_key (self ):
42
68
43
69
@jsonclass (class_graph = 'test_marker_auto_gen_q' )
0 commit comments