Best Python code snippet using slash
conftest.py
Source:conftest.py
...136 with tests_dir.join(filename).open('w', ensure=True) as f:137 f.write('def test_something():\n pass')138 return tests_dir139@pytest.fixture140def slash_session():141 return slash.Session()142@pytest.fixture143def test_loader():144 return Loader()145@pytest.fixture146def active_slash_session(request):147 returned = slash.Session()148 returned.__enter__()149 @request.addfinalizer150 def finalize(): # pylint: disable=unused-variable151 returned.__exit__(None, None, None)152 return returned153@pytest.fixture(params=["slashconf", "module"])154def defined_fixture(request, suite, suite_test):155 if request.param == 'slashconf':156 return suite.slashconf.add_fixture()157 elif request.param == 'module':158 return suite_test.file.add_fixture()159 raise NotImplementedError() # pragma: no cover160@pytest.fixture...
tmux_utils.py
Source:tmux_utils.py
1import sys2import os3import libtmux4import logbook5from ..exceptions import TmuxSessionNotExist, TmuxExecutableNotFound6from ..ctx import context7DEFAULT_SESSION_NAME = 'slash_session'8TMUX_EXECUTABLE_NAME = 'tmux'9MASTER_WINDOW_NAME = 'master'10_logger = logbook.Logger(__name__)11def which(program):12 def is_exe(fpath):13 return os.path.isfile(fpath) and os.access(fpath, os.X_OK)14 fpath, _ = os.path.split(program)15 if fpath:16 if is_exe(program):17 return program18 else:19 for path in os.environ["PATH"].split(os.pathsep):20 path = path.strip('"')21 exe_file = os.path.join(path, program)22 if is_exe(exe_file):23 return exe_file24 return None25def is_in_tmux():26 return os.environ.get('TMUX') is not None27def get_slash_tmux_session(session_name):28 try:29 tmux_server = libtmux.Server()30 return tmux_server.find_where({"session_name":session_name})31 except libtmux.exc.LibTmuxException:32 _logger.debug('No tmux server is running')33 return34def create_new_window(window_name, command):35 slash_session = get_slash_tmux_session(context.session.id)36 if not slash_session:37 raise TmuxSessionNotExist("Slash tmux session not found, can't create new window")38 return slash_session.new_window(attach=False, window_name=window_name, window_shell=command)39def create_new_pane(command):40 slash_session = get_slash_tmux_session(context.session.id)41 if not slash_session:42 raise TmuxSessionNotExist("Slash tmux session not found, can't create new window")43 new_pane = slash_session.attached_window.split_window(attach=False)44 new_pane.send_keys(command)45 return new_pane46def run_slash_in_tmux(command):47 tmux_session = get_slash_tmux_session(DEFAULT_SESSION_NAME)48 if tmux_session:49 tmux_session.set_option('remain-on-exit', True)50 libtmux.Server().switch_client(DEFAULT_SESSION_NAME)51 tmux_session.rename_session(context.session.id)52 else:53 path_to_tmux = which(TMUX_EXECUTABLE_NAME)54 if not path_to_tmux:55 _logger.error("Tmux executable not found", extra={'capture': False})56 raise TmuxExecutableNotFound("Tmux executable not found")57 command = ' '.join([sys.executable, '-m', 'slash.frontend.main', command.cmd] + command.argv)58 tmux_args = [path_to_tmux, 'new-session', '-s', DEFAULT_SESSION_NAME, '-n', MASTER_WINDOW_NAME]59 if is_in_tmux():60 tmux_args.append('-Ad')61 tmux_args.append(command)...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!