@@ -80,11 +80,60 @@ describe('Jaeger Exporter', () => {
8080 it ( 'should encode as thrift' , ( ) => {
8181 return tracer . startRootSpan ( { name : 'root-s01' } , ( rootSpan ) => {
8282 const span = tracer . startChildSpan ( 'child-s01' ) ;
83+ span . addAttribute ( 'testBool' , true ) ;
84+ span . addAttribute ( 'testString' , 'here' ) ;
85+ span . addAttribute ( 'testNum' , 3.142 ) ;
86+ span . addAnnotation ( 'something happened' , {
87+ 'error' : true ,
88+ } ) ;
8389 span . end ( ) ;
8490 rootSpan . end ( ) ;
8591 const thriftSpan = spanToThrift ( span ) ;
8692 const result = ThriftUtils . _thrift . Span . rw . toBuffer ( thriftSpan ) ;
8793 assert . strictEqual ( result . err , null ) ;
94+
95+ assert . strictEqual ( thriftSpan . tags . length , 3 ) ;
96+ let testBoolSeen = false ;
97+ let testStringSeen = false ;
98+ let testNumSeen = false ;
99+ thriftSpan . tags . forEach ( ( tag ) => {
100+ if ( tag . key === 'testBool' && tag . vType === 'BOOL' &&
101+ tag . vBool === true ) {
102+ testBoolSeen = true ;
103+ return ;
104+ }
105+ if ( tag . key === 'testString' && tag . vType === 'STRING' &&
106+ tag . vStr === 'here' ) {
107+ testStringSeen = true ;
108+ return ;
109+ }
110+ if ( tag . key === 'testNum' && tag . vType === 'DOUBLE' &&
111+ tag . vDouble === 3.142 ) {
112+ testNumSeen = true ;
113+ return ;
114+ }
115+ } ) ;
116+
117+ assert . strictEqual ( true , testBoolSeen && testStringSeen && testNumSeen ) ;
118+
119+ assert . strictEqual ( thriftSpan . logs . length , 1 ) ;
120+ thriftSpan . logs . forEach ( ( log ) => {
121+ let descriptionSeen = false ;
122+ let errorSeen = false ;
123+ log . fields . forEach ( ( field ) => {
124+ if ( field . key === 'description' && field . vType === 'STRING' &&
125+ field . vStr === 'something happened' ) {
126+ descriptionSeen = true ;
127+ return ;
128+ }
129+ if ( field . key === 'error' && field . vType === 'BOOL' &&
130+ field . vBool === true ) {
131+ errorSeen = true ;
132+ return ;
133+ }
134+ assert . strictEqual ( true , descriptionSeen && errorSeen ) ;
135+ } ) ;
136+ } ) ;
88137 } ) ;
89138 } ) ;
90139 } ) ;
0 commit comments