diff --git a/Sanity/smoke/main.fmf b/Sanity/smoke/main.fmf new file mode 100644 index 0000000..b8ca632 --- /dev/null +++ b/Sanity/smoke/main.fmf @@ -0,0 +1,33 @@ +summary: List block devices and compare with lsblk output +description: '' +contact: Ondrej Mejzlik +component: + - python-pyudev +test: ./runtest.sh +framework: beakerlib +recommend: + - python-pyudev + - util-linux + - python36 +duration: 5m +enabled: true +tag: + - NoRHEL4 + - NoRHEL5 + - NoRHEL6 + - TIP_fedora_fail + - TIPfail_infra + - TIPpass + - TIPpass_Apps + - TIPpass_FIPS + - Tier1 + - rhel-buildroot +tier: '1' +adjust: + - enabled: false + when: distro < rhel-7 + continue: false +extra-nitrate: TC#0475612 +extra-summary: /CoreOS/python-pyudev/Sanity/smoke +extra-task: /CoreOS/python-pyudev/Sanity/smoke +id: 9b5e8117-bec3-4892-aa69-10ffdc189fc2 diff --git a/Sanity/smoke/runtest.sh b/Sanity/smoke/runtest.sh new file mode 100755 index 0000000..ba9ca9b --- /dev/null +++ b/Sanity/smoke/runtest.sh @@ -0,0 +1,63 @@ +#!/bin/bash +# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# runtest.sh of /CoreOS/python-pyudev/Sanity/smoke +# Description: List block devices and compare with lsblk output +# Author: Branislav Nater +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +# Copyright (c) 2015 Red Hat, Inc. +# +# This copyrighted material is made available to anyone wishing +# to use, modify, copy, or redistribute it subject to the terms +# and conditions of the GNU General Public License version 2. +# +# This program is distributed in the hope that it will be +# useful, but WITHOUT ANY WARRANTY; without even the implied +# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR +# PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public +# License along with this program; if not, write to the Free +# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +# Boston, MA 02110-1301, USA. +# +# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +# Include rhts environment +. /usr/share/beakerlib/beakerlib.sh || exit 1 + +PACKAGE=${PACKAGE:-python-pyudev} + +rlJournalStart + rlPhaseStartSetup + if rlIsRHEL '<=7'; then + rlAssertRpm $PACKAGE + else + rlAssertRpm "python3-pyudev" || rlDie "python3-pyudev not installed" + fi + rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" + rlRun "cp test.py test3.py $TmpDir" 0 "Copy test.py to $TmpDir" + rlRun "pushd $TmpDir" + rlPhaseEnd + + rlGetTestState && { + rlPhaseStartTest + if rlIsRHEL '<=7'; then + rlRun "python test.py | sort | tee pyudev_devices.txt" 0 "List block devices using pyudev" + else + rlRun "python3 test3.py | sort | tee pyudev_devices.txt" 0 "List block devices with pyudev3" + fi + rlRun "lsblk -lapno KNAME | sort -u | tee lsblk_devices.txt" 0 "List block devices using lsblk" + rlAssertNotDiffer pyudev_devices.txt lsblk_devices.txt + rlPhaseEnd + } + + rlPhaseStartCleanup + rlRun "popd" + rlRun "rm -r $TmpDir" 0 "Removing tmp directory" + rlPhaseEnd +rlJournalEnd +rlJournalPrintText diff --git a/Sanity/smoke/test.py b/Sanity/smoke/test.py new file mode 100644 index 0000000..fd26a55 --- /dev/null +++ b/Sanity/smoke/test.py @@ -0,0 +1,8 @@ +#!/usr/bin/python + +import pyudev + +context = pyudev.Context() +for device in context.list_devices(subsystem='block'): + print device.device_node + diff --git a/Sanity/smoke/test3.py b/Sanity/smoke/test3.py new file mode 100644 index 0000000..3a996e7 --- /dev/null +++ b/Sanity/smoke/test3.py @@ -0,0 +1,8 @@ +#!/usr/bin/python + +import pyudev + +context = pyudev.Context() +for device in context.list_devices(subsystem='block'): + print(device.device_node) +