|
3 | 3 | from __future__ import print_function
|
4 | 4 | from __future__ import unicode_literals
|
5 | 5 |
|
| 6 | +import calendar |
6 | 7 | import os
|
7 | 8 | import platform
|
8 | 9 | import shutil
|
@@ -226,23 +227,19 @@ def test_geturl(self):
|
226 | 227 | def test_setinfo(self):
|
227 | 228 | # TODO: temporary test, since FSTestCases.test_setinfo is broken.
|
228 | 229 | self.fs.create("bar")
|
229 |
| - time1 = time.mktime(datetime.datetime.now().timetuple()) |
230 |
| - time2 = time1 + 60 |
231 |
| - self.fs.setinfo("bar", {"details": {"modified": time1}}) |
232 |
| - mtime1 = self.fs.getinfo("bar", ("details",)).modified |
233 |
| - self.fs.setinfo("bar", {"details": {"modified": time2}}) |
234 |
| - mtime2 = self.fs.getinfo("bar", ("details",)).modified |
235 |
| - replacement = {} |
236 |
| - if mtime1.microsecond == 0 or mtime2.microsecond == 0: |
237 |
| - mtime1 = mtime1.replace(microsecond=0) |
238 |
| - mtime2 = mtime2.replace(microsecond=0) |
239 |
| - if mtime1.second == 0 or mtime2.second == 0: |
240 |
| - mtime1 = mtime1.replace(second=0) |
241 |
| - mtime2 = mtime2.replace(second=0) |
242 |
| - mtime2_modified = mtime2.replace(minute=mtime2.minute - 1) |
243 |
| - self.assertEqual( |
244 |
| - mtime1.replace(**replacement), mtime2_modified.replace(**replacement) |
245 |
| - ) |
| 230 | + original_modified = self.fs.getinfo("bar", ("details",)).modified |
| 231 | + new_modified = original_modified - datetime.timedelta(hours=1) |
| 232 | + new_modified_stamp = calendar.timegm(new_modified.timetuple()) |
| 233 | + self.fs.setinfo("bar", {"details": {"modified": new_modified_stamp}}) |
| 234 | + new_modified_get = self.fs.getinfo("bar", ("details",)).modified |
| 235 | + if original_modified.microsecond == 0 or new_modified_get.microsecond == 0: |
| 236 | + original_modified = original_modified.replace(microsecond=0) |
| 237 | + new_modified_get = new_modified_get.replace(microsecond=0) |
| 238 | + if original_modified.second == 0 or new_modified_get.second == 0: |
| 239 | + original_modified = original_modified.replace(second=0) |
| 240 | + new_modified_get = new_modified_get.replace(second=0) |
| 241 | + new_modified_get = new_modified_get + datetime.timedelta(hours=1) |
| 242 | + self.assertEqual(original_modified, new_modified_get) |
246 | 243 |
|
247 | 244 | def test_host(self):
|
248 | 245 | self.assertEqual(self.fs.host, self.server.host)
|
|
0 commit comments