Skip to content

Commit

Permalink
Fixed first > get_first
Browse files Browse the repository at this point in the history
  • Loading branch information
gtalarico committed Oct 3, 2017
1 parent d13a82c commit a6d695d
Show file tree
Hide file tree
Showing 9 changed files with 26 additions and 27 deletions.
3 changes: 1 addition & 2 deletions notes.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
# Release Notes

### 1.8.0
### 1.7.2
* Fixed: Collector.get_element_ids() Typo
* Feature: Added deprecated methods to collections
* Fix XYZ can now take regular DB.XYZ


### 1.7.1
* Fix: Autodesk.Revit.Exceptions Circular Import (Dynamo)
* Fix: + Docs Fixes
Expand Down
2 changes: 1 addition & 1 deletion rpw/db/collection.py
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ def __bool__(self):
def __repr__(self, data=None):
return super(ElementSet, self).__repr__(data={'count': len(self)})

def first(self, wrapped=True):
def get_first(self, wrapped=True):
try:
first = self[0]
except IndexError:
Expand Down
4 changes: 2 additions & 2 deletions rpw/db/collector.py
Original file line number Diff line number Diff line change
Expand Up @@ -498,7 +498,7 @@ def select(self):
""" Selects Collector Elements on the UI """
Selection(self.element_ids)

def first(self, wrapped=True):
def get_first(self, wrapped=True):
"""
Returns first element or `None`
Expand All @@ -513,7 +513,7 @@ def first(self, wrapped=True):


# @property
# def first(self):
# def get_first(self):
# deprecate_warning('Collector.first', 'Collector.get_first()')
# return self.get_first(wrapped=False)

Expand Down
2 changes: 1 addition & 1 deletion rpw/utils/mixins.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ def by_name(cls, name):
<rpw:FillPatternElement name:Solid>
"""
e = cls.collect(where=lambda e: e.name.lower() == name.lower()).first()
e = cls.collect(where=lambda e: e.name.lower() == name.lower()).get_first()
if e:
return e
raise RpwCoerceError('by_name({})'.format(name), cls)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ def test_element_set_select(self):

def test_element_set_first(self):
rv = rpw.db.ElementSet(self.views)
self.assertEqual(rv.first(wrapped=False).Id, self.views[0].Id)
self.assertEqual(rv.get_first(wrapped=False).Id, self.views[0].Id)

def test_element_set_get_item(self):
rv = rpw.db.ElementSet(self.views)
Expand Down Expand Up @@ -208,7 +208,7 @@ def test_element_collection_select(self):

def test_element_collection_first(self):
rv = rpw.db.ElementCollection(self.views)
self.assertEqual(rv.first(wrapped=False).Id, self.views[0].Id)
self.assertEqual(rv.get_first(wrapped=False).Id, self.views[0].Id)

def test_element_collection_get_item(self):
rv = rpw.db.ElementCollection(self.views)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ def test_collector_len(self):

def test_collector_first(self):
x = self.collector_helper({'of_class': DB.View})
assert isinstance(x.first(wrapped=False), DB.View)
assert isinstance(x.get_first(wrapped=False), DB.View)

def test_collector_caster(self):
x = self.collector_helper({'of_class': DB.Wall}).elements[0]
Expand Down Expand Up @@ -157,18 +157,18 @@ def test_collector_is_view_dependent(self):
def tests_collect_rooms(self):
collector = rpw.db.Collector(of_category='OST_Rooms')
if collector:
self.assertIsInstance(collector.first(wrapped=False), DB.SpatialElement)
self.assertIsInstance(collector.get_first(wrapped=False), DB.SpatialElement)
collector = rpw.db.Collector(of_class='SpatialElement')
self.assertIsInstance(collector.first(wrapped=False), DB.Architecture.Room)
self.assertIsInstance(collector.get_first(wrapped=False), DB.Architecture.Room)

def test_collector_scope_elements(self):
""" If Collector scope is list of elements, should not find View"""
wall = rpw.db.Collector(of_class='Wall').first(wrapped=False)
wall = rpw.db.Collector(of_class='Wall').get_first(wrapped=False)
collector = rpw.db.Collector(elements=[wall], of_class='View')
self.assertEqual(len(collector), 0)

def test_collector_scope_element_ids(self):
wall = rpw.db.Collector(of_class='Wall').first(wrapped=False)
wall = rpw.db.Collector(of_class='Wall').get_first(wrapped=False)
collector = rpw.db.Collector(element_ids=[wall.Id], of_class='View')
self.assertEqual(len(collector), 0)

Expand Down Expand Up @@ -205,27 +205,27 @@ def setUpClass(cls):
def test_element_collector_wall(self):
walls = rpw.db.Wall.collect()
self.assertEqual(len(walls), 1)
self.assertIsInstance(walls.first(wrapped=False), DB.Wall)
self.assertIsInstance(walls.get_first(wrapped=False), DB.Wall)

def test_element_collector_wallsymbols(self):
wallsymbols = rpw.db.WallType.collect()
self.assertEqual(len(wallsymbols), 4)
self.assertIsInstance(wallsymbols.first(wrapped=False), DB.WallType)
self.assertIsInstance(wallsymbols.get_first(wrapped=False), DB.WallType)

