public class MyClass { public static void main(String args[]) { System.out.println(UUID.fromString("1-1234567-33445566-a-b")); } } Wynik:
00000001-4567-5566-000a-00000000000b I weź to teraz wytłumacz, że w testach na to czy wejście jest poprawnie formatowane sobie możesz pogodę posprawdzać, bo na pewno nie UUID. ¯\(ツ)/¯
@smiech2: no i w czym problem? a wiesz że ping.exe w windowsie akceptuje też ipv4 w postaci surowego int32? ( ͡°͜ʖ͡°)
martwić bym sie zaczął dopiero jakby w zależności od platformy takie wejścia na granicy specyfikacji dawały różne wyniki, co raczej w tym przypadku nie ma miejscau
@smiech2: dalej nie rozumiem o co chodzi nie znam javy co powinna robic ta funkcja i dlaczego robi to źle? czy za każdym razem robi to samo? jesli tak to znaczy ze mozna testy napisać bo jest deterministyczna
@smiech2: Ale o co chodzi? Wysyłasz coś co zgodnie z RFC 9562 nie jest UUID i dziwisz się że masz undefined behavior. Ja jakbym to implementował to w takiej sytuacji rzuciłbym exceptionem, ale z racji tego że to biblioteka standardowa dlatego pewnie wprowadzili dopełnianie zerami żeby obsłużyć różne niezbyt poprawne outputy z innych systemów.
Taka ciekawostka:
import java.util.UUID;
public class MyClass {
public static void main(String args[]) {
System.out.println(UUID.fromString("1-1234567-33445566-a-b"));
}
}
Wynik:
00000001-4567-5566-000a-00000000000bI weź to teraz wytłumacz, że w testach na to czy wejście jest poprawnie formatowane sobie możesz pogodę posprawdzać, bo na pewno nie UUID. ¯\(ツ)/¯
martwić bym sie zaczął dopiero jakby w zależności od platformy takie wejścia na granicy specyfikacji dawały różne wyniki, co raczej w tym przypadku nie ma miejscau
Nie nie, wszystko jest w porządku... wrzucasz:
1-1234567-33445566-a-b
a dostajesz:
@Waffenek:
MOCKITO.mock() i CHWDP scrum masterowi