def test_selection_status_no_status(mock_data_client, user):
    mock_data_client.get_supplier_declaration.return_value = {'invalid': 'response'}
    user = {'supplier': {'supplierId': 1234}}

    assert selection_status(mock_data_client, 'g-cloud-7')(user)[0] == 'error-key-error'
def test_selection_status_no_answers(mock_data_client, user):
    mock_data_client.get_supplier_declaration.side_effect = HTTPError(mock.Mock(status_code=404))

    assert selection_status(mock_data_client, 'g-cloud-7')(user)[0] == 'unstarted'
def test_selection_status_http_error(mock_data_client, user):
    mock_data_client.get_supplier_declaration.side_effect = HTTPError(mock.Mock(status_code=503))

    assert selection_status(mock_data_client, 'g-cloud-7')(user)[0] == 'error-503'
def test_selection_status(mock_data_client, user):
    mock_data_client.get_supplier_declaration.return_value = {'declaration': {'status': 'complete'}}

    assert selection_status(mock_data_client, 'g-cloud-7')(user)[0] == 'complete'