From f75f96da17e00e3758007b7cc7e8b55e8d54c2d3 Mon Sep 17 00:00:00 2001 From: Thomas Schultz Date: Wed, 14 Sep 2016 14:59:14 -0400 Subject: [PATCH] Return None if no vertices in Bounds. --- google/cloud/vision/entity.py | 2 +- google/cloud/vision/geometry.py | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/google/cloud/vision/entity.py b/google/cloud/vision/entity.py index d456abfe06409..3c8f810c37c77 100644 --- a/google/cloud/vision/entity.py +++ b/google/cloud/vision/entity.py @@ -55,7 +55,7 @@ def from_api_repr(cls, response): :rtype: :class:`~google.cloud.vision.entiy.EntityAnnotation` :returns: Instance of ``EntityAnnotation``. """ - bounds = Bounds.from_api_repr(response.get('boundingPoly', {})) + bounds = Bounds.from_api_repr(response.get('boundingPoly')) description = response['description'] locations = [LocationInformation.from_api_repr(location) for location in response.get('locations', [])] diff --git a/google/cloud/vision/geometry.py b/google/cloud/vision/geometry.py index f32ed61ecfc0d..4e6af390213d6 100644 --- a/google/cloud/vision/geometry.py +++ b/google/cloud/vision/geometry.py @@ -31,9 +31,12 @@ def from_api_repr(cls, response_vertices): :type response_vertices: dict :param response_vertices: List of vertices. - :rtype: :class:`~google.cloud.vision.geometry.BoundsBase` - :returns: Instance of BoundsBase with populated verticies. + :rtype: :class:`~google.cloud.vision.geometry.BoundsBase` or None + :returns: Instance of BoundsBase with populated verticies or None. """ + if not response_vertices: + return None + vertices = [Vertex(vertex.get('x', None), vertex.get('y', None)) for vertex in response_vertices.get('vertices', [])] return cls(vertices)