14
14
* limitations under the License.
15
15
*/
16
16
17
- import { collectorTypes } from " @opentelemetry/exporter-collector" ;
18
- import { ReadableSpan } from " @opentelemetry/sdk-trace-base" ;
17
+ import { collectorTypes } from ' @opentelemetry/exporter-collector' ;
18
+ import { ReadableSpan } from ' @opentelemetry/sdk-trace-base' ;
19
19
20
- import * as assert from " assert" ;
21
- import { CollectorExporterNodeBase } from " ../src/CollectorExporterNodeBase" ;
22
- import { CollectorExporterConfigNode , ServiceClientType } from " ../src/types" ;
23
- import { mockedReadableSpan } from " ./helper" ;
20
+ import * as assert from ' assert' ;
21
+ import { CollectorExporterNodeBase } from ' ../src/CollectorExporterNodeBase' ;
22
+ import { CollectorExporterConfigNode , ServiceClientType } from ' ../src/types' ;
23
+ import { mockedReadableSpan } from ' ./helper' ;
24
24
25
25
class MockCollectorExporter extends CollectorExporterNodeBase <
26
26
ReadableSpan ,
@@ -35,11 +35,11 @@ class MockCollectorExporter extends CollectorExporterNodeBase<
35
35
} [ ] = [ ] ;
36
36
37
37
getDefaultUrl ( config : CollectorExporterConfigNode ) : string {
38
- return "" ;
38
+ return '' ;
39
39
}
40
40
41
41
getDefaultServiceName ( config : CollectorExporterConfigNode ) : string {
42
- return "" ;
42
+ return '' ;
43
43
}
44
44
45
45
convert ( spans : ReadableSpan [ ] ) : ReadableSpan [ ] {
@@ -51,12 +51,12 @@ class MockCollectorExporter extends CollectorExporterNodeBase<
51
51
}
52
52
53
53
getServiceProtoPath ( ) : string {
54
- return " opentelemetry/proto/collector/trace/v1/trace_service.proto" ;
54
+ return ' opentelemetry/proto/collector/trace/v1/trace_service.proto' ;
55
55
}
56
56
}
57
57
58
58
// Mocked _send which just saves the callbacks for later
59
- MockCollectorExporter . prototype [ " _send" ] = function _sendMock (
59
+ MockCollectorExporter . prototype [ ' _send' ] = function _sendMock (
60
60
self : MockCollectorExporter ,
61
61
objects : ReadableSpan [ ] ,
62
62
onSuccess : ( ) => void ,
@@ -65,81 +65,81 @@ MockCollectorExporter.prototype["_send"] = function _sendMock(
65
65
self . sendCallbacks . push ( { onSuccess, onError } ) ;
66
66
} ;
67
67
68
- describe ( " CollectorExporterNodeBase" , ( ) => {
68
+ describe ( ' CollectorExporterNodeBase' , ( ) => {
69
69
let exporter : MockCollectorExporter ;
70
70
const concurrencyLimit = 5 ;
71
71
72
- beforeEach ( ( done ) => {
72
+ beforeEach ( done => {
73
73
exporter = new MockCollectorExporter ( { concurrencyLimit } ) ;
74
74
done ( ) ;
75
75
} ) ;
76
76
77
- describe ( " export" , ( ) => {
78
- it ( " should export requests concurrently" , async ( ) => {
77
+ describe ( ' export' , ( ) => {
78
+ it ( ' should export requests concurrently' , async ( ) => {
79
79
const spans = [ Object . assign ( { } , mockedReadableSpan ) ] ;
80
80
const numToExport = concurrencyLimit ;
81
81
82
82
for ( let i = 0 ; i < numToExport ; ++ i ) {
83
83
exporter . export ( spans , ( ) => { } ) ;
84
84
}
85
85
86
- assert . strictEqual ( exporter [ " _sendingPromises" ] . length , numToExport ) ;
87
- const promisesAllDone = Promise . all ( exporter [ " _sendingPromises" ] ) ;
86
+ assert . strictEqual ( exporter [ ' _sendingPromises' ] . length , numToExport ) ;
87
+ const promisesAllDone = Promise . all ( exporter [ ' _sendingPromises' ] ) ;
88
88
// Mock that all requests finish sending
89
89
exporter . sendCallbacks . forEach ( ( { onSuccess } ) => onSuccess ( ) ) ;
90
90
91
91
// All finished promises should be popped off
92
92
await promisesAllDone ;
93
- assert . strictEqual ( exporter [ " _sendingPromises" ] . length , 0 ) ;
93
+ assert . strictEqual ( exporter [ ' _sendingPromises' ] . length , 0 ) ;
94
94
} ) ;
95
95
96
- it ( " should drop new export requests when already sending at concurrencyLimit" , async ( ) => {
96
+ it ( ' should drop new export requests when already sending at concurrencyLimit' , async ( ) => {
97
97
const spans = [ Object . assign ( { } , mockedReadableSpan ) ] ;
98
98
const numToExport = concurrencyLimit + 5 ;
99
99
100
100
for ( let i = 0 ; i < numToExport ; ++ i ) {
101
101
exporter . export ( spans , ( ) => { } ) ;
102
102
}
103
103
104
- assert . strictEqual ( exporter [ " _sendingPromises" ] . length , concurrencyLimit ) ;
105
- const promisesAllDone = Promise . all ( exporter [ " _sendingPromises" ] ) ;
104
+ assert . strictEqual ( exporter [ ' _sendingPromises' ] . length , concurrencyLimit ) ;
105
+ const promisesAllDone = Promise . all ( exporter [ ' _sendingPromises' ] ) ;
106
106
// Mock that all requests finish sending
107
107
exporter . sendCallbacks . forEach ( ( { onSuccess } ) => onSuccess ( ) ) ;
108
108
109
109
// All finished promises should be popped off
110
110
await promisesAllDone ;
111
- assert . strictEqual ( exporter [ " _sendingPromises" ] . length , 0 ) ;
111
+ assert . strictEqual ( exporter [ ' _sendingPromises' ] . length , 0 ) ;
112
112
} ) ;
113
113
114
- it ( " should pop export request promises even if they failed" , async ( ) => {
114
+ it ( ' should pop export request promises even if they failed' , async ( ) => {
115
115
const spans = [ Object . assign ( { } , mockedReadableSpan ) ] ;
116
116
117
117
exporter . export ( spans , ( ) => { } ) ;
118
- assert . strictEqual ( exporter [ " _sendingPromises" ] . length , 1 ) ;
119
- const promisesAllDone = Promise . all ( exporter [ " _sendingPromises" ] ) ;
118
+ assert . strictEqual ( exporter [ ' _sendingPromises' ] . length , 1 ) ;
119
+ const promisesAllDone = Promise . all ( exporter [ ' _sendingPromises' ] ) ;
120
120
// Mock that all requests fail sending
121
121
exporter . sendCallbacks . forEach ( ( { onError } ) =>
122
- onError ( new Error ( " Failed to send!!" ) )
122
+ onError ( new Error ( ' Failed to send!!' ) )
123
123
) ;
124
124
125
125
// All finished promises should be popped off
126
126
await promisesAllDone ;
127
- assert . strictEqual ( exporter [ " _sendingPromises" ] . length , 0 ) ;
127
+ assert . strictEqual ( exporter [ ' _sendingPromises' ] . length , 0 ) ;
128
128
} ) ;
129
129
130
- it ( " should pop export request promises even if success callback throws error" , async ( ) => {
130
+ it ( ' should pop export request promises even if success callback throws error' , async ( ) => {
131
131
const spans = [ Object . assign ( { } , mockedReadableSpan ) ] ;
132
132
133
- exporter [ " _sendPromise" ] (
133
+ exporter [ ' _sendPromise' ] (
134
134
spans ,
135
135
( ) => {
136
- throw new Error ( " Oops" ) ;
136
+ throw new Error ( ' Oops' ) ;
137
137
} ,
138
138
( ) => { }
139
139
) ;
140
140
141
- assert . strictEqual ( exporter [ " _sendingPromises" ] . length , 1 ) ;
142
- const promisesAllDone = Promise . all ( exporter [ " _sendingPromises" ] )
141
+ assert . strictEqual ( exporter [ ' _sendingPromises' ] . length , 1 ) ;
142
+ const promisesAllDone = Promise . all ( exporter [ ' _sendingPromises' ] )
143
143
// catch expected unhandled exception
144
144
. catch ( ( ) => { } ) ;
145
145
@@ -150,7 +150,7 @@ describe("CollectorExporterNodeBase", () => {
150
150
151
151
// All finished promises should be popped off
152
152
await promisesAllDone ;
153
- assert . strictEqual ( exporter [ " _sendingPromises" ] . length , 0 ) ;
153
+ assert . strictEqual ( exporter [ ' _sendingPromises' ] . length , 0 ) ;
154
154
} ) ;
155
155
} ) ;
156
156
} ) ;
0 commit comments