|
1 | 1 | package io.snyk.languageserver; |
2 | 2 |
|
3 | | -import io.snyk.eclipse.plugin.Activator; |
4 | | -import io.snyk.eclipse.plugin.properties.preferences.Preferences; |
5 | | -import io.snyk.eclipse.plugin.properties.preferences.PreferencesUtils; |
| 3 | +import static org.junit.jupiter.api.Assertions.assertArrayEquals; |
| 4 | +//import static org.junit.Assert.assertArrayEquals; |
| 5 | +import static org.junit.jupiter.api.Assertions.assertEquals; |
| 6 | +import static org.mockito.Mockito.mock; |
| 7 | +import static org.mockito.Mockito.when; |
| 8 | + |
| 9 | +import org.apache.commons.lang3.SystemUtils; |
| 10 | +import org.eclipse.core.runtime.Platform; |
6 | 11 | import org.junit.jupiter.api.BeforeEach; |
7 | 12 | import org.junit.jupiter.api.Test; |
8 | 13 | import org.mockito.MockedStatic; |
9 | 14 | import org.mockito.Mockito; |
10 | 15 | import org.osgi.framework.Bundle; |
11 | 16 | import org.osgi.framework.Version; |
12 | 17 |
|
13 | | -import static org.junit.jupiter.api.Assertions.assertEquals; |
14 | | -import static org.mockito.Mockito.mock; |
15 | | -import static org.mockito.Mockito.when; |
16 | | - |
17 | | -import org.apache.commons.lang3.SystemUtils; |
18 | | -import org.eclipse.core.runtime.Platform; |
| 18 | +import io.snyk.eclipse.plugin.Activator; |
| 19 | +import io.snyk.eclipse.plugin.properties.preferences.Preferences; |
| 20 | +import io.snyk.eclipse.plugin.properties.preferences.PreferencesUtils; |
| 21 | +import io.snyk.languageserver.download.LsBinaries; |
19 | 22 |
|
20 | 23 | class LsConfigurationUpdaterTest { |
21 | | - private Preferences preferenceMock; |
| 24 | + private Preferences preferenceMock; |
| 25 | + |
| 26 | + @BeforeEach |
| 27 | + protected void setUp() { |
| 28 | + preferenceMock = mock(Preferences.class); |
| 29 | + PreferencesUtils.setPreferences(preferenceMock); |
| 30 | + } |
22 | 31 |
|
23 | | - @BeforeEach |
24 | | - protected void setUp() { |
25 | | - preferenceMock = mock(Preferences.class); |
26 | | - PreferencesUtils.setPreferences(preferenceMock); |
27 | | - } |
| 32 | + @Test |
| 33 | + void testGetSettings() { |
| 34 | + setupPreferenceMock(); |
28 | 35 |
|
29 | | - @Test |
30 | | - void testGetSettings() { |
31 | | - setupPreferenceMock(); |
| 36 | + try (MockedStatic<Platform> platformMockedStatic = Mockito.mockStatic(Platform.class)) { |
| 37 | + var bundleMock = mock(Bundle.class); |
| 38 | + when(bundleMock.getVersion()).thenReturn(new Version("1.2.3")); |
| 39 | + platformMockedStatic.when(() -> Platform.getBundle(Activator.PLUGIN_ID)).thenReturn(bundleMock); |
| 40 | + var settings = new LsConfigurationUpdater().getCurrentSettings(); |
32 | 41 |
|
33 | | - try (MockedStatic<Platform> platformMockedStatic = Mockito.mockStatic(Platform.class)) { |
34 | | - var bundleMock = mock(Bundle.class); |
35 | | - when(bundleMock.getVersion()).thenReturn(new Version("1.2.3")); |
36 | | - platformMockedStatic.when(() -> Platform.getBundle(Activator.PLUGIN_ID)).thenReturn(bundleMock); |
37 | | - var settings = new LsConfigurationUpdater().getCurrentSettings(); |
| 42 | + assertEquals("iac", settings.getActivateSnykIac()); |
| 43 | + assertEquals("code", settings.getActivateSnykCodeSecurity()); |
| 44 | + assertEquals("oss", settings.getActivateSnykOpenSource()); |
| 45 | + assertEquals("true", settings.getInsecure()); |
| 46 | + assertEquals("endpoint", settings.getEndpoint()); |
| 47 | + assertEquals("addParams", settings.getAdditionalParams()); |
| 48 | + assertEquals("a=b;c=d", settings.getAdditionalEnv()); |
| 49 | + assertEquals("path", settings.getPath()); |
| 50 | + assertEquals("true", settings.getSendErrorReports()); |
| 51 | + assertEquals("organization", settings.getOrganization()); |
| 52 | + assertEquals("true", settings.getEnableTelemetry()); |
| 53 | + assertEquals("true", settings.getManageBinariesAutomatically()); |
| 54 | + assertEquals("/usr/local/bin/snyk", settings.getCliPath()); |
| 55 | + assertEquals("ECLIPSE", settings.getIntegrationName()); |
| 56 | + assertEquals(Activator.PLUGIN_VERSION, settings.getIntegrationVersion()); |
| 57 | + assertEquals("false", settings.getAutomaticAuthentication()); |
| 58 | + assertEquals(SystemUtils.JAVA_RUNTIME_NAME, settings.getRuntimeName()); |
| 59 | + assertEquals(SystemUtils.JAVA_RUNTIME_VERSION, settings.getRuntimeVersion()); |
| 60 | + assertEquals(SystemUtils.OS_ARCH, settings.getOsArch()); |
| 61 | + assertEquals(SystemUtils.OS_NAME, settings.getOsPlatform()); |
38 | 62 |
|
39 | | - assertEquals("iac", settings.getActivateSnykIac()); |
40 | | - assertEquals("code", settings.getActivateSnykCodeSecurity()); |
41 | | - assertEquals("oss", settings.getActivateSnykOpenSource()); |
42 | | - assertEquals("true", settings.getInsecure()); |
43 | | - assertEquals("endpoint", settings.getEndpoint()); |
44 | | - assertEquals("addParams", settings.getAdditionalParams()); |
45 | | - assertEquals("a=b;c=d", settings.getAdditionalEnv()); |
46 | | - assertEquals("path", settings.getPath()); |
47 | | - assertEquals("true", settings.getSendErrorReports()); |
48 | | - assertEquals("organization", settings.getOrganization()); |
49 | | - assertEquals("true", settings.getEnableTelemetry()); |
50 | | - assertEquals("true", settings.getManageBinariesAutomatically()); |
51 | | - assertEquals("/path", settings.getCliPath()); |
52 | | - assertEquals("ECLIPSE", settings.getIntegrationName()); |
53 | | - assertEquals(Activator.PLUGIN_VERSION, settings.getIntegrationVersion()); |
54 | | - assertEquals("false", settings.getAutomaticAuthentication()); |
55 | | - assertEquals(SystemUtils.JAVA_RUNTIME_NAME, settings.getRuntimeName()); |
56 | | - assertEquals(SystemUtils.JAVA_RUNTIME_VERSION, settings.getRuntimeVersion()); |
57 | | - assertEquals(SystemUtils.OS_ARCH, settings.getOsArch()); |
58 | | - assertEquals(SystemUtils.OS_NAME, settings.getOsPlatform()); |
59 | | - } |
60 | | - } |
| 63 | + // Additional assertions based on setupPreferenceMock |
| 64 | + assertEquals("false", settings.getActivateSnykCodeQuality()); |
| 65 | + assertEquals("/usr/local/bin/snyk", settings.getCliPath()); |
| 66 | + assertEquals("my-token", settings.getToken()); |
| 67 | + assertArrayEquals(new String[] { "/path1", "/path2" }, settings.getTrustedFolders()); |
| 68 | + assertEquals("automatic", settings.getScanningMode()); |
| 69 | + assertEquals("token", settings.getAuthenticationMethod()); |
| 70 | + assertEquals(LsBinaries.REQUIRED_LS_PROTOCOL_VERSION, settings.getRequiredProtocolVersion()); |
| 71 | + } |
| 72 | + } |
61 | 73 |
|
62 | | - private void setupPreferenceMock() { |
63 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_IAC, "true")).thenReturn("iac"); |
64 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_IAC, "false")).thenReturn("iac"); |
65 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_IAC, "")).thenReturn("iac"); |
66 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_CODE_SECURITY, "true")).thenReturn("code"); |
67 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_CODE_SECURITY, "false")).thenReturn("code"); |
68 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_CODE_SECURITY, "")).thenReturn("code"); |
69 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_OPEN_SOURCE, "true")).thenReturn("oss"); |
70 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_OPEN_SOURCE, "false")).thenReturn("oss"); |
71 | | - when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_OPEN_SOURCE, "")).thenReturn("oss"); |
72 | | - when(preferenceMock.getPref(Preferences.INSECURE_KEY, "")).thenReturn("true"); |
73 | | - when(preferenceMock.getPref(Preferences.INSECURE_KEY, "true")).thenReturn("true"); |
74 | | - when(preferenceMock.getPref(Preferences.INSECURE_KEY, "false")).thenReturn("true"); |
75 | | - when(preferenceMock.getPref(Preferences.ENDPOINT_KEY, "")).thenReturn("endpoint"); |
76 | | - when(preferenceMock.getPref(Preferences.ADDITIONAL_PARAMETERS, "")).thenReturn("addParams"); |
77 | | - when(preferenceMock.getPref(Preferences.ADDITIONAL_ENVIRONMENT, "")).thenReturn("a=b;c=d"); |
78 | | - when(preferenceMock.getPref(Preferences.PATH_KEY, "")).thenReturn("path"); |
79 | | - when(preferenceMock.getPref(Preferences.SEND_ERROR_REPORTS, "")).thenReturn("true"); |
80 | | - when(preferenceMock.getPref(Preferences.SEND_ERROR_REPORTS, "true")).thenReturn("true"); |
81 | | - when(preferenceMock.getPref(Preferences.SEND_ERROR_REPORTS, "false")).thenReturn("true"); |
82 | | - when(preferenceMock.getPref(Preferences.ENABLE_TELEMETRY, "false")).thenReturn("true"); |
83 | | - when(preferenceMock.getPref(Preferences.ENABLE_TELEMETRY, "true")).thenReturn("true"); |
84 | | - when(preferenceMock.getPref(Preferences.ENABLE_TELEMETRY, "")).thenReturn("true"); |
85 | | - when(preferenceMock.getPref(Preferences.MANAGE_BINARIES_AUTOMATICALLY, "true")).thenReturn("true"); |
86 | | - when(preferenceMock.getPref(Preferences.ORGANIZATION_KEY, "")).thenReturn("organization"); |
87 | | - when(preferenceMock.getPref(Preferences.CLI_PATH, "")).thenReturn("/path"); |
88 | | - } |
| 74 | + private void setupPreferenceMock() { |
| 75 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_IAC, "true")).thenReturn("iac"); |
| 76 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_IAC, "false")).thenReturn("iac"); |
| 77 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_IAC, "")).thenReturn("iac"); |
| 78 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_CODE_SECURITY, "true")).thenReturn("code"); |
| 79 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_CODE_SECURITY, "false")).thenReturn("code"); |
| 80 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_CODE_SECURITY, "")).thenReturn("code"); |
| 81 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_OPEN_SOURCE, "true")).thenReturn("oss"); |
| 82 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_OPEN_SOURCE, "false")).thenReturn("oss"); |
| 83 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_OPEN_SOURCE, "")).thenReturn("oss"); |
| 84 | + when(preferenceMock.getPref(Preferences.INSECURE_KEY, "")).thenReturn("true"); |
| 85 | + when(preferenceMock.getPref(Preferences.INSECURE_KEY, "true")).thenReturn("true"); |
| 86 | + when(preferenceMock.getPref(Preferences.INSECURE_KEY, "false")).thenReturn("true"); |
| 87 | + when(preferenceMock.getPref(Preferences.ENDPOINT_KEY, "")).thenReturn("endpoint"); |
| 88 | + when(preferenceMock.getPref(Preferences.ADDITIONAL_PARAMETERS, "")).thenReturn("addParams"); |
| 89 | + when(preferenceMock.getPref(Preferences.ADDITIONAL_ENVIRONMENT, "")).thenReturn("a=b;c=d"); |
| 90 | + when(preferenceMock.getPref(Preferences.PATH_KEY, "")).thenReturn("path"); |
| 91 | + when(preferenceMock.getPref(Preferences.SEND_ERROR_REPORTS, "")).thenReturn("true"); |
| 92 | + when(preferenceMock.getPref(Preferences.SEND_ERROR_REPORTS, "true")).thenReturn("true"); |
| 93 | + when(preferenceMock.getPref(Preferences.SEND_ERROR_REPORTS, "false")).thenReturn("true"); |
| 94 | + when(preferenceMock.getPref(Preferences.ENABLE_TELEMETRY, "false")).thenReturn("true"); |
| 95 | + when(preferenceMock.getPref(Preferences.ENABLE_TELEMETRY, "true")).thenReturn("true"); |
| 96 | + when(preferenceMock.getPref(Preferences.ENABLE_TELEMETRY, "")).thenReturn("true"); |
| 97 | + when(preferenceMock.getPref(Preferences.MANAGE_BINARIES_AUTOMATICALLY, "true")).thenReturn("true"); |
| 98 | + when(preferenceMock.getPref(Preferences.ORGANIZATION_KEY, "")).thenReturn("organization"); |
| 99 | + when(preferenceMock.getPref(Preferences.CLI_PATH, "")).thenReturn("/path"); |
| 100 | + when(preferenceMock.getPref(Preferences.ACTIVATE_SNYK_CODE_QUALITY, Boolean.FALSE.toString())) |
| 101 | + .thenReturn("false"); |
| 102 | + when(preferenceMock.getPref(Preferences.CLI_PATH, "")).thenReturn("/usr/local/bin/snyk"); |
| 103 | + when(preferenceMock.getPref(Preferences.AUTH_TOKEN_KEY, "")).thenReturn("my-token"); |
| 104 | + when(preferenceMock.getPref(Preferences.TRUSTED_FOLDERS)).thenReturn("/path1:/path2"); |
| 105 | + when(preferenceMock.getBooleanPref(Preferences.SCANNING_MODE_AUTOMATIC)).thenReturn(true); |
| 106 | + when(preferenceMock.getBooleanPref(Preferences.USE_TOKEN_AUTH, false)).thenReturn(true); |
| 107 | + when(preferenceMock.getPref(Preferences.FILTER_DELTA_NEW_ISSUES, Boolean.FALSE.toString())).thenReturn("true"); |
| 108 | + } |
89 | 109 | } |
0 commit comments