![Tests passed successfully](https://img.shields.io/badge/tests-67%20passed%2C%2012%20skipped-success)
Expand for details |Report|Passed|Failed|Skipped|Time| |:---|---:|---:|---:|---:| |fixtures/external/SilentNotes.trx|67 ✅||12 ⚪|1s| ## ✅ fixtures/external/SilentNotes.trx **79** tests were completed in **1s** with **67** passed, **0** failed and **12** skipped. |Test suite|Passed|Failed|Skipped|Time| |:---|---:|---:|---:|---:| |[VanillaCloudStorageClientTest.CloudStorageCredentialsTest](#r0s0)|6 ✅|||30ms| |[VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest](#r0s1)|2 ✅||3 ⚪|101ms| |[VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest](#r0s2)|4 ✅||3 ⚪|166ms| |[VanillaCloudStorageClientTest.CloudStorageProviders.GmxCloudStorageClientTest](#r0s3)|2 ✅|||7ms| |[VanillaCloudStorageClientTest.CloudStorageProviders.GoogleCloudStorageClientTest](#r0s4)|1 ✅||3 ⚪|40ms| |[VanillaCloudStorageClientTest.CloudStorageProviders.OnedriveCloudStorageClientTest](#r0s5)|1 ✅||3 ⚪|15ms| |[VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest](#r0s6)|5 ✅|||16ms| |[VanillaCloudStorageClientTest.CloudStorageTokenTest](#r0s7)|9 ✅|||0ms| |[VanillaCloudStorageClientTest.OAuth2.AuthorizationResponseErrorTest](#r0s8)|3 ✅|||3ms| |[VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest](#r0s9)|9 ✅|||12ms| |[VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest](#r0s10)|5 ✅|||13ms| |[VanillaCloudStorageClientTest.SecureStringExtensionsTest](#r0s11)|7 ✅|||0ms| |[VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest](#r0s12)|13 ✅|||43ms| ### ✅ VanillaCloudStorageClientTest.CloudStorageCredentialsTest ``` ✅ AreEqualWorksWithDifferentPassword ✅ AreEqualWorksWithSameContent ✅ CorrectlyConvertsSecureStringToString ✅ CorrectlyConvertsStringToSecureString ✅ ValidateAcceptsValidCredentials ✅ ValidateRejectsInvalidCredentials ``` ### ✅ VanillaCloudStorageClientTest.CloudStorageProviders.DropboxCloudStorageClientTest ``` ✅ FileLifecycleWorks ⚪ ReallyDoFetchToken ⚪ ReallyDoOpenAuthorizationPageInBrowser ⚪ ReallyDoRefreshToken ✅ ThrowsAccessDeniedExceptionWithInvalidToken ``` ### ✅ VanillaCloudStorageClientTest.CloudStorageProviders.FtpCloudStorageClientTest ``` ✅ FileLifecycleWorks ✅ SanitizeCredentials_ChangesInvalidPrefix ✅ SecureSslConnectionWorks ✅ ThrowsWithHttpInsteadOfFtp ⚪ ThrowsWithInvalidPassword ⚪ ThrowsWithInvalidUrl ⚪ ThrowsWithInvalidUsername ``` ### ✅ VanillaCloudStorageClientTest.CloudStorageProviders.GmxCloudStorageClientTest ``` ✅ ChoosesCorrectUrlForGmxComEmail ✅ ChoosesCorrectUrlForGmxNetEmail ``` ### ✅ VanillaCloudStorageClientTest.CloudStorageProviders.GoogleCloudStorageClientTest ``` ✅ FileLifecycleWorks ⚪ ReallyDoFetchToken ⚪ ReallyDoOpenAuthorizationPageInBrowser ⚪ ReallyDoRefreshToken ``` ### ✅ VanillaCloudStorageClientTest.CloudStorageProviders.OnedriveCloudStorageClientTest ``` ✅ FileLifecycleWorks ⚪ ReallyDoFetchToken ⚪ ReallyDoOpenAuthorizationPageInBrowser ⚪ ReallyDoRefreshToken ``` ### ✅ VanillaCloudStorageClientTest.CloudStorageProviders.WebdavCloudStorageClientTest ``` ✅ FileLifecycleWorks ✅ ParseGmxWebdavResponseCorrectly ✅ ParseStratoWebdavResponseCorrectly ✅ ThrowsWithInvalidPath ✅ ThrowsWithInvalidUsername ``` ### ✅ VanillaCloudStorageClientTest.CloudStorageTokenTest ``` ✅ AreEqualWorksWithNullDate ✅ AreEqualWorksWithSameContent ✅ NeedsRefreshReturnsFalseForTokenFlow ✅ NeedsRefreshReturnsFalseIfNotExpired ✅ NeedsRefreshReturnsTrueIfExpired ✅ NeedsRefreshReturnsTrueIfNoExpirationDate ✅ SetExpiryDateBySecondsWorks ✅ SetExpiryDateBySecondsWorksWithNull ✅ SetExpiryDateBySecondsWorksWithVeryShortPeriod ``` ### ✅ VanillaCloudStorageClientTest.OAuth2.AuthorizationResponseErrorTest ``` ✅ ParsesAllErrorCodesCorrectly ✅ ParsesNullErrorCodeCorrectly ✅ ParsesUnknownErrorCodeCorrectly ``` ### ✅ VanillaCloudStorageClientTest.OAuth2.OAuth2UtilsTest ``` ✅ BuildAuthorizationRequestUrlEscapesParameters ✅ BuildAuthorizationRequestUrlLeavesOutOptionalParameters ✅ BuildAuthorizationRequestUrlThrowsWithMissingRedirectUrlForTokenFlow ✅ BuildAuthorizationRequestUrlUsesAllParameters ✅ BuildAuthorizationRequestUrlUsesCodeVerifier ✅ ParseRealWorldDropboxRejectResponse ✅ ParseRealWorldDropboxSuccessResponse ✅ ParseRealWorldGoogleRejectResponse ✅ ParseRealWorldGoogleSuccessResponse ``` ### ✅ VanillaCloudStorageClientTest.OAuth2CloudStorageClientTest ``` ✅ BuildOAuth2AuthorizationRequestUrlWorks ✅ FetchTokenCanInterpretGoogleResponse ✅ FetchTokenReturnsNullForDeniedAccess ✅ FetchTokenThrowsWithWrongState ✅ RefreshTokenCanInterpretGoogleResponse ``` ### ✅ VanillaCloudStorageClientTest.SecureStringExtensionsTest ``` ✅ AreEqualsWorksCorrectly ✅ CorrectlyConvertsSecureStringToString ✅ CorrectlyConvertsSecureStringToUnicodeBytes ✅ CorrectlyConvertsSecureStringToUtf8Bytes ✅ CorrectlyConvertsStringToSecureString ✅ CorrectlyConvertsUnicodeBytesToSecureString ✅ CorrectlyConvertsUtf8BytesToSecureString ``` ### ✅ VanillaCloudStorageClientTest.SerializeableCloudStorageCredentialsTest ``` ✅ DecryptAfterDesrializationCanReadAllPropertiesBack ✅ DecryptAfterDesrializationRespectsNullProperties ✅ EncryptBeforeSerializationProtectsAllNecessaryProperties ✅ EncryptBeforeSerializationRespectsNullProperties ✅ SerializedDatacontractCanBeReadBack ✅ SerializedDatacontractDoesNotContainNullProperties ✅ SerializedDatacontractDoesNotContainPlaintextData ✅ SerializedJsonCanBeReadBack ✅ SerializedJsonDoesNotContainNullProperties ✅ SerializedJsonDoesNotContainPlaintextData ✅ SerializedXmlCanBeReadBack ✅ SerializedXmlDoesNotContainNullProperties ✅ SerializedXmlDoesNotContainPlaintextData ```