|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
From 0cc70f1c8a41260640dfc7a660c11bcb1a163419 Mon Sep 17 00:00:00 2001
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
From: Cleber Rosa <crosa@redhat.com>
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
Date: Thu, 3 May 2018 21:05:43 +0200
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
Subject: [PATCH] Replay with remote functional test: skip if remote plugin is
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
not available
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
When a plugin is not installed, its command line options are not
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
registered with the optparse based code. That is caught earlier than
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
Avocado's own handling of incompatible options (in this case, the replay
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
and the remote runner), and results in the errors such as:
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
avocado run: error: unrecognized arguments: --remote-hostname
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
When building RPM packages for Python 3, the remote runner plugin is
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
not available, and this test should be skipped.
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
Signed-off-by: Cleber Rosa <crosa@redhat.com>
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
---
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
selftests/functional/test_replay_basic.py | 14 +++++++++++++-
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
1 file changed, 13 insertions(+), 1 deletion(-)
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
diff --git a/selftests/functional/test_replay_basic.py b/selftests/functional/test_replay_basic.py
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
index 56f94d315..6eb944aa2 100644
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
--- a/selftests/functional/test_replay_basic.py
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+++ b/selftests/functional/test_replay_basic.py
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
@@ -1,9 +1,11 @@
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
import glob
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
import os
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
-import tempfile
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
import shutil
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+import tempfile
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
import unittest
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+import pkg_resources
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
from avocado.core import exit_codes
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
from avocado.utils import process
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
@@ -14,6 +16,14 @@
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
AVOCADO = os.environ.get("UNITTEST_AVOCADO_CMD", "./scripts/avocado")
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+def remote_capable():
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+ try:
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+ pkg_resources.require('avocado-framework-plugin-runner-remote')
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+ return True
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+ except pkg_resources.DistributionNotFound:
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+ return False
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
class ReplayTests(unittest.TestCase):
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
def setUp(self):
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
@@ -148,6 +158,8 @@ def test_run_replay_statusfail(self):
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
b'INTERRUPT 0')
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
self.assertIn(msg, result.stdout)
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+ @unittest.skipUnless(remote_capable(),
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
+ "Remote runner plugin is not available")
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
def test_run_replay_remotefail(self):
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
"""
|
|
![](https://seccdn.libravatar.org/avatar/c13b83ac5ee7239562a8e03c7a825a891225b79bf48c60a3239fde0804ccd4db?s=16&d=retro) |
c1a2b86 |
Runs a replay job using remote plugin (not supported).
|