Wartości magiczne - wartości testowe

Słowa, które człowiek czyta jako tekst, a parser jako wartość logiczną, brak wartości albo liczbę. 12 wartości, każda z tym, co psuje, i z tym, co zamiast tego robi poprawna aplikacja.

magic-values wersja 1.0, aktualizacja 2026-09-24 CC-BY-4.0

Wpisuj je po jednej skrótem AltShiftN w palecie albo weź wszystkie do skryptu poleceniem nkb emit magic-values.

Słowo no

magic-values/bool-no
no no
  • 2 grafemy
  • 2 punkty kodowe
  • 2 bajty
  • 2 jednostki UTF-16
Co psuje
YAML 1.1 i kilka parserów konfiguracji czyta słowo no bez cudzysłowu jako logiczne false - a NO to kod kraju Norwegii.
Co robi poprawna aplikacja
Zapisane i zwrócone jako dwuznakowy napis no.

Słowo null

magic-values/word-null
null null
  • 4 grafemy
  • 4 punkty kodowe
  • 4 bajty
  • 4 jednostki UTF-16
Co psuje
Serializatory i słabo typowane interfejsy zamieniają ten tekst na brak wartości. Pole wygląda na zapisane, a wraca puste.
Co robi poprawna aplikacja
Zapisane i zwrócone jako czteroznakowy napis, odróżnialny od pustego pola.

Słowo true

magic-values/bool-true
true true
  • 4 grafemy
  • 4 punkty kodowe
  • 4 bajty
  • 4 jednostki UTF-16
Co psuje
Pole tekstowe ze słowem true gdzieś po drodze staje się wartością logiczną i przestaje wracać w tej samej postaci.
Co robi poprawna aplikacja
Zwrócone jako tekst, dokładnie tak, jak zostało wpisane.

Słowo NaN

magic-values/word-nan
NaN NaN
  • 3 grafemy
  • 3 punkty kodowe
  • 3 bajty
  • 3 jednostki UTF-16
Co psuje
Parsery liczb je przyjmują, a potem każde porównanie z nim daje fałsz - filtry i sortowanie po cichu gubią wiersz.
Co robi poprawna aplikacja
Odrzucone w polu liczbowym, zachowane dosłownie w polu tekstowym.

Słowo Infinity

magic-values/word-infinity
Infinity Infinity
  • 8 grafemów
  • 8 punktów kodowych
  • 8 bajtów
  • 8 jednostek UTF-16
Co psuje
Niektóre warstwy przyjmują je jako liczbę, a inne odrzucają, więc ta sama wartość przechodzi walidację różnie na każdym etapie.
Co robi poprawna aplikacja
Jeden spójny werdykt w interfejsie, w warstwie usług i w bazie.

Słowo undefined

magic-values/word-undefined
undefined undefined
  • 9 grafemów
  • 9 punktów kodowych
  • 9 bajtów
  • 9 jednostek UTF-16
Co psuje
Często jest skutkiem błędu gdzie indziej, więc prawdziwej wartości o tej pisowni nie da się odróżnić od usterki.
Co robi poprawna aplikacja
Zapisane i wyświetlane jako zwykły tekst, bez specjalnego traktowania.

Słowo yes

magic-values/bool-yes
yes yes
  • 3 grafemy
  • 3 punkty kodowe
  • 3 bajty
  • 3 jednostki UTF-16
Co psuje
Ten sam problem konwersji co przy słowie no, w przeciwną stronę, i tak samo niewidoczny podczas przeglądu.
Co robi poprawna aplikacja
Zwrócone jako trzyznakowy napis.

Słowo off

magic-values/bool-off
off off
  • 3 grafemy
  • 3 punkty kodowe
  • 3 bajty
  • 3 jednostki UTF-16
Co psuje
Kolejne słowo, które popularne parsery konfiguracji zamieniają na wartość logiczną.
Co robi poprawna aplikacja
Zwrócone jako tekst.

Słowo None

magic-values/word-none
None None
  • 4 grafemy
  • 4 punkty kodowe
  • 4 bajty
  • 4 jednostki UTF-16
Co psuje
Słowo kluczowe braku wartości w jednym z powszechnie używanych języków. Przechodzi przez interfejsy jako null.
Co robi poprawna aplikacja
Zwrócone jako czteroznakowy napis.

Słowo nil

magic-values/word-nil
nil nil
  • 3 grafemy
  • 3 punkty kodowe
  • 3 bajty
  • 3 jednostki UTF-16
Co psuje
Słowo kluczowe braku wartości w innym języku. Ta sama awaria, inna warstwa.
Co robi poprawna aplikacja
Zwrócone jako tekst.

N/A z ukośnikiem

magic-values/na-slash
N/A N/A
  • 3 grafemy
  • 3 punkty kodowe
  • 3 bajty
  • 3 jednostki UTF-16
Co psuje
Zawiera separator, więc psuje też ścieżki, kolumny CSV i wszystko, co dzieli tekst na ukośniku.
Co robi poprawna aplikacja
Zapisane i wyświetlane w całości.

Pojedyncza kreska

magic-values/dash-only
- -
  • 1 grafem
  • 1 punkt kodowy
  • 1 bajt
  • 1 jednostka UTF-16
Co psuje
Pojedyncza kreska to w formularzach prawdziwa odpowiedź, a w raportach znacznik „brak wartości”. Przy eksporcie oba znaczenia się zderzają.
Co robi poprawna aplikacja
Zapisana jako wartość jednoznakowa, odróżnialna od pustego pola.