@@ -22,11 +22,13 @@ import {
22
22
TraceOptions ,
23
23
SpanContext ,
24
24
} from '@opentelemetry/types' ;
25
- import { NoopTracer , NoopLogger } from '@opentelemetry/core' ;
25
+ import { BasicTracer } from '../src' ;
26
+ import { NoopScopeManager } from '@opentelemetry/scope-base' ;
26
27
27
28
describe ( 'Span' , ( ) => {
28
- const tracer = new NoopTracer ( ) ;
29
- const logger = new NoopLogger ( ) ;
29
+ const tracer = new BasicTracer ( {
30
+ scopeManager : new NoopScopeManager ( ) ,
31
+ } ) ;
30
32
const name = 'span1' ;
31
33
const spanContext : SpanContext = {
32
34
traceId : 'd4cda95b652f4a1592b449d5929fda1b' ,
@@ -35,14 +37,14 @@ describe('Span', () => {
35
37
} ;
36
38
37
39
it ( 'should create a Span instance' , ( ) => {
38
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . SERVER ) ;
40
+ const span = new Span ( tracer , name , spanContext , SpanKind . SERVER ) ;
39
41
assert . ok ( span instanceof Span ) ;
40
42
assert . strictEqual ( span . tracer ( ) , tracer ) ;
41
43
span . end ( ) ;
42
44
} ) ;
43
45
44
46
it ( 'should get the span context of span' , ( ) => {
45
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . CLIENT ) ;
47
+ const span = new Span ( tracer , name , spanContext , SpanKind . CLIENT ) ;
46
48
const context = span . context ( ) ;
47
49
assert . strictEqual ( context . traceId , spanContext . traceId ) ;
48
50
assert . strictEqual ( context . traceOptions , TraceOptions . SAMPLED ) ;
@@ -53,13 +55,13 @@ describe('Span', () => {
53
55
} ) ;
54
56
55
57
it ( 'should return true when isRecordingEvents:true' , ( ) => {
56
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . CLIENT ) ;
58
+ const span = new Span ( tracer , name , spanContext , SpanKind . CLIENT ) ;
57
59
assert . ok ( span . isRecordingEvents ( ) ) ;
58
60
span . end ( ) ;
59
61
} ) ;
60
62
61
63
it ( 'should set an attribute' , ( ) => {
62
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . CLIENT ) ;
64
+ const span = new Span ( tracer , name , spanContext , SpanKind . CLIENT ) ;
63
65
64
66
[ 'String' , 'Number' , 'Boolean' ] . map ( attType => {
65
67
span . setAttribute ( 'testKey' + attType , 'testValue' + attType ) ;
@@ -69,7 +71,7 @@ describe('Span', () => {
69
71
} ) ;
70
72
71
73
it ( 'should set an event' , ( ) => {
72
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . CLIENT ) ;
74
+ const span = new Span ( tracer , name , spanContext , SpanKind . CLIENT ) ;
73
75
span . addEvent ( 'sent' ) ;
74
76
span . addEvent ( 'rev' , { attr1 : 'value' , attr2 : 123 , attr3 : true } ) ;
75
77
span . end ( ) ;
@@ -81,14 +83,14 @@ describe('Span', () => {
81
83
spanId : '5e0c63257de34c92' ,
82
84
traceOptions : TraceOptions . SAMPLED ,
83
85
} ;
84
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . CLIENT ) ;
86
+ const span = new Span ( tracer , name , spanContext , SpanKind . CLIENT ) ;
85
87
span . addLink ( spanContext ) ;
86
88
span . addLink ( spanContext , { attr1 : 'value' , attr2 : 123 , attr3 : true } ) ;
87
89
span . end ( ) ;
88
90
} ) ;
89
91
90
92
it ( 'should set an error status' , ( ) => {
91
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . CLIENT ) ;
93
+ const span = new Span ( tracer , name , spanContext , SpanKind . CLIENT ) ;
92
94
span . setStatus ( {
93
95
code : CanonicalCode . PERMISSION_DENIED ,
94
96
message : 'This is an error' ,
@@ -100,7 +102,6 @@ describe('Span', () => {
100
102
const parentId = '5c1c63257de34c67' ;
101
103
const span = new Span (
102
104
tracer ,
103
- logger ,
104
105
'my-span' ,
105
106
spanContext ,
106
107
SpanKind . INTERNAL ,
@@ -121,13 +122,7 @@ describe('Span', () => {
121
122
} ) ;
122
123
123
124
it ( 'should return ReadableSpan with attributes' , ( ) => {
124
- const span = new Span (
125
- tracer ,
126
- logger ,
127
- 'my-span' ,
128
- spanContext ,
129
- SpanKind . CLIENT
130
- ) ;
125
+ const span = new Span ( tracer , 'my-span' , spanContext , SpanKind . CLIENT ) ;
131
126
span . setAttribute ( 'attr1' , 'value1' ) ;
132
127
let readableSpan = span . toReadableSpan ( ) ;
133
128
assert . deepStrictEqual ( readableSpan . attributes , { attr1 : 'value1' } ) ;
@@ -150,13 +145,7 @@ describe('Span', () => {
150
145
} ) ;
151
146
152
147
it ( 'should return ReadableSpan with links' , ( ) => {
153
- const span = new Span (
154
- tracer ,
155
- logger ,
156
- 'my-span' ,
157
- spanContext ,
158
- SpanKind . CLIENT
159
- ) ;
148
+ const span = new Span ( tracer , 'my-span' , spanContext , SpanKind . CLIENT ) ;
160
149
span . addLink ( spanContext ) ;
161
150
let readableSpan = span . toReadableSpan ( ) ;
162
151
assert . strictEqual ( readableSpan . links . length , 1 ) ;
@@ -193,13 +182,7 @@ describe('Span', () => {
193
182
} ) ;
194
183
195
184
it ( 'should return ReadableSpan with events' , ( ) => {
196
- const span = new Span (
197
- tracer ,
198
- logger ,
199
- 'my-span' ,
200
- spanContext ,
201
- SpanKind . CLIENT
202
- ) ;
185
+ const span = new Span ( tracer , 'my-span' , spanContext , SpanKind . CLIENT ) ;
203
186
span . addEvent ( 'sent' ) ;
204
187
let readableSpan = span . toReadableSpan ( ) ;
205
188
assert . strictEqual ( readableSpan . events . length , 1 ) ;
@@ -232,7 +215,7 @@ describe('Span', () => {
232
215
} ) ;
233
216
234
217
it ( 'should return ReadableSpan with new status' , ( ) => {
235
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . CLIENT ) ;
218
+ const span = new Span ( tracer , name , spanContext , SpanKind . CLIENT ) ;
236
219
span . setStatus ( {
237
220
code : CanonicalCode . PERMISSION_DENIED ,
238
221
message : 'This is an error' ,
@@ -254,14 +237,14 @@ describe('Span', () => {
254
237
} ) ;
255
238
256
239
it ( 'should only end a span once' , ( ) => {
257
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . SERVER ) ;
240
+ const span = new Span ( tracer , name , spanContext , SpanKind . SERVER ) ;
258
241
span . end ( 1234 ) ;
259
242
span . end ( 4567 ) ;
260
243
assert . strictEqual ( span . endTime , 1234 ) ;
261
244
} ) ;
262
245
263
246
it ( 'should update name' , ( ) => {
264
- const span = new Span ( tracer , logger , name , spanContext , SpanKind . SERVER ) ;
247
+ const span = new Span ( tracer , name , spanContext , SpanKind . SERVER ) ;
265
248
span . updateName ( 'foo-span' ) ;
266
249
span . end ( ) ;
267
250
0 commit comments