@@ -123,23 +123,35 @@ public void ProvidesDefaultTask()
123
123
}
124
124
125
125
[ Fact ]
126
- public void ProvidesDefaultGenericTask ( )
126
+ public void ProvidesDefaultGenericTaskOfValueType ( )
127
127
{
128
128
var provider = new EmptyDefaultValueProvider ( ) ;
129
129
130
- var value = provider . ProvideDefault ( typeof ( IFoo ) . GetProperty ( "GenericTaskValue " ) . GetGetMethod ( ) ) ;
130
+ var value = provider . ProvideDefault ( typeof ( IFoo ) . GetProperty ( "GenericTaskOfValueType " ) . GetGetMethod ( ) ) ;
131
131
132
132
Assert . NotNull ( value ) ;
133
133
Assert . True ( ( ( Task ) value ) . IsCompleted ) ;
134
134
Assert . Equal ( default ( int ) , ( ( Task < int > ) value ) . Result ) ;
135
135
}
136
136
137
+ [ Fact ]
138
+ public void ProvidesDefaultGenericTaskOfReferenceType ( )
139
+ {
140
+ var provider = new EmptyDefaultValueProvider ( ) ;
141
+
142
+ var value = provider . ProvideDefault ( typeof ( IFoo ) . GetProperty ( "GenericTaskOfReferenceType" ) . GetGetMethod ( ) ) ;
143
+
144
+ Assert . NotNull ( value ) ;
145
+ Assert . True ( ( ( Task ) value ) . IsCompleted ) ;
146
+ Assert . Equal ( default ( string ) , ( ( Task < string > ) value ) . Result ) ;
147
+ }
148
+
137
149
[ Fact ]
138
150
public void ProvidesDefaultTaskOfGenericTask ( )
139
151
{
140
152
var provider = new EmptyDefaultValueProvider ( ) ;
141
153
142
- var value = provider . ProvideDefault ( typeof ( IFoo ) . GetProperty ( "TaskOfGenericTaskValue " ) . GetGetMethod ( ) ) ;
154
+ var value = provider . ProvideDefault ( typeof ( IFoo ) . GetProperty ( "TaskOfGenericTaskOfValueType " ) . GetGetMethod ( ) ) ;
143
155
144
156
Assert . NotNull ( value ) ;
145
157
Assert . True ( ( ( Task ) value ) . IsCompleted ) ;
@@ -162,8 +174,9 @@ public interface IFoo
162
174
IQueryable QueryableObjects { get ; }
163
175
#if ! NET3x && ! SILVERLIGHT
164
176
Task TaskValue { get ; set ; }
165
- Task < int > GenericTaskValue { get ; set ; }
166
- Task < Task < int > > TaskOfGenericTaskValue { get ; set ; }
177
+ Task < int > GenericTaskOfValueType { get ; set ; }
178
+ Task < string > GenericTaskOfReferenceType { get ; set ; }
179
+ Task < Task < int > > TaskOfGenericTaskOfValueType { get ; set ; }
167
180
#endif
168
181
}
169
182
0 commit comments