mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-06 23:48:53 +00:00
validate:launcher: Print the long help in less when possible
This commit is contained in:
parent
6309f8168a
commit
4c13ec7121
1 changed files with 18 additions and 3 deletions
|
@ -18,10 +18,12 @@
|
||||||
# Boston, MA 02110-1301, USA.
|
# Boston, MA 02110-1301, USA.
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
|
import sys
|
||||||
import utils
|
import utils
|
||||||
import urlparse
|
import urlparse
|
||||||
import loggable
|
import loggable
|
||||||
import argparse
|
import argparse
|
||||||
|
import tempfile
|
||||||
import reporters
|
import reporters
|
||||||
import subprocess
|
import subprocess
|
||||||
|
|
||||||
|
@ -29,9 +31,10 @@ import subprocess
|
||||||
from loggable import Loggable
|
from loggable import Loggable
|
||||||
from httpserver import HTTPServer
|
from httpserver import HTTPServer
|
||||||
from baseclasses import _TestsLauncher, ScenarioManager
|
from baseclasses import _TestsLauncher, ScenarioManager
|
||||||
from utils import printc, path2url, DEFAULT_MAIN_DIR, launch_command, Colors, Protocols
|
from utils import printc, path2url, DEFAULT_MAIN_DIR, launch_command, Colors, Protocols, which
|
||||||
|
|
||||||
|
|
||||||
|
LESS = "less"
|
||||||
HELP = '''
|
HELP = '''
|
||||||
|
|
||||||
===============================================================================
|
===============================================================================
|
||||||
|
@ -307,7 +310,7 @@ class LauncherConfig(Loggable):
|
||||||
|
|
||||||
def set_http_server_dir(self, path):
|
def set_http_server_dir(self, path):
|
||||||
if self.http_server_dir is not None:
|
if self.http_server_dir is not None:
|
||||||
princ("Server directory already set to %s" % self.http_server_dir)
|
printc("Server directory already set to %s" % self.http_server_dir)
|
||||||
return
|
return
|
||||||
|
|
||||||
self.http_server_dir = path
|
self.http_server_dir = path
|
||||||
|
@ -327,9 +330,15 @@ class LauncherConfig(Loggable):
|
||||||
|
|
||||||
|
|
||||||
def main(libsdir):
|
def main(libsdir):
|
||||||
|
if "--help" in sys.argv:
|
||||||
|
_help_message = HELP
|
||||||
|
else:
|
||||||
|
_help_message = "Use --help for the full help"
|
||||||
|
|
||||||
parser = argparse.ArgumentParser(
|
parser = argparse.ArgumentParser(
|
||||||
formatter_class=argparse.RawTextHelpFormatter,
|
formatter_class=argparse.RawTextHelpFormatter,
|
||||||
prog='gst-validate-launcher', description=HELP)
|
prog='gst-validate-launcher', description=_help_message)
|
||||||
|
|
||||||
parser.add_argument('testsuites', metavar='N', nargs='*',
|
parser.add_argument('testsuites', metavar='N', nargs='*',
|
||||||
help="""Lets you specify a file where the testsuite to execute is defined.
|
help="""Lets you specify a file where the testsuite to execute is defined.
|
||||||
|
|
||||||
|
@ -470,6 +479,12 @@ Note that all testsuite should be inside python modules, so the directory should
|
||||||
|
|
||||||
loggable.init("GST_VALIDATE_LAUNCHER_DEBUG", True, False)
|
loggable.init("GST_VALIDATE_LAUNCHER_DEBUG", True, False)
|
||||||
|
|
||||||
|
if _help_message == HELP and which(LESS):
|
||||||
|
tmpf = tempfile.NamedTemporaryFile()
|
||||||
|
|
||||||
|
parser.print_help(file=tmpf)
|
||||||
|
exit(os.system("%s %s" % (LESS, tmpf.name)))
|
||||||
|
|
||||||
tests_launcher = _TestsLauncher(libsdir)
|
tests_launcher = _TestsLauncher(libsdir)
|
||||||
tests_launcher.add_options(parser)
|
tests_launcher.add_options(parser)
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue