def test_get_incidents_rate_limited(self, mock_requests): mock_requests.return_value = Mock( headers={'x-ratelimit-reset': time.time()}) b = brottsplatskartan.BrottsplatsKartan() incidents = b.get_incidents() self.assertFalse(incidents)
def test_long_lat_parameters(self): b = brottsplatskartan.BrottsplatsKartan( longitude=58.22, latitude=10.01, ) self.assertEqual(b.parameters.get('lng'), 58.22) self.assertEqual(b.parameters.get('lat'), 10.01) self.assertEqual(b.url, BROTTS_URL + "/eventsNearby")
def test_get_incidents(self, mock_requests): data = self._get_incident_data() mock_requests.return_value = Mock(headers={'no': 'headers'}) mock_requests.return_value.json.return_value = data b = brottsplatskartan.BrottsplatsKartan() incidents = b.get_incidents() self.assertEqual(len(incidents), 1)
def setup_platform(hass, config, add_entities, discovery_info=None): """Set up the Brottsplatskartan platform.""" area = config.get(CONF_AREA) latitude = config.get(CONF_LATITUDE, hass.config.latitude) longitude = config.get(CONF_LONGITUDE, hass.config.longitude) name = config[CONF_NAME] # Every Home Assistant instance should have their own unique # app parameter: https://brottsplatskartan.se/sida/api app = f"ha-{uuid.getnode()}" bpk = brottsplatskartan.BrottsplatsKartan( app=app, area=area, latitude=latitude, longitude=longitude ) add_entities([BrottsplatskartanSensor(bpk, name)], True)
def test_areas_parameter(self): b = brottsplatskartan.BrottsplatsKartan(areas=["Stockholms län"]) self.assertEqual(b.parameters.get('areas'), ['Stockholms län']) self.assertEqual(b.url, BROTTS_URL + "/events")
def test_no_parameters(self): b = brottsplatskartan.BrottsplatsKartan() self.assertEqual(b.url, BROTTS_URL + "/events") self.assertEqual(b.parameters.get('areas'), ['Stockholms län']) self.assertEqual(b.parameters.get('app'), 'bpk')