text: """Tests for OwnTracks config flow."""
  from unittest.mock import patch
  
  from homeassistant.setup import async_setup_component
  from tests.common import mock_coro
  
  
  async def test_config_flow_import(hass):
      """Test that we automatically create a config flow."""
      assert not hass.config_entries.async_entries('owntracks')
      assert await async_setup_component(hass, 'owntracks', {
          'owntracks': {
  
          }
      })
      await hass.async_block_till_done()
      assert hass.config_entries.async_entries('owntracks')
  
  
  async def test_config_flow_unload(hass):
      """Test unloading a config flow."""
      with patch('homeassistant.config_entries.ConfigEntries'
                 '.async_forward_entry_setup') as mock_forward:
          result = await hass.config_entries.flow.async_init(
              'owntracks', context={'source': 'import'},
              data={}
          )
  
      assert len(mock_forward.mock_calls) == 1
      entry = result['result']
  
      assert mock_forward.mock_calls[0][1][0] is entry
      assert mock_forward.mock_calls[0][1][1] == 'device_tracker'
      assert entry.data['webhook_id'] in hass.data['webhook']
  
      with patch('homeassistant.config_entries.ConfigEntries'
                 '.async_forward_entry_unload', return_value=mock_coro()
                 ) as mock_unload:
          assert await hass.config_entries.async_unload(entry.entry_id)
  
      assert len(mock_unload.mock_calls) == 1
      assert mock_forward.mock_calls[0][1][0] is entry
      assert mock_forward.mock_calls[0][1][1] == 'device_tracker'
      assert entry.data['webhook_id'] not in hass.data['webhook']
  
  
  async def test_with_cloud_sub(hass):
      """Test creating a config flow while subscribed."""
      with patch('homeassistant.components.cloud.async_active_subscription',
                 return_value=True), \
              patch('homeassistant.components.cloud.async_create_cloudhook',
                    return_value=mock_coro('https://hooks.nabu.casa/ABCD')):
          result = await hass.config_entries.flow.async_init(
              'owntracks', context={'source': 'user'},
              data={}
          )
  
      entry = result['result']
      assert entry.data['cloudhook']
      assert result['description_placeholders']['webhook_url'] == \
          'https://hooks.nabu.casa/ABCD'
  