Skip to content

Commit 193a640

Browse files
authored
Merge branch 'main' into v3.4.0
2 parents 68695b0 + 39d41f0 commit 193a640

File tree

3 files changed

+46
-5
lines changed

3 files changed

+46
-5
lines changed
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
**Added:**
2+
3+
* Added `diffpy.structure.Structure.assign_unique_labels` in replace of `assignUniqueLabels`
4+
5+
**Changed:**
6+
7+
* <news item>
8+
9+
**Deprecated:**
10+
11+
* Deprecated `diffpy.structure.Structure.assignUniqueLabels` for removal in 4.0.0
12+
13+
**Removed:**
14+
15+
* <news item>
16+
17+
**Fixed:**
18+
19+
* <news item>
20+
21+
**Security:**
22+
23+
* <news item>

src/diffpy/structure/structure.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ def get_last_atom(self):
230230
last_atom = self[-1]
231231
return last_atom
232232

233-
def assignUniqueLabels(self):
233+
def assign_unique_labels(self):
234234
"""Set a unique label string for each `Atom` in this structure.
235235
236236
The label strings are formatted as "%(baresymbol)s%(index)i",
@@ -248,6 +248,16 @@ def assignUniqueLabels(self):
248248
islabeled.add(a)
249249
return
250250

251+
@deprecated(assignUniqueLabels_deprecation_msg)
252+
def assignUniqueLabels(self):
253+
"""This function has been deprecated and will be removed in
254+
version 4.0.0.
255+
256+
Please use diffpy.structure.Structure.assign_unique_labels
257+
instead.
258+
"""
259+
return self.assign_unique_labels()
260+
251261
def distance(self, aid0, aid1):
252262
"""Calculate distance between 2 `Atoms`, no periodic boundary
253263
conditions.

tests/test_structure.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -162,11 +162,19 @@ def test_assignUniqueLabels(self):
162162
self.assertEqual("C2", self.stru[1].label)
163163
return
164164

165+
def test_assign_unique_labels(self):
166+
"""Check Structure.assign_unique_labels()"""
167+
self.assertEqual("", "".join([a.label for a in self.stru]))
168+
self.stru.assign_unique_labels()
169+
self.assertEqual("C1", self.stru[0].label)
170+
self.assertEqual("C2", self.stru[1].label)
171+
return
172+
165173
def test_distance(self):
166174
"""Check Structure.distance()"""
167175
from math import sqrt
168176

169-
self.stru.assignUniqueLabels()
177+
self.stru.assign_unique_labels()
170178
self.assertRaises(IndexError, self.stru.distance, 333, "C1")
171179
self.assertRaises(IndexError, self.stru.distance, "C", "C1")
172180
self.assertAlmostEqual(sqrt(2.0), self.stru.distance(0, 1), self.places)
@@ -177,7 +185,7 @@ def test_distance(self):
177185
def test_angle(self):
178186
"""Check Structure.angle()"""
179187
cdse = Structure(filename=self.cdsefile)
180-
cdse.assignUniqueLabels()
188+
cdse.assign_unique_labels()
181189
self.assertEqual(109, round(cdse.angle(0, 2, 1)))
182190
self.assertEqual(109, round(cdse.angle("Cd1", "Se1", "Cd2")))
183191
return
@@ -281,7 +289,7 @@ def test___getitem__(self):
281289
cdse013.pop(2)
282290
self.assertEqual(cdse013, cdse[:2, 3].tolist())
283291
self.assertRaises(IndexError, cdse.__getitem__, "Cd1")
284-
cdse.assignUniqueLabels()
292+
cdse.assign_unique_labels()
285293
self.assertTrue(cdse[0] is cdse["Cd1"])
286294
cdse[0].label = "Hohenzollern"
287295
self.assertRaises(IndexError, cdse.__getitem__, "Cd1")
@@ -520,7 +528,7 @@ def test_label(self):
520528
"""Check Structure.label."""
521529
cdse = Structure(filename=self.cdsefile)
522530
self.assertEqual(4 * [""], cdse.label.tolist())
523-
cdse.assignUniqueLabels()
531+
cdse.assign_unique_labels()
524532
self.assertEqual("Cd1 Cd2 Se1 Se2".split(), cdse.label.tolist())
525533
cdse.label = cdse.label.lower()
526534
self.assertEqual("cd1 cd2 se1 se2".split(), cdse.label.tolist())

0 commit comments

Comments
 (0)