Skip to content

Commit f6ad0b3

Browse files
committed
add unit tests for consoleLinksUtils
1 parent cf40d39 commit f6ad0b3

File tree

1 file changed

+52
-0
lines changed

1 file changed

+52
-0
lines changed
Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
/*!
2+
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3+
* SPDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
import * as assert from 'assert'
7+
import { arnToConsoleUrl, arnToConsoleTabUrl, operationIdToConsoleUrl } from '../../../awsService/cloudformation/consoleLinksUtils'
8+
9+
describe('consoleLinksUtils', () => {
10+
const testArn = 'arn:aws:cloudformation:us-west-2:123456789012:stack/test-stack/abc-123'
11+
12+
describe('arnToConsoleUrl', () => {
13+
it('should generate correct console URL', () => {
14+
const url = arnToConsoleUrl(testArn)
15+
assert.strictEqual(url, 'https://console.aws.amazon.com/go/view?arn=arn%3Aaws%3Acloudformation%3Aus-west-2%3A123456789012%3Astack%2Ftest-stack%2Fabc-123')
16+
})
17+
})
18+
19+
describe('arnToConsoleTabUrl', () => {
20+
it('should generate correct events tab URL', () => {
21+
const url = arnToConsoleTabUrl(testArn, 'events')
22+
assert.strictEqual(url, 'https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks/events?stackId=arn%3Aaws%3Acloudformation%3Aus-west-2%3A123456789012%3Astack%2Ftest-stack%2Fabc-123')
23+
})
24+
25+
it('should generate correct resources tab URL', () => {
26+
const url = arnToConsoleTabUrl(testArn, 'resources')
27+
assert.strictEqual(url, 'https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks/resources?stackId=arn%3Aaws%3Acloudformation%3Aus-west-2%3A123456789012%3Astack%2Ftest-stack%2Fabc-123')
28+
})
29+
30+
it('should generate correct outputs tab URL', () => {
31+
const url = arnToConsoleTabUrl(testArn, 'outputs')
32+
assert.strictEqual(url, 'https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks/outputs?stackId=arn%3Aaws%3Acloudformation%3Aus-west-2%3A123456789012%3Astack%2Ftest-stack%2Fabc-123')
33+
})
34+
})
35+
36+
describe('operationIdToConsoleUrl', () => {
37+
it('should generate correct operation details URL', () => {
38+
const operationId = '056a1310-6307-466a-a167-2cbbd353b29f'
39+
const url = operationIdToConsoleUrl(testArn, operationId)
40+
assert.strictEqual(url, 'https://us-west-2.console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks/operations/info?stackId=arn%3Aaws%3Acloudformation%3Aus-west-2%3A123456789012%3Astack%2Ftest-stack%2Fabc-123&operationId=056a1310-6307-466a-a167-2cbbd353b29f')
41+
})
42+
43+
it('should handle different regions', () => {
44+
const euArn = 'arn:aws:cloudformation:eu-west-1:123456789012:stack/test-stack/abc-123'
45+
const operationId = 'op-456'
46+
const url = operationIdToConsoleUrl(euArn, operationId)
47+
assert.ok(url.includes('eu-west-1.console.aws.amazon.com'))
48+
assert.ok(url.includes('region=eu-west-1'))
49+
assert.ok(url.includes('operationId=op-456'))
50+
})
51+
})
52+
})

0 commit comments

Comments
 (0)