@@ -924,6 +924,85 @@ func (s *RecordedTestSuite) TestDeleteFileIfETagMatchFalse() {
924
924
testcommon .ValidateErrorCode (_require , err , datalakeerror .ConditionNotMet )
925
925
}
926
926
927
+ func (s * RecordedTestSuite ) TestFileSetExpiry () {
928
+ _require := require .New (s .T ())
929
+ testName := s .T ().Name ()
930
+
931
+ filesystemName := testcommon .GenerateFileSystemName (testName )
932
+ fsClient , err := testcommon .GetFileSystemClient (filesystemName , s .T (), testcommon .TestAccountDatalake , nil )
933
+ _require .NoError (err )
934
+ defer testcommon .DeleteFileSystem (context .Background (), _require , fsClient )
935
+
936
+ _ , err = fsClient .Create (context .Background (), nil )
937
+ _require .NoError (err )
938
+
939
+ fileName := testcommon .GenerateFileName (testName )
940
+ fClient , err := testcommon .GetFileClient (filesystemName , fileName , s .T (), testcommon .TestAccountDatalake , nil )
941
+ _require .NoError (err )
942
+
943
+ resp , err := fClient .Create (context .Background (), nil )
944
+ _require .NoError (err )
945
+ _require .NotNil (resp )
946
+
947
+ _ , err = fClient .SetExpiry (context .Background (), file.SetExpiryValues {ExpiryType : file .SetExpiryTypeNeverExpire }, nil )
948
+ _require .NoError (err )
949
+
950
+ res , err := fClient .GetProperties (context .Background (), nil )
951
+ _require .Nil (res .ExpiresOn )
952
+ _require .NoError (err )
953
+
954
+ _ , err = fClient .SetExpiry (
955
+ context .Background (),
956
+ file.SetExpiryValues {
957
+ ExpiryType : file .SetExpiryTypeRelativeToCreation ,
958
+ ExpiresOn : strconv .Itoa (10 ),
959
+ },
960
+ nil ,
961
+ )
962
+ _require .NoError (err )
963
+
964
+ time .Sleep (time .Second * 12 )
965
+
966
+ _ , err = fClient .GetProperties (context .Background (), nil )
967
+ testcommon .ValidateErrorCode (_require , err , datalakeerror .PathNotFound )
968
+ }
969
+
970
+ func (s * UnrecordedTestSuite ) TestFileSetExpiryTypeAbsoluteTime () {
971
+ _require := require .New (s .T ())
972
+ testName := s .T ().Name ()
973
+
974
+ filesystemName := testcommon .GenerateFileSystemName (testName )
975
+ fsClient , err := testcommon .GetFileSystemClient (filesystemName , s .T (), testcommon .TestAccountDatalake , nil )
976
+ _require .NoError (err )
977
+ defer testcommon .DeleteFileSystem (context .Background (), _require , fsClient )
978
+
979
+ _ , err = fsClient .Create (context .Background (), nil )
980
+ _require .NoError (err )
981
+
982
+ fileName := testcommon .GenerateFileName (testName )
983
+ fClient , err := testcommon .GetFileClient (filesystemName , fileName , s .T (), testcommon .TestAccountDatalake , nil )
984
+ _require .NoError (err )
985
+
986
+ resp , err := fClient .Create (context .Background (), nil )
987
+ _require .NoError (err )
988
+ _require .NotNil (resp )
989
+
990
+ _ , err = fClient .SetExpiry (
991
+ context .Background (),
992
+ file.SetExpiryValues {
993
+ ExpiryType : file .SetExpiryTypeAbsolute ,
994
+ ExpiresOn : time .Now ().Add (5 * time .Second ).UTC ().Format (http .TimeFormat ),
995
+ },
996
+ nil )
997
+ _require .NoError (err )
998
+
999
+ time .Sleep (time .Second * 7 )
1000
+
1001
+ _ , err = fClient .GetProperties (context .Background (), nil )
1002
+ testcommon .ValidateErrorCode (_require , err , datalakeerror .PathNotFound )
1003
+
1004
+ }
1005
+
927
1006
func (s * RecordedTestSuite ) TestFileSetAccessControlNil () {
928
1007
_require := require .New (s .T ())
929
1008
testName := s .T ().Name ()
0 commit comments