X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=dist%2Fhttp-resources%2F2.0.0%2Fxref-test%2Fde%2Fjuplo%2Fhttpresources%2FHttpResourceExpiredFetchUnmodifiedTest.html;fp=dist%2Fhttp-resources%2F2.0.0%2Fxref-test%2Fde%2Fjuplo%2Fhttpresources%2FHttpResourceExpiredFetchUnmodifiedTest.html;h=816b11e64484aa421e6e17a24a4b70dd2feb61dc;hb=96ec104e2974d001e9bc82c3af8b21029b2042d4;hp=0000000000000000000000000000000000000000;hpb=de1fa457a1c69c673d4dd5c0a2c9af568f74ea12;p=website diff --git a/dist/http-resources/2.0.0/xref-test/de/juplo/httpresources/HttpResourceExpiredFetchUnmodifiedTest.html b/dist/http-resources/2.0.0/xref-test/de/juplo/httpresources/HttpResourceExpiredFetchUnmodifiedTest.html new file mode 100644 index 00000000..816b11e6 --- /dev/null +++ b/dist/http-resources/2.0.0/xref-test/de/juplo/httpresources/HttpResourceExpiredFetchUnmodifiedTest.html @@ -0,0 +1,170 @@ + + + +/home/kai/Dokumente/yourshouter/http-resources/src/test/java/de/juplo/httpresources/HttpResourceExpiredFetchUnmodifiedTest.java xref + + + +
View Javadoc
+1   package de.juplo.httpresources;
+2   
+3   import org.junit.jupiter.api.BeforeEach;
+4   import org.junit.jupiter.api.DisplayName;
+5   import org.junit.jupiter.api.Test;
+6   import org.junit.jupiter.api.extension.ExtendWith;
+7   import org.mockito.Mock;
+8   import org.mockito.junit.jupiter.MockitoExtension;
+9   import org.mockito.junit.jupiter.MockitoSettings;
+10  import org.mockito.quality.Strictness;
+11  import org.slf4j.Logger;
+12  import org.slf4j.LoggerFactory;
+13  import org.springframework.cache.support.NoOpCache;
+14  import org.springframework.http.HttpHeaders;
+15  import org.springframework.test.context.junit.jupiter.SpringExtension;
+16  
+17  import java.net.URI;
+18  import java.time.Clock;
+19  import java.time.ZoneId;
+20  
+21  import static de.juplo.httpresources.TestUtil.*;
+22  import static org.assertj.core.api.Assertions.assertThat;
+23  import static org.mockito.ArgumentMatchers.any;
+24  import static org.mockito.Mockito.*;
+25  
+26  
+27  @DisplayName(("HttpResource - Expired - Fetch: Unmodified"))
+28  @ExtendWith({ SpringExtension.class, MockitoExtension.class })
+29  @MockitoSettings(strictness = Strictness.LENIENT)
+30  public class HttpResourceExpiredFetchUnmodifiedTest
+31  {
+32    private final static Logger LOG = LoggerFactory.getLogger(HttpResourceExpiredFetchUnmodifiedTest.class);
+33  
+34    @Mock
+35    HttpResourceFetcher fetcher;
+36  
+37    HttpResources resources;
+38    URI uri;
+39    HttpResource resource;
+40  
+41  
+42    /************** SETUP */
+43  
+44    @BeforeEach
+45    public void setUp()
+46    {
+47      Clock clock = Clock.fixed(NOW.toInstant(), ZoneId.of("GMT"));
+48      resources = new HttpResources(fetcher, clock);
+49      uri = URI.create("http://foo/bar");
+50      resource = new HttpResource(resources, fetcher, clock, uri);
+51      resource.data = DATA_EXPIRED;
+52  
+53      // Everything is possible, nothing is necessary: Only defines behavior!
+54  
+55      HttpHeaders headers = new HttpHeaders();
+56      headers.setContentType(MIME_TYPE_CONTENT_TYPE_HTML);
+57  
+58      when(fetcher.fetch(any(), any())).thenReturn(DATA_EXPIRED_DUMMY);
+59    }
+60  
+61  
+62    /*************** Results for calls, that did trigger a fetch */
+63  
+64    @Test
+65    @DisplayName(("fetch() reports no modification"))
+66    public void test_fetch_ReportsNoModifications()
+67    {
+68      LOG.info("<-- start of test-case");
+69  
+70      assertThat(resource.fetch()).isFalse();
+71    }
+72  
+73    @Test
+74    @DisplayName(("exists() is true"))
+75    public void test_exists_IsTrue()
+76    {
+77      LOG.info("<-- start of test-case");
+78  
+79      assertThat(resource.exists()).isTrue();
+80    }
+81  
+82    @Test
+83    @DisplayName(("readable() is true"))
+84    public void test_isReadable_IsTrue()
+85    {
+86      LOG.info("<-- start of test-case");
+87  
+88      assertThat(resource.isReadable()).isTrue();
+89    }
+90  
+91    @Test
+92    @DisplayName(("isModified() reports no modification"))
+93    public void test_isModified_ReportsNoModifications()
+94    {
+95      LOG.info("<-- start of test-case");
+96  
+97      assertThat(resource.isModified()).isFalse();
+98    }
+99  
+100 
+101   /*************** Expected state after calls, that did trigger a fetch */
+102 
+103   @Test
+104   @DisplayName(("fetch() updates data"))
+105   public void test_fetch_UpdatesData()
+106   {
+107     LOG.info("<-- start of test-case");
+108 
+109     resource.fetch();
+110 
+111     assertThat(resource.data).isSameAs(DATA_EXPIRED_DUMMY);
+112   }
+113 
+114   @Test
+115   @DisplayName(("exists() updates data"))
+116   public void test_exists_UpdatesData()
+117   {
+118     LOG.info("<-- start of test-case");
+119 
+120     resource.exists();
+121 
+122     assertThat(resource.data).isSameAs(DATA_EXPIRED_DUMMY);
+123   }
+124 
+125   @Test
+126   @DisplayName(("isReadable() updates data"))
+127   public void test_isReadable_UpdatesData()
+128   {
+129     LOG.info("<-- start of test-case");
+130 
+131     resource.isReadable();
+132 
+133     assertThat(resource.data).isSameAs(DATA_EXPIRED_DUMMY);
+134   }
+135 
+136   @Test
+137   @DisplayName(("isModified() updates data"))
+138   public void test_isModified_UpdatesData()
+139   {
+140     LOG.info("<-- start of test-case");
+141 
+142     resource.isModified();
+143 
+144     assertThat(resource.data).isSameAs(DATA_EXPIRED_DUMMY);
+145   }
+146 
+147   @Test
+148   @DisplayName(("getInputStream() updates data"))
+149   public void test_getInputStream_UpdatesData() throws Exception
+150   {
+151     LOG.info("<-- start of test-case");
+152 
+153     resource.getInputStream();
+154 
+155     assertThat(resource.data).isSameAs(DATA_EXPIRED_DUMMY);
+156   }
+157 }
+
+
+ + +