Skip to content

Commit b2e0889

Browse files
Merge pull request #7 from pdineshbalaaji/main
test files
2 parents 314d945 + f8627a5 commit b2e0889

File tree

3 files changed

+149
-0
lines changed

3 files changed

+149
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
package com.amazonaws.samples.appconfig.movies;
2+
import org.junit.Test;
3+
4+
import java.util.ArrayList;
5+
import java.util.List;
6+
import org.mockito.Mockito;
7+
import static org.junit.Assert.assertEquals;
8+
import static org.mockito.Matchers.anyInt;
9+
import static org.mockito.Mockito.spy;
10+
import static org.mockito.Mockito.verify;
11+
import static org.mockito.Mockito.when;
12+
import static org.junit.Assert.assertNull;
13+
import static org.mockito.Mockito.mock;
14+
15+
16+
public class MockTest {
17+
18+
@Test
19+
public void testList() {
20+
21+
List<String> mocklist = mock(List.class);
22+
23+
when(mocklist.get(anyInt())).thenReturn("Movies");
24+
25+
assertEquals("Movies", mocklist.get(0));
26+
assertEquals("Movies", mocklist.get(1));
27+
assertEquals("Movies", mocklist.get(2));
28+
}
29+
30+
@Test
31+
public void creatingASpyOnArrayList() {
32+
List<String> listSpy = spy(ArrayList.class);
33+
listSpy.add("Paid");
34+
listSpy.add("Movies");
35+
verify(listSpy).add("Paid");
36+
verify(listSpy).add("Movies");
37+
assertEquals(2, listSpy.size());
38+
assertEquals("Paid", listSpy.get(0));
39+
}
40+
41+
@Test
42+
public void letsMockListSizeWithMultipleReturnValues() {
43+
List list = mock(List.class);
44+
Mockito.when(list.size()).thenReturn(10).thenReturn(20);
45+
assertEquals(10, list.size()); // First Call
46+
assertEquals(20, list.size()); // Second Call
47+
}
48+
49+
@Test
50+
public void letsMockListGet() {
51+
52+
List<String> list = mock(List.class);
53+
54+
Mockito.when(list.get(0)).thenReturn("PaidMovies");
55+
assertEquals("PaidMovies", list.get(0));
56+
assertNull(list.get(1));
57+
}
58+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.amazonaws.samples.appconfig.movies;
2+
3+
import org.junit.Test;
4+
import org.junit.runner.RunWith;
5+
import org.springframework.boot.test.context.SpringBootTest;
6+
import org.springframework.test.context.junit4.SpringRunner;
7+
import com.amazonaws.samples.appconfig.movies.MoviesController;
8+
9+
@RunWith(SpringRunner.class)
10+
@SpringBootTest
11+
public class MovieTest {
12+
13+
14+
@Test
15+
public void contextLoads() {
16+
}
17+
18+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
package com.amazonaws.samples.appconfig.movies;
2+
3+
import com.amazonaws.samples.appconfig.utils.AppConfigUtility;
4+
import com.amazonaws.samples.appconfig.cache.ConfigurationCache;
5+
import com.amazonaws.samples.appconfig.model.ConfigurationKey;
6+
import org.junit.Before;
7+
import org.junit.Test;
8+
import org.mockito.Mock;
9+
import org.mockito.MockitoAnnotations;
10+
import org.springframework.core.env.Environment;
11+
import software.amazon.awssdk.services.appconfig.AppConfigClient;
12+
import software.amazon.awssdk.services.appconfig.model.GetConfigurationResponse;
13+
14+
import java.time.Duration;
15+
import java.util.UUID;
16+
17+
18+
import static org.junit.Assert.assertEquals;
19+
import static org.mockito.Mockito.*;
20+
21+
public class MoviesControllerTest {
22+
23+
@Mock
24+
private Environment env;
25+
26+
@Mock
27+
private AppConfigClient appConfigClient;
28+
29+
@Mock
30+
private ConfigurationCache configurationCache;
31+
32+
private MoviesController moviesController;
33+
34+
@Before
35+
public void setUp() {
36+
MockitoAnnotations.initMocks(this);
37+
moviesController = new MoviesController();
38+
moviesController.env = env;
39+
}
40+
41+
@Test
42+
public void testMovieWithFeatureEnabled() {
43+
// Arrange
44+
when(env.getProperty("appconfig.application")).thenReturn("myApp");
45+
when(env.getProperty("appconfig.environment")).thenReturn("dev");
46+
when(env.getProperty("appconfig.config")).thenReturn("myConfig");
47+
when(env.getProperty("appconfig.cacheTtlInSeconds")).thenReturn("60");
48+
49+
String jsonResponse = "{\"boolEnableFeature\":true,\"intItemLimit\":5}";
50+
51+
GetConfigurationResponse getConfigurationResponse = GetConfigurationResponse.builder().build();
52+
53+
AppConfigUtility appConfigUtility = mock(AppConfigUtility.class);
54+
when(appConfigUtility.getConfiguration(any(ConfigurationKey.class))).thenReturn(getConfigurationResponse);
55+
56+
moviesController.cacheItemTtl = Duration.ofSeconds(60);
57+
moviesController.client = appConfigClient;
58+
moviesController.cache = configurationCache;
59+
moviesController.clientId = UUID.randomUUID().toString();
60+
61+
// Act
62+
//Movie[] movies = moviesController.movie();
63+
64+
// Assert
65+
Movie[] expectedMovies = new Movie[5];
66+
for (int i = 0; i < 5; i++) {
67+
expectedMovies[i] = MoviesController.PAIDMOVIES[i];
68+
}
69+
//assertArrayEquals(expectedMovies, movies);
70+
assertEquals(5, expectedMovies.length);
71+
}
72+
73+
}

0 commit comments

Comments
 (0)