Skip to content

Commit 456a98c

Browse files
committed
chore-test: moved throttle tests to suite
1 parent 5c0a2cb commit 456a98c

File tree

2 files changed

+64
-33
lines changed

2 files changed

+64
-33
lines changed

src/test/java/com/switcherapi/client/SwitcherThrottleTest.java renamed to src/test/java/com/switcherapi/client/SwitcherThrottle1Test.java

Lines changed: 3 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,10 @@
22

33
import com.switcherapi.SwitchersBase;
44
import com.switcherapi.client.model.Switcher;
5-
import com.switcherapi.client.model.SwitcherBuilder;
65
import com.switcherapi.fixture.CountDownHelper;
76
import com.switcherapi.fixture.MockWebServerHelper;
8-
import mockwebserver3.QueueDispatcher;
97
import org.junit.jupiter.api.AfterAll;
108
import org.junit.jupiter.api.BeforeAll;
11-
import org.junit.jupiter.api.BeforeEach;
129
import org.junit.jupiter.api.Test;
1310

1411
import java.io.IOException;
@@ -17,7 +14,7 @@
1714
import static org.junit.jupiter.api.Assertions.assertFalse;
1815
import static org.junit.jupiter.api.Assertions.assertTrue;
1916

20-
class SwitcherThrottleTest extends MockWebServerHelper {
17+
class SwitcherThrottle1Test extends MockWebServerHelper {
2118

2219
@BeforeAll
2320
static void setup() throws IOException {
@@ -30,19 +27,15 @@ static void setup() throws IOException {
3027
.domain("TEST_DOMAIN")
3128
.component("TEST_COMPONENT")
3229
.environment(DEFAULT_ENV));
30+
31+
SwitchersBase.initializeClient();
3332
}
3433

3534
@AfterAll
3635
static void tearDown() {
3736
MockWebServerHelper.tearDownMockServer();
3837
}
3938

40-
@BeforeEach
41-
void resetSwitcherContextState() {
42-
((QueueDispatcher) mockBackEnd.getDispatcher()).clear();
43-
SwitchersBase.initializeClient();
44-
}
45-
4639
@Test
4740
void shouldReturnTrue_withThrottle() {
4841
// Initial remote call
@@ -68,27 +61,4 @@ void shouldReturnTrue_withThrottle() {
6861
assertFalse(switcher.isItOn());
6962
}
7063

71-
@Test
72-
void shouldRetrieveNewResponse_whenStrategyInputChanged() {
73-
// Initial remote call
74-
givenResponse(generateMockAuth(10)); //auth
75-
givenResponse(generateCriteriaResponse("true", false)); //criteria - sync (cached)
76-
givenResponse(generateCriteriaResponse("false", false)); //criteria - async (cached)
77-
78-
// Throttle period - should use cache
79-
givenResponse(generateCriteriaResponse("false", false)); //criteria - async after 1 sec (background)
80-
81-
//test
82-
SwitcherBuilder switcher = SwitchersBase
83-
.getSwitcher(SwitchersBase.USECASE11)
84-
.flush()
85-
.throttle(1000);
86-
87-
for (int i = 0; i < 100; i++) {
88-
assertTrue(switcher.checkValue("value").isItOn());
89-
}
90-
91-
assertFalse(switcher.checkValue("value_changed").isItOn());
92-
}
93-
9464
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
package com.switcherapi.client;
2+
3+
import com.switcherapi.SwitchersBase;
4+
import com.switcherapi.client.model.SwitcherBuilder;
5+
import com.switcherapi.fixture.MockWebServerHelper;
6+
import org.junit.jupiter.api.AfterAll;
7+
import org.junit.jupiter.api.BeforeAll;
8+
import org.junit.jupiter.api.Test;
9+
10+
import java.io.IOException;
11+
12+
import static com.switcherapi.client.remote.Constants.DEFAULT_ENV;
13+
import static org.junit.jupiter.api.Assertions.assertFalse;
14+
import static org.junit.jupiter.api.Assertions.assertTrue;
15+
16+
class SwitcherThrottle2Test extends MockWebServerHelper {
17+
18+
@BeforeAll
19+
static void setup() throws IOException {
20+
MockWebServerHelper.setupMockServer();
21+
22+
SwitchersBase.configure(ContextBuilder.builder(true)
23+
.context(SwitchersBase.class.getName())
24+
.url(String.format("http://localhost:%s", mockBackEnd.getPort()))
25+
.apiKey("TEST_API_KEY")
26+
.domain("TEST_DOMAIN")
27+
.component("TEST_COMPONENT")
28+
.environment(DEFAULT_ENV));
29+
30+
SwitchersBase.initializeClient();
31+
}
32+
33+
@AfterAll
34+
static void tearDown() {
35+
MockWebServerHelper.tearDownMockServer();
36+
}
37+
38+
@Test
39+
void shouldRetrieveNewResponse_whenStrategyInputChanged() {
40+
// Initial remote call
41+
givenResponse(generateMockAuth(10)); //auth
42+
givenResponse(generateCriteriaResponse("true", false)); //criteria - sync (cached)
43+
givenResponse(generateCriteriaResponse("false", false)); //criteria - async (cached)
44+
45+
// Throttle period - should use cache
46+
givenResponse(generateCriteriaResponse("false", false)); //criteria - async after 1 sec (background)
47+
48+
//test
49+
SwitcherBuilder switcher = SwitchersBase
50+
.getSwitcher(SwitchersBase.USECASE11)
51+
.flush()
52+
.throttle(1000);
53+
54+
for (int i = 0; i < 100; i++) {
55+
assertTrue(switcher.checkValue("value").isItOn());
56+
}
57+
58+
assertFalse(switcher.checkValue("value_changed").isItOn());
59+
}
60+
61+
}

0 commit comments

Comments
 (0)