From 10fc12092fa8360eb5749fdf5d278009849e4b0b Mon Sep 17 00:00:00 2001 From: Kasper Borg Nissen Date: Tue, 13 May 2025 10:03:30 +0200 Subject: [PATCH] feat(test-utils): add assertion helper for faas resources Signed-off-by: Kasper Borg Nissen --- .../src/resource-assertions.ts | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/packages/opentelemetry-test-utils/src/resource-assertions.ts b/packages/opentelemetry-test-utils/src/resource-assertions.ts index 51b1419187..ed7a2c46ef 100644 --- a/packages/opentelemetry-test-utils/src/resource-assertions.ts +++ b/packages/opentelemetry-test-utils/src/resource-assertions.ts @@ -26,6 +26,9 @@ import { SEMRESATTRS_CONTAINER_IMAGE_NAME, SEMRESATTRS_CONTAINER_IMAGE_TAG, SEMRESATTRS_CONTAINER_NAME, + SEMRESATTRS_FAAS_INSTANCE, + SEMRESATTRS_FAAS_NAME, + SEMRESATTRS_FAAS_VERSION, SEMRESATTRS_HOST_ID, SEMRESATTRS_HOST_IMAGE_ID, SEMRESATTRS_HOST_IMAGE_NAME, @@ -326,6 +329,40 @@ export const assertProcessResource = ( } }; +/** + * Test utility method to validate a faas resource + * + * @param resource the Resource to validate + * @param validations validations for the resource attributes + */ +export const assertFaasResource = ( + resource: Resource, + validations: { + name?: string; + instance?: string; + version?: string; + } +) => { + if (validations.name) { + assert.strictEqual( + resource.attributes[SEMRESATTRS_FAAS_NAME], + validations.name + ); + } + if (validations.instance) { + assert.strictEqual( + resource.attributes[SEMRESATTRS_FAAS_INSTANCE], + validations.instance + ); + } + if (validations.version) { + assert.strictEqual( + resource.attributes[SEMRESATTRS_FAAS_VERSION], + validations.version + ); + } +}; + /** * Test utility method to validate an empty resource *