Skip to content

Commit e96695b

Browse files
committed
fixup! manual things
1 parent 82b41bb commit e96695b

File tree

214 files changed

+1780
-1446
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

214 files changed

+1780
-1446
lines changed

integration-tests/appsec/graphql.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,8 @@ describe('graphql', () => {
4545
assert.strictEqual(payload[1][0].name, 'web.request')
4646
assert.strictEqual(payload[1][0].metrics['_dd.appsec.enabled'], 1)
4747
assert.ok(Object.hasOwn(payload[1][0].metrics, '_dd.appsec.waf.duration'))
48-
assert.ok(!Object.hasOwn(payload[1][0].meta, '_dd.appsec.event'))
49-
assert.ok(!Object.hasOwn(payload[1][0].meta, '_dd.appsec.json'))
48+
assert.ok(!('_dd.appsec.event' in payload[1][0].meta))
49+
assert.ok(!('_dd.appsec.json' in payload[1][0].meta))
5050
})
5151

5252
await axios({

integration-tests/appsec/iast-esbuild.spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ describe('esbuild support for IAST', () => {
5454
return agent.assertMessageReceived(({ payload }) => {
5555
const spans = payload.flatMap(p => p.filter(span => span.name === 'express.request'))
5656
spans.forEach(span => {
57-
assert.ok(!Object.hasOwn(span.meta, '_dd.iast.json'))
57+
assert.ok(!('_dd.iast.json' in span.meta))
5858
})
5959
}, null, 1, true)
6060
}

integration-tests/appsec/iast-stack-traces-with-sourcemaps.spec.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,13 @@ describe('IAST stack traces and vulnerabilities with sourcemaps', () => {
4949
it('should detect correct stack trace in unnamed function', async () => {
5050
const response = await axios.get('/rewritten/stack-trace-from-unnamed-function')
5151

52-
assert.ok(response.data.includes('/rewritten-routes.ts:7:13'))
52+
assert.match(response.data, /\/rewritten-routes\.ts:7:13/)
5353
})
5454

5555
it('should detect correct stack trace in named function', async () => {
5656
const response = await axios.get('/rewritten/stack-trace-from-named-function')
5757

58-
assert.ok(response.data.includes('/rewritten-routes.ts:11:13'))
58+
assert.match(response.data, /\/rewritten-routes\.ts:11:13/)
5959
})
6060

6161
it('should detect vulnerability in the correct location', async () => {
@@ -81,13 +81,13 @@ describe('IAST stack traces and vulnerabilities with sourcemaps', () => {
8181
it('should detect correct stack trace in unnamed function', async () => {
8282
const response = await axios.get('/not-rewritten/stack-trace-from-unnamed-function')
8383

84-
assert.ok(response.data.includes('/not-rewritten-routes.ts:7:13'))
84+
assert.match(response.data, /\/not-rewritten-routes\.ts:7:13/)
8585
})
8686

8787
it('should detect correct stack trace in named function', async () => {
8888
const response = await axios.get('/not-rewritten/stack-trace-from-named-function')
8989

90-
assert.ok(response.data.includes('/not-rewritten-routes.ts:11:13'))
90+
assert.match(response.data, /\/not-rewritten-routes\.ts:11:13/)
9191
})
9292

9393
it('should detect vulnerability in the correct location', async () => {

integration-tests/appsec/iast.esm-security-controls.spec.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ describe('ESM Security controls', () => {
5252
const spans = payload.flatMap(p => p.filter(span => span.name === 'express.request'))
5353
spans.forEach(span => {
5454
assert.ok(Object.hasOwn(span.meta, '_dd.iast.json'))
55-
assert.ok(span.meta['_dd.iast.json'].includes('"COMMAND_INJECTION"'))
55+
assert.match(span.meta['_dd.iast.json'], /"COMMAND_INJECTION"/)
5656
})
5757
}, null, 1, true)
5858
})
@@ -63,7 +63,7 @@ describe('ESM Security controls', () => {
6363
await agent.assertMessageReceived(({ payload }) => {
6464
const spans = payload.flatMap(p => p.filter(span => span.name === 'express.request'))
6565
spans.forEach(span => {
66-
assert.ok(!Object.hasOwn(span.meta, '_dd.iast.json'))
66+
assert.ok(!('_dd.iast.json' in span.meta))
6767
assert.ok(Object.hasOwn(span.metrics, '_dd.iast.telemetry.suppressed.vulnerabilities.command_injection'))
6868
})
6969
}, null, 1, true)
@@ -75,7 +75,7 @@ describe('ESM Security controls', () => {
7575
await agent.assertMessageReceived(({ payload }) => {
7676
const spans = payload.flatMap(p => p.filter(span => span.name === 'express.request'))
7777
spans.forEach(span => {
78-
assert.ok(!Object.hasOwn(span.meta, '_dd.iast.json'))
78+
assert.ok(!('_dd.iast.json' in span.meta))
7979
assert.ok(Object.hasOwn(span.metrics, '_dd.iast.telemetry.suppressed.vulnerabilities.command_injection'))
8080
})
8181
}, null, 1, true)
@@ -88,7 +88,7 @@ describe('ESM Security controls', () => {
8888
const spans = payload.flatMap(p => p.filter(span => span.name === 'express.request'))
8989
spans.forEach(span => {
9090
assert.ok(Object.hasOwn(span.meta, '_dd.iast.json'))
91-
assert.ok(span.meta['_dd.iast.json'].includes('"COMMAND_INJECTION"'))
91+
assert.match(span.meta['_dd.iast.json'], /"COMMAND_INJECTION"/)
9292
})
9393
}, null, 1, true)
9494
})
@@ -99,7 +99,7 @@ describe('ESM Security controls', () => {
9999
await agent.assertMessageReceived(({ payload }) => {
100100
const spans = payload.flatMap(p => p.filter(span => span.name === 'express.request'))
101101
spans.forEach(span => {
102-
assert.ok(!Object.hasOwn(span.meta, '_dd.iast.json'))
102+
assert.ok(!('_dd.iast.json' in span.meta))
103103
assert.ok(Object.hasOwn(span.metrics, '_dd.iast.telemetry.suppressed.vulnerabilities.command_injection'))
104104
})
105105
}, null, 1, true)
@@ -111,7 +111,7 @@ describe('ESM Security controls', () => {
111111
await agent.assertMessageReceived(({ payload }) => {
112112
const spans = payload.flatMap(p => p.filter(span => span.name === 'express.request'))
113113
spans.forEach(span => {
114-
assert.ok(!Object.hasOwn(span.meta, '_dd.iast.json'))
114+
assert.ok(!('_dd.iast.json' in span.meta))
115115
assert.ok(Object.hasOwn(span.metrics, '_dd.iast.telemetry.suppressed.vulnerabilities.command_injection'))
116116
})
117117
}, null, 1, true)

integration-tests/appsec/iast.esm.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ describe('ESM', () => {
6565
await agent.assertMessageReceived(({ payload }) => {
6666
verifySpan(payload, span => {
6767
assert.ok(Object.hasOwn(span.meta, '_dd.iast.json'))
68-
assert.ok(span.meta['_dd.iast.json'].includes('"COMMAND_INJECTION"'))
68+
assert.match(span.meta['_dd.iast.json'], /"COMMAND_INJECTION"/)
6969
})
7070
}, null, 1, true)
7171
})
@@ -76,7 +76,7 @@ describe('ESM', () => {
7676
await agent.assertMessageReceived(({ payload }) => {
7777
verifySpan(payload, span => {
7878
assert.ok(Object.hasOwn(span.meta, '_dd.iast.json'))
79-
assert.ok(span.meta['_dd.iast.json'].includes('"COMMAND_INJECTION"'))
79+
assert.match(span.meta['_dd.iast.json'], /"COMMAND_INJECTION"/)
8080
})
8181
}, null, 1, true)
8282
})

integration-tests/appsec/index.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ describe('RASP', () => {
5151
async function assertExploitDetected () {
5252
await agent.assertMessageReceived(({ headers, payload }) => {
5353
assert.ok(Object.hasOwn(payload[0][0].meta, '_dd.appsec.json'))
54-
assert.ok(payload[0][0].meta['_dd.appsec.json'].includes('"test-rule-id-2"'))
54+
assert.match(payload[0][0].meta['_dd.appsec.json'], /"test-rule-id-2"/)
5555
})
5656
}
5757

@@ -400,7 +400,7 @@ describe('RASP', () => {
400400
}
401401

402402
await agent.assertMessageReceived(({ headers, payload }) => {
403-
assert.ok(!Object.hasOwn(payload[0][0].meta_struct, 'http.request.body'))
403+
assert.ok(!('http.request.body' in payload[0][0].meta_struct))
404404
})
405405
}
406406
})

integration-tests/appsec/standalone-asm.spec.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ describe('Standalone ASM', () => {
3131
}
3232

3333
function assertDrop ({ meta, metrics }) {
34-
assert.ok(!Object.hasOwn(meta, '_dd.p.ts'))
34+
assert.ok(!('_dd.p.ts' in meta))
3535

3636
assert.strictEqual(metrics._sampling_priority_v1, AUTO_REJECT)
3737
assert.strictEqual(metrics['_dd.apm.enabled'], 0)
@@ -96,8 +96,8 @@ describe('Standalone ASM', () => {
9696
assert.strictEqual(fifthReq.length, 3)
9797

9898
const { meta, metrics } = fifthReq[0]
99-
assert.ok(!Object.hasOwn(meta, 'manual.keep'))
100-
assert.ok(!Object.hasOwn(meta, '_dd.p.ts'))
99+
assert.ok(!('manual.keep' in meta))
100+
assert.ok(!('_dd.p.ts' in meta))
101101

102102
assert.strictEqual(metrics._sampling_priority_v1, AUTO_KEEP)
103103
assert.strictEqual(metrics['_dd.apm.enabled'], 0)
@@ -232,7 +232,7 @@ describe('Standalone ASM', () => {
232232

233233
const innerReq = payload.find(p => p[0].resource === 'GET /down')
234234
assert.notStrictEqual(innerReq, undefined)
235-
assert.ok(!Object.hasOwn(innerReq[0].meta, '_dd.p.other'))
235+
assert.ok(!('_dd.p.other' in innerReq[0].meta))
236236
}, undefined, undefined, true)
237237
})
238238

@@ -323,7 +323,7 @@ describe('Standalone ASM', () => {
323323
it('should not add standalone related tags in iast events', () => {
324324
const url = proc.url + '/vulnerableHash'
325325
return curlAndAssertMessage(agent, url, ({ headers, payload }) => {
326-
assert.ok(!Object.hasOwn(headers, 'datadog-client-computed-stats'))
326+
assert.ok(!('datadog-client-computed-stats' in headers))
327327
assert.ok(Array.isArray(payload))
328328
assert.strictEqual(payload.length, 1)
329329
assert.ok(Array.isArray(payload[0]))
@@ -334,16 +334,16 @@ describe('Standalone ASM', () => {
334334
const { meta, metrics } = payload[0][0]
335335
assert.ok(Object.hasOwn(meta, '_dd.iast.json')) // WEAK_HASH and XCONTENTTYPE_HEADER_MISSING reported
336336

337-
assert.ok(!Object.hasOwn(meta, '_dd.p.ts'))
338-
assert.ok(!Object.hasOwn(metrics, '_dd.apm.enabled'))
337+
assert.ok(!('_dd.p.ts' in meta))
338+
assert.ok(!('_dd.apm.enabled' in metrics))
339339
})
340340
})
341341

342342
it('should not add standalone related tags in appsec events', () => {
343343
const urlAttack = proc.url + '?query=1 or 1=1'
344344

345345
return curlAndAssertMessage(agent, urlAttack, ({ headers, payload }) => {
346-
assert.ok(!Object.hasOwn(headers, 'datadog-client-computed-stats'))
346+
assert.ok(!('datadog-client-computed-stats' in headers))
347347
assert.ok(Array.isArray(payload))
348348
assert.strictEqual(payload.length, 1)
349349
assert.ok(Array.isArray(payload[0]))
@@ -354,8 +354,8 @@ describe('Standalone ASM', () => {
354354
const { meta, metrics } = payload[0][0]
355355
assert.ok(Object.hasOwn(meta, '_dd.appsec.json')) // crs-942-100 triggered
356356

357-
assert.ok(!Object.hasOwn(meta, '_dd.p.ts'))
358-
assert.ok(!Object.hasOwn(metrics, '_dd.apm.enabled'))
357+
assert.ok(!('_dd.p.ts' in meta))
358+
assert.ok(!('_dd.apm.enabled' in metrics))
359359
})
360360
})
361361
})

integration-tests/ci-visibility/automatic-log-submission-cucumber/support/steps.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
'use strict'
22

3-
const assert = require('node:assert/strict')
3+
const assert = require('assert')
44

55
const { When, Then } = require('@cucumber/cucumber')
66

integration-tests/ci-visibility/automatic-log-submission.spec.js

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
'use strict'
22

3+
const assert = require('assert')
34
const { exec, execSync } = require('child_process')
45
const { once } = require('events')
56

6-
const { assert } = require('chai')
7-
87
const {
98
sandboxCwd,
109
useSandbox,
1110
getCiVisAgentlessConfig,
12-
getCiVisEvpProxyConfig
11+
getCiVisEvpProxyConfig,
12+
assertObjectContains
1313
} = require('../helpers')
1414
const { FakeCiVisIntake } = require('../ci-visibility-intake')
1515
const webAppServer = require('./web-app-server')
@@ -99,10 +99,10 @@ describe('test optimization automatic log submission', () => {
9999
logMessages.forEach(({ dd, level }) => {
100100
assert.equal(level, 'info')
101101
assert.equal(dd.service, 'my-service')
102-
assert.hasAllKeys(dd, ['trace_id', 'span_id', 'service'])
102+
assert.deepStrictEqual(['service', 'span_id', 'trace_id'], Object.keys(dd).sort())
103103
})
104104

105-
assert.includeMembers(logMessages.map(({ message }) => message), [
105+
assertObjectContains(logMessages.map(({ message }) => message), [
106106
'Hello simple log!',
107107
'sum function being called'
108108
])
@@ -155,15 +155,15 @@ describe('test optimization automatic log submission', () => {
155155

156156
const { logSpanId, logTraceId } = logIds
157157
const { testSpanId, testTraceId } = testIds
158-
assert.include(testOutput, 'Hello simple log!')
159-
assert.include(testOutput, 'sum function being called')
158+
assert.match(testOutput, /Hello simple log!/)
159+
assert.match(testOutput, /sum function being called/)
160160
// cucumber has `cucumber.step`, and that's the active span, not the test.
161161
// logs are queried by trace id, so it should be OK
162162
if (name !== 'cucumber') {
163-
assert.include(testOutput, `"span_id":"${testSpanId}"`)
163+
assert.match(testOutput, new RegExp(`"span_id":"${testSpanId}"`))
164164
assert.equal(logSpanId, testSpanId)
165165
}
166-
assert.include(testOutput, `"trace_id":"${testTraceId}"`)
166+
assert.match(testOutput, new RegExp(`"trace_id":"${testTraceId}"`))
167167
assert.equal(logTraceId, testTraceId)
168168
})
169169

@@ -200,9 +200,9 @@ describe('test optimization automatic log submission', () => {
200200
logsPromise,
201201
])
202202

203-
assert.include(testOutput, 'Hello simple log!')
204-
assert.include(testOutput, 'span_id')
205-
assert.isFalse(hasReceivedEvents)
203+
assert.match(testOutput, /Hello simple log!/)
204+
assert.match(testOutput, /span_id/)
205+
assert.strictEqual(hasReceivedEvents, false)
206206
})
207207

208208
it('does not submit logs when DD_AGENTLESS_LOG_SUBMISSION_ENABLED is set but DD_API_KEY is not', async () => {
@@ -236,8 +236,8 @@ describe('test optimization automatic log submission', () => {
236236
once(childProcess.stderr, 'end'),
237237
])
238238

239-
assert.include(testOutput, 'Hello simple log!')
240-
assert.include(testOutput, 'no automatic log submission will be performed')
239+
assert.match(testOutput, /Hello simple log!/)
240+
assert.match(testOutput, /no automatic log submission will be performed/)
241241
})
242242
})
243243
})

integration-tests/ci-visibility/automatic-log-submission/automatic-log-submission-test.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
'use strict'
22

3-
const assert = require('node:assert/strict')
3+
const assert = require('assert')
44

55
const logger = require('./logger')
66
const sum = require('./sum')

0 commit comments

Comments
 (0)