def METHOD_NAME(
    datasource_config_with_names: DatasourceConfig,
):
    context = FakeAbstractDataContext()
    # Make sure the fixture has the right configuration
    assert len(context.list_datasources()) == 0
    # add_datasource used to create a datasource object for use in save_datasource
    datasource_to_save = context.add_datasource(
        **datasource_config_with_names.to_json_dict(), save_changes=False
    )
    with mock.patch(
        "great_expectations.data_context.store.datasource_store.DatasourceStore.set",
        autospec=True,
        return_value=datasource_config_with_names,
    ) as mock_set, pytest.deprecated_call():
        context.save_datasource(datasource_to_save)
        assert len(context.list_datasources()) == 1
        assert len(context.datasources) == 1
        # Let's re-save
        context.save_datasource(datasource_to_save)
        # Make sure we still only have 1 datasource
        assert len(context.list_datasources()) == 1
        assert len(context.datasources) == 1
    assert mock_set.call_count == 2