Wie/wo teste ich am besten eigene Perl Funktion?

Begonnen von maddhin, 13 Oktober 2017, 13:05:16

Vorheriges Thema - Nächstes Thema

maddhin

Hi,

ich möchte via UserReading ein Reading umrechnen lassen und dazu eine eigene Funktion in die myutils Datei einfügen.

Da ich bisher keine Ahnung von Perl habe die Frage: wie kann ich die Funktion testen/erarbeiten ohne direkt in FHEM zu arbeiten? :)

Invers

Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

CoolTux

einfach eine Datei erstellen auf einem System welches Perl unterstützt

test.pl

Und dort rein Deinen Code einfügen

#!/usr/bin/perl
use strict;
use warnings;
use POSIX;
# use JSON;


my %paths = (   'statussoe'         => 'system_status/soe',
                'aggregates'        => 'meters/aggregates',
                'siteinfo'          => 'site_info',
                'sitemaster'        => 'sitemaster',
                'powerwalls'        => 'powerwalls'
);

my @commands;



while( my $obj = each %paths ) {
        unshift( @commands, $obj );
}


printf "\n@commands\n";


Ausführen mit

perl test.pl



Fertig



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Thorsten Pferdekaemper

Hi,
meine Frage wäre: Warum außerhalb FHEM? Vernünftigerweise sollte man sowieso immer ein kleines Testsystem haben, und wenn es eins auf einem Windows Laptop ist. Dort kann man dann wunderbar herumferkeln und sogar die Verwendung von FHEM-Funktionen testen.
Gruß,
   Thorsten
FUIP

CoolTux

Kleine Funktionen welche FHEM unabhängig agieren teste ich lieber außerhalb. Im obrigen Fall hatte ich bereits ein fertiges Modul und wollte etwas erweitern, war mir aber mal wieder unschlüssig wie genau.
Desweiteren fehlte mir das Endgeräte und ich hatte keine Lust einen Response zu emulieren. Viel zu aufwändig.
Also schnell mal die 3 Zeilen in eine kleine pl kopiert und schick ist.


Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

maddhin

Super, Leute! 3 wirklich hilfreiche Antworten!

Das mit dem Testsystem ist auch eine gute Überlegung - werde mir in Zukunft noch einen RPI besorgen um dort dann rumzuspielen und das "Produktivsystem" nicht zu gefährden. Eignet sich ja auch als Notfallsystem um dann schnell das Backup einzuspielen... Muss sowieso noch eine Lösung finden, wie FHEM "redundant" wird:)

DANKE!