Różnice między wybraną wersją a wersją aktualną.
Both sides previous revision Poprzednia wersja Nowa wersja | Poprzednia wersja Ostatnia wersja Both sides next revision | ||
pakietassert [2015/07/01 14:15] t.zoltak [Funkcje weryfikujące własności obiektów] |
pakietassert [2015/07/01 15:27] t.zoltak [Inne funkcje] |
||
---|---|---|---|
Linia 76: | Linia 76: | ||
Jeśli to czytasz, zapoznaj się z funkcją **is_if_conditon()**! | Jeśli to czytasz, zapoznaj się z funkcją **is_if_conditon()**! | ||
+ | |||
+ | **Uwaga:** Wszystkim opisanym poniżej funkcjom, z wyjątkiem [assert_]is_if_condition(), nie przeszkadza, jeśli obiekty zawierają pojedynczy brak danych (NA, lub wartości o podobnym znaczeniu: NaN, Inf, -Inf). Jeśli takiego przypadku nie dopuszczamy, należy go oddzielnie obsłużyć. | ||
^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ||
Linia 155: | Linia 157: | ||
^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ||
- | |_in_future | + | - | + | + | | + | |_in_future | + | - | + | + | |
- | |_in_past | + | - | + | + | | + | |_in_past | ::: | ::: | ::: | ::: | |
^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ||
- | |_divisible_by | + | - | + | + | | + | |_divisible_by | + | - | + | + | |
- | |_even | + | - | + | + | | + | |_even | ::: | ::: | ::: | ::: | |
- | |_finite | + | - | + | + | | + | |_finite | ::: | ::: | ::: | ::: | |
- | |_imaginary | + | - | + | + | | + | |_imaginary | ::: | ::: | ::: | ::: | |
- | |_in_closed_range | + | - | + | + | | + | |_in_closed_range | ::: | ::: | ::: | ::: | |
- | |_in_left_open_range | + | - | + | + | | + | |_in_left_open_range | ::: | ::: | ::: | ::: | |
- | |_in_open_range | + | - | + | + | | + | |_in_open_range | ::: | ::: | ::: | ::: | |
- | |_in_range | + | - | + | + | | + | |_in_range | ::: | ::: | ::: | ::: | |
- | |_in_right_open_range | + | - | + | + | | + | |_in_right_open_range | ::: | ::: | ::: | ::: | |
- | |_infinite | + | - | + | + | | + | |_infinite | ::: | ::: | ::: | ::: | |
- | |_nan | + | - | + | + | | + | |_nan | ::: | ::: | ::: | ::: | |
- | |_negative | + | - | + | + | | + | |_negative | ::: | ::: | ::: | ::: | |
- | |_negative_infinity | + | - | + | + | | + | |_negative_infinity | ::: | ::: | ::: | ::: | |
- | |_non_negative | + | - | + | + | | + | |_non_negative | ::: | ::: | ::: | ::: | |
- | |_non_positive | + | - | + | + | | + | |_non_positive | ::: | ::: | ::: | ::: | |
- | |_not_nan | + | - | + | + | | + | |_not_nan | ::: | ::: | ::: | ::: | |
- | |_numbers_are_whole_numbers | - | - | + | + | | + | |_numbers_are_whole_numbers | - | - | + | + | |
- | |_odd | + | - | + | + | | + | |_odd | + | - | + | + | |
- | |_percentage[s] | + | - | + | + | | + | |_percentage[s] | ::: | ::: | ::: | ::: | |
- | |_positive | + | - | + | + | | + | |_positive | ::: | ::: | ::: | ::: | |
- | |_positive_infinity | + | - | + | + | | + | |_positive_infinity | ::: | ::: | ::: | ::: | |
- | |_proportion[s] | + | - | + | + | | + | |_proportion[s] | ::: | ::: | ::: | ::: | |
- | |_real | + | - | + | + | | + | |_real | ::: | ::: | ::: | ::: | |
- | |_whole_number[s] | + | - | + | + | | + | |_whole_number[s] | ::: | ::: | ::: | ::: | |
^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ||
- | |_set_equal | + | + | - | - | | + | |_set_equal | + | + | - | - | |
- | |_subset | + | + | - | - | | + | |_subset | ::: | ::: | ::: | ::: | |
- | |_superset | + | + | - | - | | + | |_superset | ::: | ::: | ::: | ::: | |
====Ciągi znaków==== | ====Ciągi znaków==== | ||
- | =====Funkcje weryfikujące związane z systemem plików===== | ||
- | =====Funkcje weryfikujące związane z połączeniami ('connections')===== | ||
- | =====Funkcje weryfikujące związane ze środowiskiem ('enviroment')===== | ||
- | =====Funkcje weryfikujące związane z typem i możliwościami systemu===== | ||
- | =====Inne funkcje===== | ||
- | =====Argumenty, które powinny być jednoelementowe===== | ||
- | **Uwaga:** Wszystkim opisanym poniżej funkcjom nie przeszkadza, jeśli obiekty zawierają pojedynczy brak danych (NA, lub wartości o podobnym znaczeniu: NaN, Inf, -Inf). Jeśli takiego przypadku nie dopuszczamy, należy go oddzielnie obsłużyć. | + | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |
+ | |_date_string[s] | + | - | + | + | | ||
+ | |_hex_colour[s] | ::: | ::: | ::: | ::: | | ||
+ | |_ip_addresse[s] | ::: | ::: | ::: | ::: | | ||
+ | |_numeric_string[s] | ::: | ::: | ::: | ::: | | ||
+ | |_single_character[s] | ::: | ::: | ::: | ::: | | ||
+ | |_valid_r_code | + | - | - | - | | ||
+ | |_valid_variable_name[s] | + | - | + | + | | ||
- | * **use_first()**: | + | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |
- | * Funkcja zwraca pierwszy element obiektu, a jeśli miał ich więcej, dodatkowo pluje ostrzeżeniem. | + | |_cas_number[s] | + | - | + | + | |
- | * Uwagi: | + | |_credit_card_number[s] | ::: | ::: | ::: | ::: | |
- | * **Jeśli przekazywany obiekt jest listą**, to zostanie zwrócony jej pierwszy element, czym by nie był. Także o wyświetleniu lub nie ostrzeżenia decyduje długość samej listy (a nie struktura jej elementów). | + | |_email_addresse[s] | ::: | ::: | ::: | ::: | |
- | * **is_scalar()**: | + | |_honorific | + | - | - | - | |
- | * Sprawdza, czy obiekt jest skalarem (tj. długości jeden). | + | |_isbn_code[s] | + | - | + | + | |
- | * Funkcje **[assert_]is_a[n]_[...]**: | + | |_isbn10_code | + | - | - | - | |
- | * Funkcje testują, czy obiekt jest danego typu i **jednocześnie** jest skalarem (tj. długości jeden). | + | |_isbn13_code | ::: | ::: | ::: | ::: | |
- | * Funkcje 'is_a_[...]' zwracają, czy warunki są spełnione. | + | |_uk_car_licence[s] | + | - | + | + | |
- | * Funkcje 'assert_is_a_[...]' zwracają błędy, jeśli warunki nie są spełnione. | + | |_uk_national_insurance_number[s] | ::: | ::: | ::: | ::: | |
- | * Typy, które można testować obejmują: | + | |_uk_postcode[s] | ::: | ::: | ::: | ::: | |
- | * [assert_]is_a_bool - typ //logical//. | + | |_uk_telephone_number[s] | ::: | ::: | ::: | ::: | |
- | * [assert_]is_an_empty_string - pusty ciąg znaków (''). | + | |_us_telephone_number[s] | ::: | ::: | ::: | ::: | |
- | * [assert_]is_a_complex - typ //complex// (np. //1i//). | + | |_us_zip_code[s] | ::: | ::: | ::: | ::: | |
- | * [assert_]is_an_integer - typ //integer//. | + | =====Funkcje weryfikujące związane z systemem plików===== |
- | * [assert_]is_a_non_empty_string - niepusty ciąg znaków | + | |
- | * [assert_]is_a_number - typ //numeric// (//integer// lub //double//). | + | |
- | * [assert_]is_a_raw - typ //raw// (takie dziwne coś, p. //?raw//). | + | |
- | * [assert_]is_a_string - ciąg znaków. | + | |
- | ====Testowanie złożonych typów==== | + | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |
+ | |_dir[s] | + | - | + | + | | ||
+ | |_empty_file[s] | ::: | ::: | ::: | ::: | | ||
+ | |_executable_file[s] | ::: | ::: | ::: | ::: | | ||
+ | |_existing_file[s] | ::: | ::: | ::: | ::: | | ||
+ | |_readable_file[s] | ::: | ::: | ::: | ::: | | ||
+ | |_writable_file[s] | ::: | ::: | ::: | ::: | | ||
+ | =====Funkcje weryfikujące związane z połączeniami ('connections')===== | ||
- | ====Testowanie możliwości środowiska==== | + | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | |
+ | |_bzfile_connection | + | - | + | + | | ||
+ | |_connection | ::: | ::: | ::: | ::: | | ||
+ | |_fifo_connection | ::: | ::: | ::: | ::: | | ||
+ | |_file_connection | ::: | ::: | ::: | ::: | | ||
+ | |_gzfile_connection | ::: | ::: | ::: | ::: | | ||
+ | |_incomplete_connection | ::: | ::: | ::: | ::: | | ||
+ | |_open_connection | ::: | ::: | ::: | ::: | | ||
+ | |_pipe_connection | ::: | ::: | ::: | ::: | | ||
+ | |_readable_connection | ::: | ::: | ::: | ::: | | ||
+ | |_socket_connection | ::: | ::: | ::: | ::: | | ||
+ | |_stderr | ::: | ::: | ::: | ::: | | ||
+ | |_stdin | ::: | ::: | ::: | ::: | | ||
+ | |_stdout | ::: | ::: | ::: | ::: | | ||
+ | |_terminal_connection | ::: | ::: | ::: | ::: | | ||
+ | |_text_connection | ::: | ::: | ::: | ::: | | ||
+ | |_unz_connection | ::: | ::: | ::: | ::: | | ||
+ | |_url_connection | ::: | ::: | ::: | ::: | | ||
+ | |_writable_connection | ::: | ::: | ::: | ::: | | ||
+ | |_xzfile_connection | ::: | ::: | ::: | ::: | | ||
+ | =====Funkcje weryfikujące związane ze środowiskiem ('enviroment')===== | ||
+ | |||
+ | ^//dopełnienie// ^ is, are ^ assert_is ^ assert_all_are ^ assert_any_are | | ||
+ | |_batch_mode | + | + | - | - | | ||
+ | |_binding_locked | ::: | ::: | ::: | ::: | | ||
+ | |_comma_for_decimal_point | ::: | ::: | ::: | ::: | | ||
+ | |_debugged | ::: | ::: | ::: | ::: | | ||
+ | |_existing | + | - | + | + | | ||
+ | |_interactive | + | + | - | - | | ||
+ | |_loaded | ::: | ::: | ::: | ::: | | ||
+ | |_period_for_decimal_point | ::: | ::: | ::: | ::: | | ||
+ | =====Funkcje weryfikujące związane z typem i możliwościami systemu===== | ||
* Funkcje **[assert_]r_has_[...]_capabilities**. | * Funkcje **[assert_]r_has_[...]_capabilities**. | ||
Linia 235: | Linia 272: | ||
* [assert_]is_unix(); | * [assert_]is_unix(); | ||
* [assert_]is_windows(); | * [assert_]is_windows(); | ||
+ | =====Inne funkcje===== | ||
+ | |||
+ | * **use_first()**: | ||
+ | * Funkcja zwraca pierwszy element obiektu, a jeśli miał ich więcej, dodatkowo pluje ostrzeżeniem. | ||
+ | * Uwagi: | ||
+ | * **Jeśli przekazywany obiekt jest listą**, to zostanie zwrócony jej pierwszy element, czym by nie był. Także o wyświetleniu lub nie ostrzeżenia decyduje długość samej listy (a nie struktura jej elementów). | ||
+ | * **DIM()**: | ||
+ | * Funkcja zwraca liczbę wymiarów lub długość (jeśli obiekt nie ma wymiarów). | ||
+ | * **n_elements()**: | ||
+ | * Funkcja zwraca liczbę „atomowych” elementów obiektu (np. w przypadku macierzy - liczba komórek, w przypadku listy - długość wektora powstającego przez wywołanie na liście unlist()). | ||
+ | * **coerce_to()**: | ||
+ | * Funkcja przeprowadza rzutowanie typów (w sposób nieco bardziej bezpieczny niż funkcje rodziny as.[...]). | ||
+ | |||
+ |