Skip to content

Commit 2a23150

Browse files
author
Steve Canny
committed
add RelationshipCollection.__getitem__()
1 parent 0f09af9 commit 2a23150

2 files changed

Lines changed: 14 additions & 0 deletions

File tree

opc/package.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,10 @@ def __init__(self, baseURI):
115115
super(RelationshipCollection, self).__init__()
116116
self._rels = []
117117

118+
def __getitem__(self, idx):
119+
"""Implements access by subscript, e.g. rels[9]"""
120+
return self._rels.__getitem__(idx)
121+
118122
def __len__(self):
119123
"""Implements len() built-in on this object"""
120124
return self._rels.__len__()

tests/test_package.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,16 @@ def it_has_a_len(self):
115115
rels = RelationshipCollection(None)
116116
assert len(rels) == 0
117117

118+
def it_supports_indexed_access(self):
119+
rels = RelationshipCollection(None)
120+
try:
121+
rels[0]
122+
except TypeError:
123+
msg = 'RelationshipCollection does not support indexed access'
124+
pytest.fail(msg)
125+
except IndexError:
126+
pass
127+
118128

119129
class DescribeUnmarshaller(object):
120130

0 commit comments

Comments
 (0)