@@ -217,6 +217,42 @@ public void SetUniqueToMultiColumn()
217
217
Assert . That ( mapping . index , Is . EqualTo ( "II" ) ) ;
218
218
}
219
219
220
+ [ Test ]
221
+ public void CanSetColumnsAndFormulas ( )
222
+ {
223
+ var hbmMapping = new HbmMapping ( ) ;
224
+ var member = typeof ( MyClass ) . GetProperty ( "Relation" ) ;
225
+ var mapping = new HbmManyToOne ( ) ;
226
+ IManyToOneMapper mapper = new ManyToOneMapper ( member , mapping , hbmMapping ) ;
227
+ mapper . ColumnsAndFormulas ( x => x . Name ( "pizza" ) , x => x . Formula ( "risotto" ) , x => x . Name ( "pasta" ) ) ;
228
+
229
+ Assert . That ( mapping . Items , Has . Length . EqualTo ( 3 ) ) ;
230
+ Assert . That ( mapping . Items [ 0 ] , Is . TypeOf < HbmColumn > ( ) , "first" ) ;
231
+ Assert . That ( mapping . Items [ 1 ] , Is . TypeOf < HbmFormula > ( ) , "second" ) ;
232
+ Assert . That ( mapping . Items [ 2 ] , Is . TypeOf < HbmColumn > ( ) , "third" ) ;
233
+ Assert . That ( ( ( HbmColumn ) mapping . Items [ 0 ] ) . name , Is . EqualTo ( "pizza" ) ) ;
234
+ Assert . That ( ( ( HbmFormula ) mapping . Items [ 1 ] ) . Text , Has . Length . EqualTo ( 1 ) . And . One . EqualTo ( "risotto" ) ) ;
235
+ Assert . That ( ( ( HbmColumn ) mapping . Items [ 2 ] ) . name , Is . EqualTo ( "pasta" ) ) ;
236
+ Assert . That ( mapping . column , Is . Null , "column" ) ;
237
+ Assert . That ( mapping . formula , Is . Null , "formula" ) ;
238
+ }
239
+
240
+ [ Test ]
241
+ public void CanSetMultipleFormulas ( )
242
+ {
243
+ var hbmMapping = new HbmMapping ( ) ;
244
+ var member = typeof ( MyClass ) . GetProperty ( "Relation" ) ;
245
+ var mapping = new HbmManyToOne ( ) ;
246
+ IManyToOneMapper mapper = new ManyToOneMapper ( member , mapping , hbmMapping ) ;
247
+ mapper . Formulas ( "formula1" , "formula2" , "formula3" ) ;
248
+
249
+ Assert . That ( mapping . formula , Is . Null ) ;
250
+ Assert . That ( mapping . Items , Has . Length . EqualTo ( 3 ) ) ;
251
+ Assert . That (
252
+ mapping . Items . Cast < HbmFormula > ( ) . Select ( f => f . Text . Single ( ) ) ,
253
+ Is . EquivalentTo ( new [ ] { "formula1" , "formula2" , "formula3" } ) ) ;
254
+ }
255
+
220
256
[ Test ]
221
257
public void WhenSetFetchModeToJoinThenSetFetch ( )
222
258
{
0 commit comments