From Fedora Project Wiki
Description
Avahi is a system that facilitates service discovery on a local network via the mDNS/DNS-SD protocol suite. avahi-glib provides Glib integration for Avahi, and avahi-libs contains the libraries needed for Avahi tools and for other applications to integrate Avahi functionalities.This test case ensures that the avahi
, avahi-glib
, and avahi-libs
work correctly for local network service discovery and Glib integration.
Setup
- Ensure you have two Fedora systems on the same local network (System A and System B).
- Install the
avahi
,avahi-glib
, andavahi-libs
packages on both systems:sudo dnf install avahi avahi-glib avahi-libs
. - Start the Avahi daemon on both systems:
sudo systemctl start avahi-daemon
.
How to test
- On System A:
- Publish a test service:
avahi-publish-service TestService _test._tcp 12345 "This is a test"
. - On System B:
- Browse for services:
avahi-browse _test._tcp
. - Verify that the service published by System A appears in the list on System B.
- On System B:
- Write a small test application or script that uses Glib integration (via
avahi-glib
) to discover services on the local network. This might require basic programming knowledge. - Run the test application or script and verify that it can discover the service published by System A.
- On both systems:
- Ensure that any application or tools depending on
avahi-libs
function without errors related to Avahi functionalities.
Expected Results
- The
avahi-publish-service
should publish the test service without errors on System A. - On System B, the
avahi-browse
command should display the service published by System A. - The test application or script using
avahi-glib
on System B should successfully discover the service published by System A. - Any operations or tools dependent on
avahi-libs
should run without errors.
Optional
For deeper testing:
- Experiment with different types of services using Avahi.
- Test the behavior when the Avahi daemon is restarted or stops unexpectedly.
- Check the integration of Avahi with other applications that utilize mDNS/DNS-SD.
- Ensure that the Avahi Glib integration works with more complex Glib-based applications.