def test_element_collector_Room(self):
rooms = rpw.db.Room.collect()
self.assertEqual(len(rooms), 2)
self.assertIsInstance(rooms.first(wrapped=False), DB.Architecture.Room)
self.assertIsInstance(rooms.get_first(wrapped=False), DB.Architecture.Room)

def test_element_collector_Area(self):
areas = rpw.db.Area.collect()
self.assertEqual(len(areas), 1)
self.assertIsInstance(areas.first(wrapped=False), DB.Area)
self.assertIsInstance(areas.get_first(wrapped=False), DB.Area)

def test_element_collector_AreaScheme(self):
areas = rpw.db.AreaScheme.collect()
self.assertEqual(len(areas), 2)
self.assertIsInstance(areas.first(wrapped=False), DB.AreaScheme)
self.assertIsInstance(areas.get_first(wrapped=False), DB.AreaScheme)


############################
Expand All @@ -239,7 +239,7 @@ def setUpClass(self):
logger.title('TESTING PARAMETER FILTER...')

def setUp(self):
self.wall = rpw.db.Collector(of_class='Wall').first(wrapped=False)
self.wall = rpw.db.Collector(of_class='Wall').get_first(wrapped=False)
self.wrapped_wall = rpw.db.Element(self.wall)
with rpw.db.Transaction('Set Comment'):
self.wrapped_wall.parameters['Comments'].value = 'Tests'
Expand Down Expand Up @@ -351,7 +351,7 @@ def tests_param_id_coerce(self):

def test_from_parameter_name(self):
""" Uses LooksUp Parameter from sample element """
level = rpw.db.Collector(of_category="OST_Levels", is_type=False).first(wrapped=False)
level = rpw.db.Collector(of_category="OST_Levels", is_type=False).get_first(wrapped=False)
parameter_filter = rpw.db.ParameterFilter.from_element_and_parameter(level, 'Name', ends='1')
col = rpw.db.Collector(of_category="OST_Levels", parameter_filter=parameter_filter)
self.assertEqual(len(col), 1)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ def setUpClass(cls):
logger.title('TESTING INSTANCES...')

def setUp(self):
instance = rpw.db.Collector(of_category='OST_Furniture', is_not_type=True).first(wrapped=False)
instance = rpw.db.Collector(of_category='OST_Furniture', is_not_type=True).get_first(wrapped=False)
self.instance = rpw.db.FamilyInstance(instance)

def tearDown(self):
Expand Down Expand Up @@ -274,7 +274,7 @@ def setUpClass(cls):
def setUp(self):
test_utils.delete_all_walls()
test_utils.make_wall()
wall = rpw.db.Collector(of_class='Wall', is_not_type=True).first(wrapped=False)
wall = rpw.db.Collector(of_class='Wall', is_not_type=True).get_first(wrapped=False)
self.wall = rpw.db.wall.Wall(wall)

def tearDown(self):
Expand Down Expand Up @@ -329,7 +329,7 @@ def test_wall_change_type_by_name(self):

def test_wall_change_type(self):
wall = self.wall
wall_type = rpw.db.Collector(of_class='WallType', where=lambda w: w.name == 'Wall 2').first(wrapped=False)
wall_type = rpw.db.Collector(of_class='WallType', where=lambda w: w.name == 'Wall 2').get_first(wrapped=False)
with rpw.db.Transaction():
wall.change_type('Wall 2')
self.assertEqual(wall.wall_type.name, 'Wall 2')
Expand All @@ -348,7 +348,7 @@ def setUpClass(cls):


def setUp(self):
room = rpw.db.Collector(os_category='OST_Rooms', is_not_type=True).first(wrapped=False)
room = rpw.db.Collector(os_category='OST_Rooms', is_not_type=True).get_first(wrapped=False)
self.wall = rpw.db.wall.Wall(wall)
#
# def test_wall_instance_wrap(self):
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ def setUpClass(self):
logger.title('TESTING COERCE FUNCITONS...')

def setUp(self):
self.wall = rpw.db.Collector(of_class='Wall').first(wrapped=False)
self.wall = rpw.db.Collector(of_class='Wall').get_first(wrapped=False)

def tearDown(self):
pass
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -208,9 +208,9 @@ def setUpClass(cls):
cls.wrapped_view = revit.active_view
cls.element = DB.FilteredElementCollector(revit.doc).OfClass(DB.FamilyInstance).WhereElementIsNotElementType().FirstElement()

linepattern = rpw.db.Collector(of_class='LinePatternElement', where=lambda x: x.Name == 'Dash').first()
linepattern = rpw.db.Collector(of_class='LinePatternElement', where=lambda x: x.Name == 'Dash').get_first()
cls.line_pattern_id = linepattern.Id
fillpattern = rpw.db.Collector(of_class='FillPatternElement', where=lambda x: x.Name == 'Horizontal').first()
fillpattern = rpw.db.Collector(of_class='FillPatternElement', where=lambda x: x.Name == 'Horizontal').get_first()
cls.fillpattern_id = fillpattern.Id

def tearDown(cls):
Expand Down

0 comments on commit a6d695d

Please sign in to comment.