Test unitari per D-Bus e HAL?
-
05-07-2019 - |
Domanda
Come si verifica un metodo che esegue alcune interazioni con il D-Bus locale (accedendo a un oggetto HAL)?
I risultati dei test differiranno a seconda del sistema su cui viene eseguito il test, quindi non so come fornire un metodo affidabile di input.
Sto lavorando in Python, comunque.
Soluzione
Se non riesci a deridere l'ambiente, probabilmente è impossibile per te scrivere il test. Se l'accesso a HAL / D-Bus avviene tramite un oggetto e si fornisce un'istanza finta al test, dovrebbe essere possibile emulare gli input necessari al test dall'implementazione fittizia.
Altri suggerimenti
È anche possibile creare bus D-Bus temporanei per i test ed emulare tutti i servizi utilizzati dal programma nel codice di test. È possibile utilizzare questo approccio per programmi che sono servizi D-Bus, client D-Bus o entrambi. Il rovescio della medaglia è che la configurazione del bus è un po 'pelosa. C'è per farlo in es Telepathy Gabble.