def test_generate_command_uwsgi_service_option_nginx_conf_redhat( self, mock_os_path_isfile, mock_file, mock_env, mock_os_path_exists, mock_linux_distribution, mock_context): mock_args = mock.MagicMock() mock_args.type = GEN_UWSGI_SERVICE_OPTION mock_args.directory = None mock_os_path_isfile.return_value = False mock_env.side_effect = ['/foo/conda', 'conda_env'] mock_os_path_exists.return_value = True mock_linux_distribution.return_value = ['redhat'] # First open is for the Template, next two are for /etc/nginx/nginx.conf and /etc/passwd, and the final # open is to "write" out the resulting file. The middle two opens return information about a user, while # the first and last use MagicMock. handlers = (mock_file.return_value, mock.mock_open(read_data='user foo_user').return_value, mock.mock_open( read_data= 'foo_user:x:1000:1000:Foo User,,,:/foo/nginx:/bin/bash' ).return_value, mock_file.return_value) mock_file.side_effect = handlers generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_env.assert_any_call('CONDA_HOME') mock_env.assert_called_with('CONDA_ENV_NAME') mock_os_path_exists.assert_called_once_with('/etc/nginx/nginx.conf') context = mock_context().update.call_args_list[0][0][0] self.assertEqual('http-', context['user_option_prefix'])
def test_generate_command_uwsgi_service_option_nginx_conf_redhat(self, mock_os_path_isfile, mock_file, mock_env, mock_os_path_exists, mock_linux_distribution, mock_context): mock_args = mock.MagicMock() mock_args.type = GEN_UWSGI_SERVICE_OPTION mock_args.directory = None mock_os_path_isfile.return_value = False mock_env.side_effect = ['/foo/conda', 'conda_env'] mock_os_path_exists.return_value = True mock_linux_distribution.return_value = ['redhat'] # First open is for the Template, next two are for /etc/nginx/nginx.conf and /etc/passwd, and the final # open is to "write" out the resulting file. The middle two opens return information about a user, while # the first and last use MagicMock. handlers = (mock_file.return_value, mock.mock_open(read_data='user foo_user').return_value, mock.mock_open(read_data='foo_user:x:1000:1000:Foo User,,,:/foo/nginx:/bin/bash').return_value, mock_file.return_value) mock_file.side_effect = handlers generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_env.assert_any_call('CONDA_HOME') mock_env.assert_called_with('CONDA_ENV_NAME') mock_os_path_exists.assert_called_once_with('/etc/nginx/nginx.conf') context = mock_context().update.call_args_list[0][0][0] self.assertEqual('http-', context['user_option_prefix'])
def test_generate_command_nginx_service(self, mock_os_path_isfile, mock_file): mock_args = mock.MagicMock() mock_args.type = GEN_NGINX_SERVICE_OPTION mock_args.directory = None mock_os_path_isfile.return_value = False generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called()
def test_generate_command_settings_option(self, mock_os_path_isfile, mock_file): mock_args = mock.MagicMock() mock_args.type = GEN_SETTINGS_OPTION mock_args.directory = None mock_os_path_isfile.return_value = False generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called()
def test_generate_command_nginx_option(self, mock_os_path_isfile, mock_file, mock_settings): mock_args = mock.MagicMock() mock_args.type = GEN_NGINX_OPTION mock_args.directory = None mock_os_path_isfile.return_value = False mock_settings.side_effect = ['/foo/workspace', '/foo/static'] generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_settings.assert_any_call('TETHYS_WORKSPACES_ROOT') mock_settings.assert_called_with('STATIC_ROOT')
def test_generate_command_uwsgi_service_option(self, mock_os_path_isfile, mock_file, mock_env): mock_args = mock.MagicMock() mock_args.type = GEN_UWSGI_SERVICE_OPTION mock_args.directory = None mock_os_path_isfile.return_value = False mock_env.side_effect = ['/foo/conda', 'conda_env'] generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_env.assert_any_call('CONDA_HOME') mock_env.assert_called_with('CONDA_ENV_NAME')
def test_generate_command_uwsgi_settings_pre_existing_overwrite(self, mock_os_path_isfile, mock_file, mock_env): mock_args = mock.MagicMock() mock_args.type = GEN_UWSGI_SETTINGS_OPTION mock_args.directory = None mock_args.overwrite = True mock_os_path_isfile.return_value = True mock_env.side_effect = ['/foo/conda', 'conda_env'] generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_env.assert_any_call('CONDA_HOME') mock_env.assert_called_with('CONDA_ENV_NAME')
def test_generate_command_uwsgi_settings_pre_existing_overwrite( self, mock_os_path_isfile, mock_file, mock_env): mock_args = mock.MagicMock() mock_args.type = GEN_UWSGI_SETTINGS_OPTION mock_args.directory = None mock_args.overwrite = True mock_os_path_isfile.return_value = True mock_env.side_effect = ['/foo/conda', 'conda_env'] generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_env.assert_any_call('CONDA_HOME') mock_env.assert_called_with('CONDA_ENV_NAME')
def test_generate_command_uwsgi_settings_option_directory(self, mock_os_path_isfile, mock_file, mock_env, mock_os_path_isdir): mock_args = mock.MagicMock() mock_args.type = GEN_UWSGI_SETTINGS_OPTION mock_args.directory = '/foo/temp' mock_os_path_isfile.return_value = False mock_env.side_effect = ['/foo/conda', 'conda_env'] mock_os_path_isdir.return_value = True generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_os_path_isdir.assert_called_once_with(mock_args.directory) mock_env.assert_any_call('CONDA_HOME') mock_env.assert_called_with('CONDA_ENV_NAME')
def test_generate_command_asgi_service_option_directory(self, mock_os_path_isfile, mock_file, mock_env, mock_os_path_isdir): mock_args = mock.MagicMock() mock_args.type = GEN_ASGI_SERVICE_OPTION mock_args.directory = '/foo/temp' mock_os_path_isfile.return_value = False mock_env.side_effect = [8000, '/foo/conda', 'conda_env'] mock_os_path_isdir.return_value = True generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_os_path_isdir.assert_called_with(mock_args.directory) mock_env.assert_any_call('CONDA_HOME') mock_env.assert_called_with('CONDA_ENV_NAME')
def test_generate_command_asgi_service_option_distro(self, mock_os_path_isfile, mock_file, mock_env, mock_distribution): mock_args = mock.MagicMock() mock_args.type = GEN_ASGI_SERVICE_OPTION mock_args.directory = None mock_os_path_isfile.return_value = False mock_env.side_effect = [8000, '/foo/conda', 'conda_env'] mock_distribution.return_value = ('redhat', 'linux', '') generate_command(args=mock_args) mock_os_path_isfile.assert_called_once() mock_file.assert_called() mock_env.assert_any_call('TETHYS_PORT') mock_env.assert_any_call('CONDA_HOME') mock_env.assert_called_with('CONDA_ENV_NAME')