@@ -617,6 +617,7 @@ public IList TransformList(IList collection)
617617 [ Test ]
618618 public void CanSetResultTransformerOnFutureQuery ( )
619619 {
620+ //NH-3222
620621 using ( var s = this . OpenSession ( ) )
621622 using ( s . BeginTransaction ( ) )
622623 {
@@ -639,6 +640,7 @@ public void CanSetResultTransformerOnFutureQuery()
639640 [ Test ]
640641 public void CanSetResultTransformerOnFutureValue ( )
641642 {
643+ //NH-3222
642644 using ( var s = this . OpenSession ( ) )
643645 using ( s . BeginTransaction ( ) )
644646 {
@@ -658,5 +660,44 @@ public void CanSetResultTransformerOnFutureValue()
658660 Assert . IsTrue ( transformer . TransformTupleCalled ) ;
659661 }
660662 }
663+
664+ [ Test ]
665+ public void CanExecuteFutureList ( )
666+ {
667+ //NH-3222
668+ using ( var s = this . OpenSession ( ) )
669+ using ( s . BeginTransaction ( ) )
670+ {
671+ s . Save ( new Person ( "Ricardo" ) ) ;
672+ s . Flush ( ) ;
673+
674+ var l = s
675+ . CreateSQLQuery ( "select Name from Person" )
676+ . Future < string > ( ) ;
677+
678+ Assert . AreEqual ( l . Count ( ) , 1 ) ;
679+ Assert . AreEqual ( "Ricardo" , l . ElementAt ( 0 ) ) ;
680+ }
681+ }
682+
683+ [ Test ]
684+ public void CanExecuteFutureValue ( )
685+ {
686+ //NH-3222
687+ using ( var s = this . OpenSession ( ) )
688+ using ( s . BeginTransaction ( ) )
689+ {
690+ s . Save ( new Person ( "Ricardo" ) ) ;
691+ s . Flush ( ) ;
692+
693+ var l = s
694+ . CreateSQLQuery ( "select Name from Person" )
695+ . FutureValue < string > ( ) ;
696+
697+ var v = l . Value ;
698+
699+ Assert . AreEqual ( "Ricardo" , v ) ;
700+ }
701+ }
661702 }
662703}
0 commit comments