Skip to content

Commit 600f91a

Browse files
committed
Added unit test cases
1 parent d1ca7d1 commit 600f91a

File tree

1 file changed

+64
-0
lines changed
  • plugins/amazonq/chat/jetbrains-community/tst/software/aws/toolkits/jetbrains/services/amazonq/lsp/artifacts

1 file changed

+64
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
// Copyright 2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
2+
// SPDX-License-Identifier: Apache-2.0
3+
4+
package software.aws.toolkits.jetbrains.services.amazonq.lsp.artifacts
5+
6+
7+
import io.mockk.every
8+
import io.mockk.spyk
9+
import io.mockk.verify
10+
import org.junit.jupiter.api.Assertions.assertEquals
11+
import org.junit.jupiter.api.BeforeEach
12+
import org.junit.jupiter.api.Test
13+
import software.aws.toolkits.jetbrains.services.amazonq.project.manifest.ManifestManager
14+
15+
class ManifestFetcherTest {
16+
17+
private lateinit var manifestFetcher: ManifestFetcher
18+
private lateinit var manifest: ManifestManager.Manifest
19+
20+
@BeforeEach
21+
fun setup() {
22+
manifestFetcher = ManifestFetcher()
23+
manifest = ManifestManager.Manifest()
24+
}
25+
26+
27+
@Test
28+
fun `should return null when both local and remote manifests are null`() {
29+
30+
val fetchLocalManifestMock = spyk<ManifestFetcher>(recordPrivateCalls = true)
31+
32+
every { fetchLocalManifestMock["fetchManifestFromLocal"]() } returns null
33+
every { fetchLocalManifestMock["fetchManifestFromRemote"]() } returns null
34+
35+
assertEquals(fetchLocalManifestMock.fetch(), null)
36+
verify { fetchLocalManifestMock["fetchManifestFromLocal"]() }
37+
verify { fetchLocalManifestMock["fetchManifestFromRemote"]() }
38+
}
39+
40+
@Test
41+
fun `should return valid result from local should not execute remote method`() {
42+
43+
val fetchLocalManifestMock = spyk<ManifestFetcher>(recordPrivateCalls = true)
44+
45+
every { fetchLocalManifestMock["fetchManifestFromLocal"]() } returns manifest
46+
every { fetchLocalManifestMock["fetchManifestFromRemote"]() } returns null
47+
48+
assertEquals(fetchLocalManifestMock.fetch(), manifest)
49+
verify { fetchLocalManifestMock["fetchManifestFromLocal"]() }
50+
}
51+
52+
@Test
53+
fun `should return valid result from remote`() {
54+
55+
val fetchLocalManifestMock = spyk<ManifestFetcher>(recordPrivateCalls = true)
56+
57+
every { fetchLocalManifestMock["fetchManifestFromLocal"]() } returns null
58+
every { fetchLocalManifestMock["fetchManifestFromRemote"]() } returns manifest
59+
60+
assertEquals(fetchLocalManifestMock.fetch(), manifest)
61+
verify { fetchLocalManifestMock["fetchManifestFromLocal"]() }
62+
verify { fetchLocalManifestMock["fetchManifestFromRemote"]() }
63+
}
64+
}

0 commit comments

Comments
 (0)