Skip to content

Commit 970be82

Browse files
committed
Based on review comments
1 parent eed305f commit 970be82

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

folium/plugins/search.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from folium.elements import JSCSSMixin
44
from folium.features import FeatureGroup, GeoJson, TopoJson
5+
from folium.folium import Map
56
from folium.plugins import MarkerCluster
67
from folium.template import Template
78
from folium.utilities import remove_empty
@@ -123,9 +124,16 @@ def __init__(
123124
self.collapsed = collapsed
124125
self.options = remove_empty(**kwargs)
125126

126-
def render(self, **kwargs):
127-
super().render(**kwargs)
127+
def test_params(self, keys):
128+
if keys is not None and self.search_label is not None:
129+
assert self.search_label in keys, (
130+
f"The label '{self.search_label}' was not " f"available in {keys}" ""
131+
)
132+
assert isinstance(
133+
self._parent, Map
134+
), "Search can only be added to folium Map objects."
128135

136+
def render(self, **kwargs):
129137
if isinstance(self.layer, GeoJson):
130138
keys = tuple(self.layer.data["features"][0]["properties"].keys())
131139
elif isinstance(self.layer, TopoJson):
@@ -137,8 +145,6 @@ def render(self, **kwargs):
137145
) # noqa
138146
else:
139147
keys = None
148+
self.test_params(keys=keys)
140149

141-
if keys is not None and self.search_label is not None:
142-
assert self.search_label in keys, (
143-
f"The label '{self.search_label}' was not " f"available in {keys}" ""
144-
)
150+
super().render(**kwargs)

0 commit comments

Comments
 (0)