PID tests

Modul tests.

Přehled modulu

Testy aplikace PID.

Třídy

class DoiAutocompleteViewApiCallTest

Testy metody api_call třídy DoiAutocompleteView.

Metody:

test_title_search_returns_doi_wildcard_results_first()

Výsledky DOI wildcard dotazu jsou vráceny jako první.

Parametry:
  • mock_doi – Mock pro _api_call_data_cite_doi.

  • mock_title – Mock pro _api_call_data_cite.

  • mock_crossref – Mock pro _api_call_cross_ref_title.

  • mock_exists – Mock pro _doi_item_exists.

test_title_search_result_order_doi_then_title_then_crossref()

Pořadí výsledků: DOI wildcard, DataCite název, CrossRef název.

Parametry:
  • mock_doi – Mock pro _api_call_data_cite_doi.

  • mock_title – Mock pro _api_call_data_cite.

  • mock_crossref – Mock pro _api_call_cross_ref_title.

  • mock_exists – Mock pro _doi_item_exists.

test_duplicates_are_removed_keeping_first_occurrence()

Duplicitní DOI jsou odstraněna; zachová se první výskyt.

Parametry:
  • mock_doi – Mock pro _api_call_data_cite_doi.

  • mock_title – Mock pro _api_call_data_cite.

  • mock_crossref – Mock pro _api_call_cross_ref_title.

  • mock_exists – Mock pro _doi_item_exists.

test_doi_format_input_uses_crossref_doi_path()

Vstup ve formátu DOI volá _api_call_cross_ref_doi a přeskočí async volání.

Parametry:
  • mock_dc_doi – Mock pro _api_call_data_cite_doi.

  • mock_dc_title – Mock pro _api_call_data_cite.

  • mock_cr_title – Mock pro _api_call_cross_ref_title.

  • mock_cr_doi – Mock pro _api_call_cross_ref_doi.

  • mock_exists – Mock pro _doi_item_exists.

test_doi_format_with_no_crossref_result_falls_back_to_async()

Pokud _api_call_cross_ref_doi vrátí prázdný seznam, provedou se async volání.

Parametry:
  • mock_dc_doi – Mock pro _api_call_data_cite_doi.

  • mock_dc_title – Mock pro _api_call_data_cite.

  • mock_cr_title – Mock pro _api_call_cross_ref_title.

  • mock_cr_doi – Mock pro _api_call_cross_ref_doi.

  • mock_exists – Mock pro _doi_item_exists.

test_doi_item_exists_prepended_when_exact_doi_not_in_results()

Pokud výsledky neobsahují přesné DOI, je zavoláno _doi_item_exists a výsledek přidán na začátek.

Parametry:
  • mock_dc_doi – Mock pro _api_call_data_cite_doi.

  • mock_dc_title – Mock pro _api_call_data_cite.

  • mock_cr_title – Mock pro _api_call_cross_ref_title.

  • mock_exists – Mock pro _doi_item_exists.

test_empty_query_returns_empty_list()

Prázdný nebo jen mezerami tvořený dotaz vrátí prázdný seznam bez volání backendu.

Parametry:
  • mock_dc_doi – Mock pro _api_call_data_cite_doi.

  • mock_dc_title – Mock pro _api_call_data_cite.

  • mock_cr_title – Mock pro _api_call_cross_ref_title.

  • mock_exists – Mock pro _doi_item_exists.

test_none_query_returns_empty_list()

None jako dotaz vrátí prázdný seznam bez volání backendu.

Parametry:
  • mock_dc_doi – Mock pro _api_call_data_cite_doi.

  • mock_dc_title – Mock pro _api_call_data_cite.

  • mock_cr_title – Mock pro _api_call_cross_ref_title.

  • mock_exists – Mock pro _doi_item_exists.

class WikiDataAutocompleteViewApiCallTest

Testy metody api_call a pomocných metod třídy WikiDataAutocompleteView.

Metody:

test_exact_qid_routes_to_item_lookup()

Dotaz tvořený pouze identifikátorem Q se ověří přes _get_item_result.

Parametry:
  • mock_item – Mock pro _get_item_result.

  • mock_search – Mock pro _search_humans.

Volný text obsahující Q s číslicemi se vyhledává podle jména, ne podle identifikátoru.

Parametry:
  • mock_item – Mock pro _get_item_result.

  • mock_search – Mock pro _search_humans.

test_entity_url_routes_to_item_lookup()

URL entity Wikidata se převede na identifikátor a ověří přes _get_item_result.

Parametry:
  • mock_item – Mock pro _get_item_result.

  • mock_search – Mock pro _search_humans.

test_empty_query_returns_empty_list()

Prázdný dotaz vrátí prázdný seznam bez volání backendu.

Parametry:
  • mock_item – Mock pro _get_item_result.

  • mock_search – Mock pro _search_humans.

test_whitespace_only_query_returns_empty_list()

Dotaz tvořený jen mezerami vrátí prázdný seznam bez volání backendu.

Parametry:
  • mock_item – Mock pro _get_item_result.

  • mock_search – Mock pro _search_humans.

test_search_language_request_error_returns_empty_list()

Chyba spojení při vyhledávání vrátí prázdný seznam místo výjimky.

test_search_language_non_dict_payload_returns_empty_list()

Neslovníková JSON odpověď vyhledávání vrátí prázdný seznam místo výjimky.

test_item_is_human_request_error_returns_false()

Chyba spojení při ověření výroku P31 se vyhodnotí jako False.

test_check_availability_raises_on_connection_error()

Kontrola dostupnosti propaguje chybu spojení volajícímu.

Parametry:

mock_get – Mock pro requests.get.

test_check_availability_raises_on_http_error()

Kontrola dostupnosti vyhazuje výjimku při chybovém stavovém kódu.

Parametry:

mock_get – Mock pro requests.get.

test_check_availability_passes_on_success()

Kontrola dostupnosti při úspěšné odpovědi nevyhazuje výjimku.

Parametry:

mock_get – Mock pro requests.get.