Skip to content
Snippets Groups Projects
Select Git revision
  • c786d48898799c0ef5aa03bad539b53d1f8fbbdf
  • master default protected
  • add-frequency-to-form
  • dev protected
  • ckan-2.11.0
  • add-package-custom-fields
  • fix-adding-datasets-for-users-and-editors
  • add-auth-subroute
  • 71-migrate-custom-fields-to-ckanext-scheming
  • add-author-maintainer-information
  • fix-inline-flex-btns
  • fix-known-spatial-uri-validation
  • py3
  • 47-aktuelle-resource-einer-collection-wird-nicht-mehr-gefunden
  • 10-eingabe-der-dct-accrualperiodicity-in-weboberflache
  • v1.3
  • 2.5.3
  • 2.5.2
  • 2.5.1
  • 2.5.0
  • 2.4.7
  • 2.4.6
  • 2.4.5
  • 2.4.4
  • 2.4.3
  • 2.4.2
  • 2.4.1
  • 2.4.0
  • 2.3.1
  • 2.3.0
  • 2.2.0
  • 2.1.0
  • 2.0.0
  • 1.4.3
  • 1.4.2
  • 1.4.1
36 results

controller.py

Blame
  • RootControllerTest.java 2.34 KiB
    package de.ozgcloud.admin;
    
    import static org.mockito.Mockito.*;
    import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*;
    import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
    
    import org.junit.jupiter.api.BeforeEach;
    import org.junit.jupiter.api.DisplayName;
    import org.junit.jupiter.api.Nested;
    import org.junit.jupiter.api.Test;
    import org.junit.jupiter.api.extension.ExtendWith;
    import org.mockito.InjectMocks;
    import org.mockito.Mock;
    import org.mockito.Spy;
    import org.mockito.junit.jupiter.MockitoExtension;
    import org.springframework.boot.info.BuildProperties;
    import org.springframework.test.web.servlet.MockMvc;
    import org.springframework.test.web.servlet.ResultActions;
    import org.springframework.test.web.servlet.setup.MockMvcBuilders;
    
    import lombok.SneakyThrows;
    
    @ExtendWith(MockitoExtension.class)
    class RootControllerTest {
    
    	@Spy
    	@InjectMocks
    	private RootController rootController;
    
    	@Mock
    	private BuildProperties buildProperties;
    
    	private MockMvc mockMvc;
    
    	@BeforeEach
    	void mock() {
    		mockMvc = MockMvcBuilders.standaloneSetup(rootController).build();
    	}
    
    	@DisplayName("Root")
    	@Nested
    	class TestInfo {
    
    		@Test
    		@SneakyThrows
    		void shouldHaveJavaVersion() {
    			System.setProperty("java.version", RootTestFactory.JAVA_VERSION);
    
    			ResultActions result = doRequest();
    
    			result.andExpect(jsonPath("$.javaVersion").value(RootTestFactory.JAVA_VERSION));
    		}
    
    		@Test
    		@SneakyThrows
    		void shouldHaveVersion() {
    			when(buildProperties.getVersion()).thenReturn(RootTestFactory.BUILD_VERSION);
    
    			ResultActions result = doRequest();
    
    			result.andExpect(jsonPath("$.buildVersion").value(RootTestFactory.BUILD_VERSION));
    		}
    
    		@Test
    		@SneakyThrows
    		void shouldHaveBuildTime() {
    			when(buildProperties.getTime()).thenReturn(RootTestFactory.BUILD_TIME);
    
    			ResultActions result = doRequest();
    
    			result.andExpect(jsonPath("$.buildTime").value(RootTestFactory.BUILD_TIME.getEpochSecond()));
    		}
    
    		@Test
    		@SneakyThrows
    		void shouldHaveBuildNumber() {
    			when(buildProperties.get("number")).thenReturn(RootTestFactory.BUILD_NUMBER);
    
    			ResultActions result = doRequest();
    
    			result.andExpect(jsonPath("$.buildNumber").value(RootTestFactory.BUILD_NUMBER));
    		}
    
    		@SneakyThrows
    		private ResultActions doRequest() {
    			return mockMvc.perform(get(RootController.PATH)).andExpect(status().isOk());
    		}
    
    	}
    
    }