Skip to content

Commit 92c8117

Browse files
authored
chore(tests): updated timed tests and other code smells (#394)
* chore(tests): updated timed tests and other code smells * fix(test): removed unused import
1 parent 6beb8e1 commit 92c8117

20 files changed

Lines changed: 127 additions & 126 deletions

README.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -123,9 +123,9 @@ Create `src/main/resources/switcherapi.properties`:
123123
# Required Configuration
124124
switcher.context=com.example.MyAppFeatures
125125
switcher.url=https://api.switcherapi.com
126-
switcher.apikey=YOUR_API_KEY
127-
switcher.component=my-application
128-
switcher.domain=MY_DOMAIN
126+
switcher.apikey=[API_KEY]
127+
switcher.component=[COMPONENT_NAME]
128+
switcher.domain=[DOMAIN_NAME}
129129

130130
# Optional Configuration
131131
switcher.environment=default
@@ -188,10 +188,10 @@ public class MyAppFeatures extends SwitcherContextBase {
188188
static {
189189
configure(ContextBuilder.builder()
190190
.context(MyAppFeatures.class.getName())
191-
.apiKey("YOUR_API_KEY")
191+
.apiKey("[API_KEY]")
192192
.url("https://api.switcherapi.com")
193-
.domain("MY_DOMAIN")
194-
.component("my-application")
193+
.domain("[DOMAIN_NAME]")
194+
.component("[COMPONENT_NAME]")
195195
.environment("default"));
196196

197197
initializeClient();
@@ -337,9 +337,9 @@ Default mode that communicates directly with Switcher API.
337337
```java
338338
MyAppFeatures.configure(ContextBuilder.builder()
339339
.url("https://api.switcherapi.com")
340-
.apiKey("YOUR_API_KEY")
341-
.domain("MY_DOMAIN")
342-
.component("my-app"));
340+
.apiKey("[API_KEY]")
341+
.domain("[DOMAIN_NAME]")
342+
.component("[COMPONENT_NAME]"));
343343

344344
MyAppFeatures.initializeClient();
345345
```
@@ -382,12 +382,12 @@ switcher.forceRemote().isItOn();
382382
```java
383383
MyAppFeatures.configure(ContextBuilder.builder()
384384
.url("https://api.switcherapi.com")
385-
.apiKey("YOUR_API_KEY")
386-
.domain("MY_DOMAIN")
385+
.apiKey("[API_KEY]")
386+
.domain("[DOMAIN_NAME]")
387387
.local(true)
388388
.snapshotAutoLoad(true)
389389
.snapshotAutoUpdateInterval("30s") // Check for updates every 30 seconds
390-
.component("my-app"));
390+
.component("[COMPONENT_NAME]"));
391391

392392
MyAppFeatures.initializeClient();
393393

@@ -418,10 +418,10 @@ Here is an example - in-memory snapshot with auto-update every 30 seconds:
418418
```java
419419
MyAppFeatures.configure(ContextBuilder.builder()
420420
.context(MyAppFeatures.class.getName())
421-
.apiKey("YOUR_API_KEY")
421+
.apiKey("[API_KEY]")
422422
.url("https://api.switcherapi.com")
423-
.domain("MY_DOMAIN")
424-
.component("my-application")
423+
.domain("[DOMAIN_NAME")
424+
.component("[COMPONENT_NAME]")
425425
.silentMode("5m")
426426
.snapshotAutoUpdateInterval("30s")
427427
);

src/main/java/com/switcherapi/client/SwitcherContextBase.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,9 @@
6666
* public void configureClient() {
6767
* Features.configure(ContextBuilder.builder()
6868
* .context(Features.class.getName())
69-
* .apiKey("API_KEY")
70-
* .domain("Playground")
71-
* .component("switcher-playground")
72-
* .environment("default"));
69+
* .apiKey("[API_KEY]")
70+
* .domain("[DOMAIN_NAME]")
71+
* .component("[COMPONENT_NAME]"));
7372
*
7473
* Features.initializeClient();
7574
* }

src/test/java/com/switcherapi/client/SwitcherBasicCriteriaResponseTest.java

Lines changed: 17 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.switcherapi.client;
22

3-
import com.switcherapi.Switchers;
3+
import com.switcherapi.SwitchersBase;
44
import com.switcherapi.client.model.SwitcherBuilder;
55
import com.switcherapi.client.model.SwitcherRequest;
66
import com.switcherapi.client.model.SwitcherResult;
@@ -21,33 +21,30 @@
2121
class SwitcherBasicCriteriaResponseTest extends MockWebServerHelper {
2222

2323
private boolean authTokenGenerated = false;
24-
24+
2525
@BeforeAll
2626
static void setup() throws IOException {
2727
setupMockServer();
2828

29-
Switchers.loadProperties(); // Load default properties from resources
30-
Switchers.configure(ContextBuilder.builder() // Override default properties
29+
SwitchersBase.configure(ContextBuilder.builder(true)
30+
.context(SwitchersBase.class.getName())
3131
.url(String.format("http://localhost:%s", mockBackEnd.getPort()))
32-
.local(false)
33-
.snapshotLocation(null)
34-
.snapshotSkipValidation(false)
35-
.environment(DEFAULT_ENV)
36-
.silentMode(null)
37-
.snapshotAutoLoad(false)
38-
.snapshotAutoUpdateInterval(null));
32+
.domain("domain")
33+
.apiKey("apiKey")
34+
.component("component")
35+
.environment(DEFAULT_ENV));
3936
}
40-
37+
4138
@AfterAll
4239
static void tearDown() {
4340
tearDownMockServer();
4441
}
45-
42+
4643
@BeforeEach
4744
void resetSwitcherContextState() {
4845
((QueueDispatcher) mockBackEnd.getDispatcher()).clear();
4946

50-
Switchers.initializeClient();
47+
SwitchersBase.initializeClient();
5148
}
5249

5350
@Test
@@ -59,7 +56,7 @@ void shouldReturnCriteriaResponse() {
5956
givenResponse(generateCriteriaResponse("true", "Success"));
6057

6158
//test
62-
SwitcherRequest switcher = Switchers.getSwitcher(Switchers.REMOTE_KEY);
59+
SwitcherRequest switcher = SwitchersBase.getSwitcher(SwitchersBase.USECASE11);
6360
SwitcherResult response = switcher.submit();
6461

6562
assertTrue(response.isItOn());
@@ -75,7 +72,7 @@ void shouldReturnCriteriaResponseWithInputs() {
7572
givenResponse(generateCriteriaResponse("false", "Strategy VALUE_VALIDATION does not agree"));
7673

7774
//test
78-
SwitcherRequest switcher = Switchers.getSwitcher(Switchers.REMOTE_KEY);
75+
SwitcherRequest switcher = SwitchersBase.getSwitcher(SwitchersBase.USECASE11);
7976
SwitcherResult response = switcher
8077
.checkValue("value")
8178
.checkNumeric("10")
@@ -87,8 +84,8 @@ void shouldReturnCriteriaResponseWithInputs() {
8784

8885
@Test
8986
void shouldFlushStrategyInputs() {
90-
SwitcherBuilder switcherBuilder = Switchers
91-
.getSwitcher(Switchers.REMOTE_KEY)
87+
SwitcherBuilder switcherBuilder = SwitchersBase
88+
.getSwitcher(SwitchersBase.USECASE11)
9289
.checkValue("value")
9390
.checkNumeric("10");
9491

@@ -111,7 +108,7 @@ void shouldReturnCriteriaResponseWithMetadata() {
111108
givenResponse(generateCriteriaResponse(new MetadataSample("123")));
112109

113110
//test
114-
SwitcherRequest switcher = Switchers.getSwitcher(Switchers.REMOTE_KEY);
111+
SwitcherRequest switcher = SwitchersBase.getSwitcher(SwitchersBase.USECASE11);
115112
SwitcherResult response = switcher.submit();
116113

117114
assertEquals("123", response.getMetadata(MetadataSample.class).getTransactionId());
@@ -126,7 +123,7 @@ void shouldReturnCriteriaResponseWithWrongMetadata() {
126123
givenResponse(generateCriteriaResponse(new MetadataErrorSample("123")));
127124

128125
//test
129-
SwitcherRequest switcher = Switchers.getSwitcher(Switchers.REMOTE_KEY);
126+
SwitcherRequest switcher = SwitchersBase.getSwitcher(SwitchersBase.USECASE11);
130127
SwitcherResult response = switcher.submit();
131128

132129
assertNotNull(response.getMetadata(MetadataSample.class));

src/test/java/com/switcherapi/client/SwitcherBasicTest.java

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.switcherapi.client;
22

3-
import com.switcherapi.Switchers;
3+
import com.switcherapi.SwitchersBase;
44
import com.switcherapi.client.model.SwitcherRequest;
55
import com.switcherapi.fixture.MockWebServerHelper;
66
import mockwebserver3.QueueDispatcher;
@@ -22,17 +22,14 @@ class SwitcherBasicTest extends MockWebServerHelper {
2222
@BeforeAll
2323
static void setup() throws IOException {
2424
setupMockServer();
25-
26-
Switchers.loadProperties(); // Load default properties from resources
27-
Switchers.configure(ContextBuilder.builder() // Override default properties
25+
26+
SwitchersBase.configure(ContextBuilder.builder(true)
27+
.context(SwitchersBase.class.getName())
2828
.url(String.format("http://localhost:%s", mockBackEnd.getPort()))
29-
.local(false)
30-
.snapshotLocation(null)
31-
.snapshotSkipValidation(false)
32-
.environment(DEFAULT_ENV)
33-
.silentMode(null)
34-
.snapshotAutoLoad(false)
35-
.snapshotAutoUpdateInterval(null));
29+
.domain("domain")
30+
.apiKey("apiKey")
31+
.component("component")
32+
.environment(DEFAULT_ENV));
3633
}
3734

3835
@AfterAll
@@ -44,7 +41,7 @@ static void tearDown() {
4441
void resetSwitcherContextState() {
4542
((QueueDispatcher) mockBackEnd.getDispatcher()).clear();
4643

47-
Switchers.initializeClient();
44+
SwitchersBase.initializeClient();
4845
}
4946

5047
@Test
@@ -56,7 +53,7 @@ void shouldReturnTrue() {
5653
givenResponse(generateCriteriaResponse("true", false));
5754

5855
//test
59-
SwitcherRequest switcher = Switchers.getSwitcher(Switchers.REMOTE_KEY);
56+
SwitcherRequest switcher = SwitchersBase.getSwitcher(SwitchersBase.USECASE11);
6057
assertTrue(switcher.isItOn());
6158
}
6259

@@ -69,7 +66,7 @@ void shouldReturnFalse() {
6966
givenResponse(generateCriteriaResponse("false", false));
7067

7168
//test
72-
SwitcherRequest switcher = Switchers.getSwitcher(Switchers.REMOTE_KEY);
69+
SwitcherRequest switcher = SwitchersBase.getSwitcher(SwitchersBase.USECASE11);
7370
assertFalse(switcher.isItOn());
7471
}
7572

src/test/java/com/switcherapi/client/SwitcherConfigNativeTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ void shouldUseNativeContextFromProperties() {
5656
assertTrue(SwitchersBaseNative.getSwitcher(SwitchersBaseNative.USECASE11).isItOn());
5757
assertEquals("switcher-client", context.component);
5858
assertEquals("switcher-domain", context.domain);
59-
assertEquals("[API_KEY]", context.apikey);
59+
assertEquals("apiKey", context.apikey);
6060
assertEquals("http://localhost:3000", context.url);
6161
assertEquals("fixture1", context.environment);
6262
}

src/test/java/com/switcherapi/client/SwitcherContextBuilderTest.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,9 @@ void shouldReturnSuccess() {
2424
configure(ContextBuilder.builder(true)
2525
.context(SwitchersBase.class.getName())
2626
.url("http://localhost:3000")
27-
.apiKey("API_KEY")
28-
.domain("switcher-domain")
29-
.component("switcher-client")
27+
.apiKey("apiKey")
28+
.domain("domain")
29+
.component("component")
3030
.environment(DEFAULT_ENV)
3131
.snapshotLocation(SNAPSHOTS_LOCAL)
3232
.local(true));
@@ -44,9 +44,9 @@ void shouldReturnError_snapshotNotLoaded() {
4444
configure(ContextBuilder.builder(true)
4545
.context(SwitchersBase.class.getName())
4646
.url("http://localhost:3000")
47-
.apiKey("API_KEY")
48-
.domain("switcher-domain")
49-
.component("switcher-client")
47+
.apiKey("apiKey")
48+
.domain("domain")
49+
.component("component")
5050
.environment(DEFAULT_ENV)
5151
.snapshotLocation(null)
5252
.local(true));
@@ -61,7 +61,7 @@ void shouldThrowError_wrongContextKeyTypeUsage() {
6161
//given
6262
configure(ContextBuilder.builder(true)
6363
.context(SwitchersBase.class.getName())
64-
.domain("switcher-domain")
64+
.domain("domain")
6565
.snapshotLocation(SNAPSHOTS_LOCAL)
6666
.local(true));
6767

src/test/java/com/switcherapi/client/SwitcherSilentModeTest.java

Lines changed: 12 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.switcherapi.client;
22

3-
import com.switcherapi.Switchers;
3+
import com.switcherapi.SwitchersBase;
44
import com.switcherapi.client.model.SwitcherRequest;
55
import com.switcherapi.fixture.CountDownHelper;
66
import com.switcherapi.fixture.MockWebServerHelper;
@@ -24,9 +24,6 @@ class SwitcherSilentModeTest extends MockWebServerHelper {
2424
@BeforeAll
2525
static void setup() throws IOException {
2626
setupMockServer();
27-
28-
Switchers.loadProperties();
29-
Switchers.configure(ContextBuilder.builder().url(String.format("http://localhost:%s", mockBackEnd.getPort())));
3027
}
3128

3229
@AfterAll
@@ -38,25 +35,24 @@ static void tearDown() {
3835
void resetSwitcherContextState() {
3936
((QueueDispatcher) mockBackEnd.getDispatcher()).clear();
4037

41-
Switchers.configure(ContextBuilder.builder()
42-
.local(false)
43-
.snapshotLocation(null)
44-
.snapshotSkipValidation(false)
45-
.environment(DEFAULT_ENV)
46-
.silentMode(null)
47-
.snapshotAutoLoad(false)
48-
.snapshotAutoUpdateInterval(null));
38+
SwitchersBase.configure(ContextBuilder.builder(true)
39+
.context(SwitchersBase.class.getName())
40+
.url(String.format("http://localhost:%s", mockBackEnd.getPort()))
41+
.domain("domain")
42+
.apiKey("apiKey")
43+
.component("component")
44+
.environment(DEFAULT_ENV));
4945
}
5046

5147
@Test
5248
void shouldReturnTrue_silentMode() {
5349
//given
54-
Switchers.configure(ContextBuilder.builder()
50+
SwitchersBase.configure(ContextBuilder.builder()
5551
.snapshotLocation(SNAPSHOTS_LOCAL)
5652
.environment("fixture1")
5753
.silentMode("5s"));
58-
59-
Switchers.initializeClient();
54+
55+
SwitchersBase.initializeClient();
6056

6157
//auth
6258
givenResponse(generateMockAuth(10));
@@ -65,7 +61,7 @@ void shouldReturnTrue_silentMode() {
6561
givenResponse(generateCriteriaResponse("true", false));
6662

6763
//test
68-
SwitcherRequest switcher = Switchers.getSwitcher(Switchers.USECASE11);
64+
SwitcherRequest switcher = SwitchersBase.getSwitcher(SwitchersBase.USECASE11);
6965
assertTrue(switcher.isItOn());
7066

7167
CountDownHelper.wait(2);

src/test/java/com/switcherapi/client/SwitcherSnapshotAutoUpdate2Test.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ void shouldNotKillThread_whenAPI_wentLocal() {
4949
Switchers.configure(ContextBuilder.builder(true)
5050
.context(Switchers.class.getName())
5151
.url(String.format("http://localhost:%s", mockBackEnd.getPort()))
52-
.apiKey("[API_KEY]")
52+
.apiKey("apiKey")
5353
.environment("generated_mock_default_6")
5454
.local(true)
5555
.snapshotAutoLoad(true)
@@ -65,8 +65,8 @@ void shouldNotKillThread_whenAPI_wentLocal() {
6565
givenResponse(generateSnapshotResponse("default.json", SNAPSHOTS_LOCAL)); //graphql
6666

6767
//test
68-
CountDownHelper.wait(2);
69-
assertEquals(2, Switchers.getSnapshotVersion());
68+
assertEquals(2,
69+
CountDownHelper.waitUntil(10, 2L, Switchers::getSnapshotVersion));
7070
}
7171

7272
}

0 commit comments

Comments
 (0)