1
1
# Copyright (C) 2024 ISIS Rutherford Appleton Laboratory UKRI
2
2
# SPDX - License - Identifier: GPL-3.0-or-later
3
- from __future__ import annotations
4
3
4
+ from __future__ import annotations
5
5
from typing import TYPE_CHECKING
6
6
from unittest import mock
7
-
8
7
import numpy as np
9
-
10
8
import os
11
-
12
9
from mantidimaging .core .operations .loader import load_filter_packages
13
10
from mantidimaging .gui .windows .live_viewer .model import Image_Data
14
11
from mantidimaging .test_helpers .unit_test_helper import FakeFSTestCase
15
12
from pathlib import Path
16
-
17
13
from mantidimaging .eyes_tests .base_eyes import BaseEyesTest
18
14
19
15
if TYPE_CHECKING :
22
18
23
19
class LiveViewerWindowTest (FakeFSTestCase , BaseEyesTest ):
24
20
21
+ def __init__ (self , * args , ** kwargs ):
22
+ super ().__init__ (* args , ** kwargs )
23
+ self .initial_time = 4000.0
24
+
25
25
@classmethod
26
26
def setUpClass (cls ) -> None :
27
27
super ().setUpClass ()
@@ -32,7 +32,6 @@ def setUp(self) -> None:
32
32
self .fs .add_real_directory (Path (__file__ ).parent .parent ) # Allow ui file to be found
33
33
self .live_directory = Path ("/live_dir" )
34
34
self .fs .create_dir (self .live_directory )
35
- self .initial_time = 4000.0
36
35
37
36
def _generate_image (self ):
38
37
image = np .zeros ((10 , 10 ))
@@ -43,16 +42,11 @@ def _generate_image(self):
43
42
44
43
def _make_simple_dir (self , directory : Path ):
45
44
file_list = [directory / f"abc_{ i :06d} .tif" for i in range (5 )]
46
- # set initial time to live directory utime
47
- # initial_time = 4000.0
48
- if not directory .exists ():
49
- self .fs .create_dir (directory )
50
- # increment = 1
45
+ increment = 0
51
46
for file in file_list :
52
47
self .fs .create_file (file )
53
- # set file time to incrememnt by 1
54
- # os.utime(file, (10, initial_time + increment))
55
- # increment += 1
48
+ os .utime (file , (10 , self .initial_time + increment ))
49
+ increment += 1000
56
50
57
51
return file_list
58
52
@@ -100,15 +94,11 @@ def test_rotate_operation_rotates_image(self, _mock_time, _mock_image_watcher, m
100
94
@mock .patch ('mantidimaging.gui.windows.live_viewer.presenter.LiveViewerWindowPresenter.load_image' )
101
95
@mock .patch ('mantidimaging.gui.windows.live_viewer.model.ImageWatcher' )
102
96
@mock .patch ("time.time" , return_value = 4000.0 )
103
- def test_file_time_is_updated (self , _mock_time , _mock_image_watcher , mock_load_image ):
97
+ def test_file_time_lebel_displays_correct_time (self , _mock_time , _mock_image_watcher , mock_load_image ):
104
98
file_list = self ._make_simple_dir (self .live_directory )
105
99
image_list = [Image_Data (path ) for path in file_list ]
106
- increment = 0
107
- for image in image_list :
108
- image .image_modified_time_stamp = 4000.0 + increment
109
- mock_load_image .return_value = self ._generate_image ()
110
- self .imaging .show_live_viewer (self .live_directory )
111
- self .assertEqual (image .image_modified_time_stamp ,
112
- 4000.0 + increment ) # Add this line to check the label time
113
- self .imaging .live_viewer .presenter .model ._handle_image_changed_in_list (image_list )
114
- self .check_target (widget = self .imaging .live_viewer )
100
+ mock_load_image .return_value = self ._generate_image ()
101
+ self .imaging .show_live_viewer (self .live_directory )
102
+ self .imaging .live_viewer .presenter .model ._handle_image_changed_in_list (image_list )
103
+ self .assertEqual (self .imaging .live_viewer .file_time_label .text (), "1970-01-01 02:13:20" )
104
+ self .check_target (widget = self .imaging .live_viewer )
0 commit comments