diff options
author | Giuseppe Castagno <giuseppe.castagno@acca-esse.eu> | 2016-09-25 17:48:27 +0200 |
---|---|---|
committer | Giuseppe Castagno <giuseppe.castagno@acca-esse.eu> | 2016-10-05 12:10:40 +0000 |
commit | f423a9d695814b1babf5f2c3f42821190adc7e53 (patch) | |
tree | 032e399a327914ec4d5c9dff234757a1bfba80c4 /ucb/qa/cppunit | |
parent | 7cf9028d3b735c5a1929897e556357b5d18573a2 (diff) |
tdf#102499 (3): Change caching model for HTTP response status code
Instead of caching only a single status flag, now both the HTTP
response status code and the message accompanying it are cached.
Change-Id: If7352f6b0cb7c7dab6af3cede96647308baa5ce2
Reviewed-on: https://gerrit.libreoffice.org/29538
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Giuseppe Castagno <giuseppe.castagno@acca-esse.eu>
Diffstat (limited to 'ucb/qa/cppunit')
-rw-r--r-- | ucb/qa/cppunit/webdav/webdav_options.cxx | 84 |
1 files changed, 55 insertions, 29 deletions
diff --git a/ucb/qa/cppunit/webdav/webdav_options.cxx b/ucb/qa/cppunit/webdav/webdav_options.cxx index 371873354743..0dad7f8d155b 100644 --- a/ucb/qa/cppunit/webdav/webdav_options.cxx +++ b/ucb/qa/cppunit/webdav/webdav_options.cxx @@ -55,7 +55,6 @@ namespace { // check if the class is at reset state // using accessors - CPPUNIT_ASSERT_EQUAL( false, aDavType.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavType.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavType.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavType.isClass3() ); @@ -66,6 +65,8 @@ namespace CPPUNIT_ASSERT_EQUAL( true, aDavType.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( true, aDavType.getRedirectedURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavType.getStaleTime() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavType.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavType.getHttpResponseStatusText().isEmpty() ); } void webdav_opts_test::DAVTypesTest() @@ -73,22 +74,8 @@ namespace //our DAVOptions webdav_ucp::DAVOptions aDavOpt; DAVTypesCheckInit( aDavOpt ); - aDavOpt.setResourceFound(); - //recheck... - CPPUNIT_ASSERT_EQUAL( true, aDavOpt.isResourceFound() ); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); - CPPUNIT_ASSERT_EQUAL( true, aDavOpt.isHeadAllowed() ); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isLockAllowed() ); - CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getAllowedMethods().isEmpty() ); - CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); - CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); - CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); - aDavOpt.setResourceFound( false ); aDavOpt.setClass1(); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); @@ -98,10 +85,11 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); aDavOpt.setClass1( false ); aDavOpt.setClass2(); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); @@ -111,10 +99,11 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); aDavOpt.setClass2( false ); aDavOpt.setClass3(); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.isClass3() ); @@ -124,10 +113,11 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); aDavOpt.setClass3( false ); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); @@ -137,13 +127,14 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); DAVTypesCheckInit( aDavOpt ); //example of allowed method for a Web resource OUString aAllowedMethods = "POST,OPTIONS,GET,HEAD,TRACE"; aDavOpt.setAllowedMethods( aAllowedMethods ); // now check... - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); @@ -153,12 +144,13 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); //example of allowed method for a WebDAV resource supporting LOCK aAllowedMethods = "OPTIONS,GET,HEAD,POST,DELETE,TRACE,PROPFIND,PROPPATCH,COPY,MOVE,PUT,LOCK,UNLOCK"; aDavOpt.setAllowedMethods( aAllowedMethods ); // now check... - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); @@ -168,11 +160,12 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); aAllowedMethods.clear(); aDavOpt.setAllowedMethods( aAllowedMethods ); aDavOpt.setStaleTime( 12345678 ); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); @@ -182,12 +175,31 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 12345678 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); aDavOpt.setStaleTime( 0 ); + OUString aHTTPResponseStatusText = "522 Origin Connection Time-out"; + aDavOpt.setHttpResponseStatusCode( 522 ); + aDavOpt.setHttpResponseStatusText( aHTTPResponseStatusText ); + CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); + CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); + CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getAllowedMethods().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isLockAllowed() ); + CPPUNIT_ASSERT_EQUAL( true , aDavOpt.getURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 522 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( aHTTPResponseStatusText, aDavOpt.getHttpResponseStatusText() ); + + aDavOpt.setHttpResponseStatusCode( 0 ); + aHTTPResponseStatusText.clear(); + aDavOpt.setHttpResponseStatusText( aHTTPResponseStatusText ); + OUString aURL = "http://a%20fake%20url/to%20test"; aDavOpt.setURL( aURL ); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); @@ -197,12 +209,13 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( aURL, aDavOpt.getURL() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getRedirectedURL().isEmpty() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); aURL.clear(); aDavOpt.setURL( aURL ); aURL = "http://a%20fake%20url/to%20test/another-url"; aDavOpt.setRedirectedURL( aURL ); - CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isResourceFound() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass1() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass2() ); CPPUNIT_ASSERT_EQUAL( false, aDavOpt.isClass3() ); @@ -212,11 +225,13 @@ namespace CPPUNIT_ASSERT_EQUAL( sal_uInt32( 0 ), aDavOpt.getStaleTime() ); CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getURL().isEmpty() ); CPPUNIT_ASSERT_EQUAL( aURL, aDavOpt.getRedirectedURL() ); + CPPUNIT_ASSERT_EQUAL( sal_uInt16( 0 ), aDavOpt.getHttpResponseStatusCode() ); + CPPUNIT_ASSERT_EQUAL( true, aDavOpt.getHttpResponseStatusText().isEmpty() ); //check the init() function aAllowedMethods = "OPTIONS,GET,HEAD,POST,DELETE,TRACE,PROPFIND,PROPPATCH,COPY,MOVE,PUT,LOCK,UNLOCK"; aURL = "http://a%20fake%20url/to%20test/another-url"; - aDavOpt.setResourceFound(); + aHTTPResponseStatusText = "404 Not Found"; aDavOpt.setClass1(); aDavOpt.setClass2(); aDavOpt.setClass3(); @@ -226,6 +241,8 @@ namespace aDavOpt.setStaleTime( 1234567 ); aDavOpt.setURL( aURL ); aDavOpt.setRedirectedURL( aURL ); + aDavOpt.setHttpResponseStatusCode( 404 ); + aDavOpt.setHttpResponseStatusText( aHTTPResponseStatusText ); aDavOpt.init(); DAVTypesCheckInit( aDavOpt ); @@ -258,14 +275,14 @@ namespace aDavOpt.setLocked( false ); CPPUNIT_ASSERT_EQUAL( true , aDavOpt == aDavOptTarget ); - aDavOpt.setResourceFound(); + aDavOpt.setStaleTime( 1234567 ); CPPUNIT_ASSERT_EQUAL( false , aDavOpt == aDavOptTarget ); - aDavOpt.setResourceFound( false ); + aDavOpt.setStaleTime( 0 ); CPPUNIT_ASSERT_EQUAL( true , aDavOpt == aDavOptTarget ); - aDavOpt.setStaleTime( 1234567 ); + aDavOpt.setHttpResponseStatusCode( 404 ); CPPUNIT_ASSERT_EQUAL( false , aDavOpt == aDavOptTarget ); - aDavOpt.setStaleTime( 0 ); + aDavOpt.setHttpResponseStatusCode( 0 ); CPPUNIT_ASSERT_EQUAL( true , aDavOpt == aDavOptTarget ); aDavOpt.setAllowedMethods( aAllowedMethods ); @@ -276,6 +293,16 @@ namespace aDavOpt.setURL( aURL ); CPPUNIT_ASSERT_EQUAL( false , aDavOpt == aDavOptTarget ); + aURL.clear(); + aDavOpt.setURL( aURL ); + CPPUNIT_ASSERT_EQUAL( true , aDavOpt == aDavOptTarget ); + + aDavOpt.setHttpResponseStatusText( aHTTPResponseStatusText ); + CPPUNIT_ASSERT_EQUAL( false , aDavOpt == aDavOptTarget ); + aHTTPResponseStatusText.clear(); + aDavOpt.setHttpResponseStatusText( aHTTPResponseStatusText ); + CPPUNIT_ASSERT_EQUAL( true , aDavOpt == aDavOptTarget ); + } void webdav_opts_test::DAVOptsCacheTests() @@ -292,7 +319,6 @@ namespace OUString aRedirectedURL = "http://a%20fake%20url/to%20test/another-url/redirected"; aDavOpt.setURL( aURL ); aDavOpt.setRedirectedURL( aRedirectedURL ); - aDavOpt.setResourceFound(); aDavOpt.setClass1(); aDavOpt.setClass2(); aDavOpt.setClass3(); |