22using System . Threading . Tasks ;
33using NUnit . Framework ;
44
5- namespace Shuttle . Core . Threading . Tests
5+ namespace Shuttle . Core . Threading . Tests ;
6+
7+ [ TestFixture ]
8+ public class AmbientContextFixture
69{
7- [ TestFixture ]
8- public class AmbientContextFixture
10+ [ Test ]
11+ public void Should_be_able_to_flow_data ( )
912 {
10- [ Test ]
11- public void Should_be_able_to_flow_data ( )
12- {
13- var d1 = new object ( ) ;
14- var t1 = default ( object ) ;
15- var t10 = default ( object ) ;
16- var t11 = default ( object ) ;
17- var t12 = default ( object ) ;
18- var t13 = default ( object ) ;
19- var d2 = new object ( ) ;
20- var t2 = default ( object ) ;
21- var t20 = default ( object ) ;
22- var t21 = default ( object ) ;
23- var t22 = default ( object ) ;
24- var t23 = default ( object ) ;
13+ var d1 = new object ( ) ;
14+ var t1 = default ( object ) ;
15+ var t10 = default ( object ) ;
16+ var t11 = default ( object ) ;
17+ var t12 = default ( object ) ;
18+ var t13 = default ( object ) ;
19+ var d2 = new object ( ) ;
20+ var t2 = default ( object ) ;
21+ var t20 = default ( object ) ;
22+ var t21 = default ( object ) ;
23+ var t22 = default ( object ) ;
24+ var t23 = default ( object ) ;
2525
26- Task . WaitAll (
27- Task . Run ( ( ) =>
28- {
29- AmbientContext . SetData ( "d1" , d1 ) ;
30- new Thread ( ( ) => t10 = AmbientContext . GetData ( "d1" ) ) . Start ( ) ;
31- Task . WaitAll (
32- Task . Run ( ( ) => t1 = AmbientContext . GetData ( "d1" ) )
33- . ContinueWith ( t => Task . Run ( ( ) => t11 = AmbientContext . GetData ( "d1" ) ) ) ,
34- Task . Run ( ( ) => t12 = AmbientContext . GetData ( "d1" ) ) ,
35- Task . Run ( ( ) => t13 = AmbientContext . GetData ( "d1" ) )
36- ) ;
37- } ) ,
38- Task . Run ( ( ) =>
39- {
40- AmbientContext . SetData ( "d2" , d2 ) ;
41- new Thread ( ( ) => t20 = AmbientContext . GetData ( "d2" ) ) . Start ( ) ;
42- Task . WaitAll (
43- Task . Run ( ( ) => t2 = AmbientContext . GetData ( "d2" ) )
44- . ContinueWith ( t => Task . Run ( ( ) => t21 = AmbientContext . GetData ( "d2" ) ) ) ,
45- Task . Run ( ( ) => t22 = AmbientContext . GetData ( "d2" ) ) ,
46- Task . Run ( ( ) => t23 = AmbientContext . GetData ( "d2" ) )
47- ) ;
48- } )
49- ) ;
26+ Task . WaitAll (
27+ Task . Run ( ( ) =>
28+ {
29+ AmbientContext . SetData ( "d1" , d1 ) ;
30+ new Thread ( ( ) => t10 = AmbientContext . GetData ( "d1" ) ) . Start ( ) ;
31+ Task . WaitAll (
32+ Task . Run ( ( ) => t1 = AmbientContext . GetData ( "d1" ) )
33+ . ContinueWith ( t => Task . Run ( ( ) => t11 = AmbientContext . GetData ( "d1" ) ) ) ,
34+ Task . Run ( ( ) => t12 = AmbientContext . GetData ( "d1" ) ) ,
35+ Task . Run ( ( ) => t13 = AmbientContext . GetData ( "d1" ) )
36+ ) ;
37+ } ) ,
38+ Task . Run ( ( ) =>
39+ {
40+ AmbientContext . SetData ( "d2" , d2 ) ;
41+ new Thread ( ( ) => t20 = AmbientContext . GetData ( "d2" ) ) . Start ( ) ;
42+ Task . WaitAll (
43+ Task . Run ( ( ) => t2 = AmbientContext . GetData ( "d2" ) )
44+ . ContinueWith ( t => Task . Run ( ( ) => t21 = AmbientContext . GetData ( "d2" ) ) ) ,
45+ Task . Run ( ( ) => t22 = AmbientContext . GetData ( "d2" ) ) ,
46+ Task . Run ( ( ) => t23 = AmbientContext . GetData ( "d2" ) )
47+ ) ;
48+ } )
49+ ) ;
5050
51- Assert . That ( d1 , Is . SameAs ( t1 ) ) ;
52- Assert . That ( d1 , Is . SameAs ( t10 ) ) ;
53- Assert . That ( d1 , Is . SameAs ( t11 ) ) ;
54- Assert . That ( d1 , Is . SameAs ( t12 ) ) ;
55- Assert . That ( d1 , Is . SameAs ( t13 ) ) ;
51+ Assert . That ( d1 , Is . SameAs ( t1 ) ) ;
52+ Assert . That ( d1 , Is . SameAs ( t10 ) ) ;
53+ Assert . That ( d1 , Is . SameAs ( t11 ) ) ;
54+ Assert . That ( d1 , Is . SameAs ( t12 ) ) ;
55+ Assert . That ( d1 , Is . SameAs ( t13 ) ) ;
5656
57- Assert . That ( d2 , Is . SameAs ( t2 ) ) ;
58- Assert . That ( d2 , Is . SameAs ( t20 ) ) ;
59- Assert . That ( d2 , Is . SameAs ( t21 ) ) ;
60- Assert . That ( d2 , Is . SameAs ( t22 ) ) ;
61- Assert . That ( d2 , Is . SameAs ( t23 ) ) ;
57+ Assert . That ( d2 , Is . SameAs ( t2 ) ) ;
58+ Assert . That ( d2 , Is . SameAs ( t20 ) ) ;
59+ Assert . That ( d2 , Is . SameAs ( t21 ) ) ;
60+ Assert . That ( d2 , Is . SameAs ( t22 ) ) ;
61+ Assert . That ( d2 , Is . SameAs ( t23 ) ) ;
6262
63- Assert . Null ( AmbientContext . GetData ( "d1" ) ) ;
64- Assert . Null ( AmbientContext . GetData ( "d2" ) ) ;
65- }
63+ Assert . That ( AmbientContext . GetData ( "d1" ) , Is . Null ) ;
64+ Assert . That ( AmbientContext . GetData ( "d2" ) , Is . Null ) ;
6665 }
6766}
0 commit comments