Bedingten Ausführungen in JUnit @EnabledOnOs(value = OS.WINDOWS, disabledReason=““)

Das Ziel für JUnit Tests sollte es eigentlich sein, die Tests so zu schreiben das sie auf „allen“ Betriebssystemen laufen. Das geht leider nicht immer. Manchmal will man oder kann man einen JUnit Test nur auf einem bestimmten OS-System laufen lassen.

Z.B. der Test läuft nur unter Windows. Seit JUnit 5.1 (aktuell ist übrigens schon Version 5.10.0) gibt es da die Bedingten Ausführungen (conditional Executions, EnabledOnOs, DisabledOnOs). Mit diesen kann z.B. eine Testmethode nur unter Windows ausgeführt werden.

Toll … „Bedingten Ausführungen in JUnit @EnabledOnOs(value = OS.WINDOWS, disabledReason=““)“ weiterlesen

Fussball Weltmeisterschaft 2018: Was soll ich machen?

Wer kein Intresse an Fussball hat, kann ja diesen Tiobe.com Link anschauen. Dort sind die drei TOP Programmiersprachen: JAVA, C, C++ und JavaScript auf Platz 18. Mit den Sprachen kann man ja auch gut, den Raspberry Pi programmieren. Einige nutzen dazu auch Python das auf Plazt 4 gelandet ist. Die TOP drei sehe ich auch so: JAVA, C und C++. Obwohl ich noch C++ vor C setzen würde.

Oder einfach mal alles updaten. Apple kommt ja eben mit (macOS 10.13.6: EFI-Updates):

Oder Office mit Excel und Word ist auch möglich:

Oder Windows mit 1000 Sicherheitspatches oder E-Mail-Client Thunderbird: Mozilla bessert auch nach. Oder Adobe Patches 112 Vulnerabilities in Latest Patch Package (CVE-2018-5007).

Oder Urlaub planen.

Tor …

Suche alle Dateien rekursive mit Umlaute im Dateiname auf Win, Mac, Linux und Raspberry Pi und liefere die Anzahl

Manchmal will man oder muss man alle Dateien, die einen Umlaut im Dateinamen haben ermitteln. Mir ging es so, als in der Dropbox Dateien mit Umlauten bei einem Programm bei der Synchronisation Probleme machte.

Dann sollte das auch noch auf Mac OS X, Windows, Linux und auf einen Raspberry Pi mit Debian laufen. Also mal ein kleines Java Programm geschrieben, das alle Dateien mit Umlaute (äöüÖÄÜ) im Dateinamen und auch die Anzahl ausgibt.

Das Programm läuft unter Java, da es ab Version 1.7 eine neue Klasse SimpleFileVisitor gibt, von der man leicht erben kann habe ich die mal verwendet. Man kann aber auch selbst das Interface FileVisitor implementieren.

Einfach die Datei laden und das Zip-Archive entpacken. „Suche alle Dateien rekursive mit Umlaute im Dateiname auf Win, Mac, Linux und Raspberry Pi und liefere die Anzahl“ weiterlesen

Wie checkt man die Geschwindigkeiten von DNS-Servern und kann da was optimiert werden?

Das geht mit dem kostenlosen Programm namebench 1.3.1 für Mac und Windows.

Nach dem Downloaden und starten des Programms, erscheint eine einfach GUI. Hier können oben die eigenen DNS-Server Adressen eingegeben werden und dann klick auf Start. Nun dauert der Check einige Minuten und öffnet dann im Browser das Ergebnis mit einigen schönen Grafiken. Da kann man durch wechseln des DNS sein Internet Surfen mitunter beschleunigen.

Wenn das Ergebnis nicht im Browser geöffnet wird, kann es unter Mac im Verzeichnis separat geöffnet werden.

z.B.
//var/folders/bt/_4l4fvvn0s3332pr68td_m980000gn/T/namebench_2013-10-04_1713.html

Das Verzeichnis wo die Ergebnisse gespeichert werden, wird unten in der GUI für einige wenige Sekunden angezeigt.

Folgende Ergebnis Seiten werden z.B. generiert (gekürzt):

Gui namebench
Gui namebench

Bildschirmfoto 2013-10-04 um 17.22.05

Ergebnis Grafik
Ergebnis Grafik
Ergebnis Grafik
Ergebnis Grafik

Es gibt auch noch ein Command-line Version.

Wie kann auf einem WR-703N unter OpenWrt ein Server für USB tunnel per TCP eingerichtet werden?

Anleitung von OpenWrt „USB durch IP-Tunnel„.

Zuerst die USB Kernel Module und USBIP Server Package installieren mit:

opkg update
opkg install kmod-usb-ohci usbip-server

Dann die lokalen USB Geräte auflisten mit
usbip list -l
Bei mir wir diese Ausgabe geliefert:

[root@OpenWrt ~]# usbip list -l
Local USB devices
=================
- busid 1-1 (0451:1446)
1-1:1.0 -> hub

- busid 1-1.1 (0403:6001)
1-1.1:1.0 -> ftdi_sio

- busid 1-1.4 (090c:1000)
1-1.4:1.0 -> usb-storage

Wie man sieht, habe ich einen USB Hub, an diesem habe ich den Arduino Nano (ftdi_sio) und einen USB-Stick mit 8GB (usb-storage) angeschlossen.

In der Datei /etc/rc.local vor dem exit 0 diese Zeilen einfügen wenn der Server autom. gestartet werden soll. Evl. noch die BusID anpassen:

# TW Tunnelt den USB-Stick per TCP
usbipd -D &
sleep 1
usbip bind -b 1-1.4 # bindet die BusID vom USB Stick

Diese Methode habe ich aber erstmal nicht mehr verwendet da schon autom. ein Fhem-Server läuft.

Nach einem reboot kann mit netstat geschaut werden ob alles läuft.
netstat -alpt.

Siehe auch diese Anleitung

[root@OpenWrt ~]# usbip list -local
Local USB devices
=================
- busid 1-1 (0451:1446)
1-1:1.0 -> hub

- busid 1-1.1 (0403:6001)
1-1.1:1.0 -> ftdi_sio

- busid 1-1.4 (090c:1000)
1-1.4:1.0 -> usb-storage


[root@OpenWrt ~]# usbip bind -b 1-1.1
bind device on busid 1-1.1: complete


[root@OpenWrt ~]# lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0451:1446 Texas Instruments, Inc. TUSB2040/2070 Hub
Bus 001 Device 007: ID 090c:1000 Silicon Motion, Inc. - Taiwan (formerly Feiya Technology Corp.) 64MB QDI U2 DISK
Bus 001 Device 008: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
Bus 002 Device 001: I

Hab noch keinen USBIP Client für Mac OS X gefunden. Gibt es da einen der läuft?
Für Windows und Linux gibt es passende.

PAD Editor für den Mac und Windows

Unter Windows benutze ich seit langen den guten DeuPad-Editor.

Auf der suche nach einen PAD-Editor für den Mac, bin ich auf den Pad Fab gestoßen. Beide sind Freeware und tuen das was sie sollen. Das erstellen und bearbeiten von PAD-Dateien in der Version 3.11. Wer kennt noch einen besseren?