@@ -60,26 +60,109 @@ def test_01_maintenance_equipment_sequence(self):
60
60
equipment_1 .write ({"serial_no" : False })
61
61
self .assertEqual (equipment_1 .serial_no , "TTC0002" )
62
62
63
- def test_02_maintenance_equipment_sequence (self ):
64
- """Create an equipment category linked to a default sequence with a prefix,
65
- and verify that the category correctly inherits the sequence prefix.
66
- """
67
- # Create a sequence
68
- seq_1 = self .sequence_obj .create (
63
+ def test_02_compute_seq_number_next (self ):
64
+ """Test Compute 'sequence_number_next' according to the current sequence in use,
65
+ an ir.sequence or an ir.sequence.date_range."""
66
+
67
+ sequence = self .sequence_obj .create (
69
68
{
70
69
"name" : "Test Sequence" ,
71
- "implementation" : "no_gap" ,
72
- "prefix" : "TTC_TEST" ,
73
- "padding" : 4 ,
70
+ "prefix" : "TST" ,
71
+ "padding" : 3 ,
72
+ "number_next" : 5 ,
73
+ "use_date_range" : False ,
74
+ }
75
+ )
76
+
77
+ category = self .maintenance_equipment_categ_obj .create (
78
+ {
79
+ "name" : "Test Category with Sequence" ,
80
+ "sequence_id" : sequence .id ,
81
+ }
82
+ )
83
+
84
+ category ._compute_seq_number_next ()
85
+ self .assertEqual (category .sequence_number_next , 5 )
86
+
87
+ sequence .write ({"number_next_actual" : 10 })
88
+ category ._compute_seq_number_next ()
89
+ self .assertEqual (category .sequence_number_next , 10 )
90
+
91
+ category_no_seq = self .maintenance_equipment_categ_obj .create (
92
+ {
93
+ "name" : "Test Category without Sequence" ,
94
+ }
95
+ )
96
+
97
+ category_no_seq ._compute_seq_number_next ()
98
+ self .assertEqual (category_no_seq .sequence_number_next , 1 )
99
+
100
+ def test_03_create_with_existing_sequence (self ):
101
+ """Test def create(self, vals):"""
102
+
103
+ existing_sequence = self .sequence_obj .create (
104
+ {
105
+ "name" : "Existing Sequence" ,
106
+ "prefix" : "EXS" ,
107
+ "padding" : 3 ,
74
108
"number_increment" : 1 ,
75
109
"use_date_range" : False ,
76
110
}
77
111
)
78
- # Create an equipment category linked to the sequence
79
- categ_1 = self .maintenance_equipment_categ_obj .create (
112
+
113
+ category_with_seq = self .maintenance_equipment_categ_obj .create (
80
114
{
81
- "name" : "Test Category 0 " ,
82
- "sequence_id" : seq_1 .id ,
115
+ "name" : "Category with Existing Sequence " ,
116
+ "sequence_id" : existing_sequence .id ,
83
117
}
84
118
)
85
- self .assertEqual (categ_1 .sequence_prefix , seq_1 .prefix )
119
+
120
+ self .assertEqual (category_with_seq .sequence_prefix , "EXS" )
121
+ self .assertEqual (category_with_seq .sequence_id .id , existing_sequence .id )
122
+
123
+ def test_04_compute_equipment_code (self ):
124
+ """Test def _compute_equipment_code(self):"""
125
+
126
+ seq_01 = self .sequence_obj .create (
127
+ {
128
+ "name" : "Test Sequence" ,
129
+ "prefix" : "TST" ,
130
+ "padding" : 3 ,
131
+ "number_increment" : 1 ,
132
+ "use_date_range" : False ,
133
+ }
134
+ )
135
+
136
+ cat_01 = self .maintenance_equipment_categ_obj .create (
137
+ {"name" : "Test Category" , "sequence_id" : seq_01 .id }
138
+ )
139
+
140
+ equipment_01 = self .env ["maintenance.equipment" ].create (
141
+ {
142
+ "name" : "Test Equipment 1" ,
143
+ "category_id" : cat_01 .id ,
144
+ "serial_no" : False ,
145
+ }
146
+ )
147
+
148
+ equipment_02 = self .env ["maintenance.equipment" ].create (
149
+ {
150
+ "name" : "Test Equipment 2" ,
151
+ "category_id" : cat_01 .id ,
152
+ "serial_no" : False ,
153
+ }
154
+ )
155
+
156
+ equipment_03 = self .env ["maintenance.equipment" ].create (
157
+ {
158
+ "name" : "Test Equipment 3" ,
159
+ "category_id" : False ,
160
+ "serial_no" : False ,
161
+ }
162
+ )
163
+ self .assertEqual (equipment_01 .serial_no , "TST001" )
164
+ self .assertEqual (equipment_02 .serial_no , "TST002" )
165
+ self .assertFalse (equipment_03 .serial_no )
166
+
167
+ equipment_03 .write ({"category_id" : cat_01 .id })
168
+ self .assertEqual (equipment_03 .serial_no , "TST003" )
0 commit comments