Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 2 additions & 17 deletions mslib/mscolab/sockets_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@
import json
import logging
from flask import request
from flask_socketio import SocketIO, join_room, leave_room
from flask_socketio import SocketIO, join_room

from mslib.mscolab.chat_manager import ChatManager
from mslib.mscolab.file_manager import FileManager
from mslib.mscolab.models import MessageType, Permission, User
from mslib.mscolab.utils import get_message_dict
from mslib.mscolab.utils import get_session_id, get_user_id
from mslib.mscolab.utils import get_user_id
from mslib.mscolab.conf import mscolab_settings

socketio = SocketIO(logger=mscolab_settings.SOCKETIO_LOGGER, engineio_logger=mscolab_settings.ENGINEIO_LOGGER,
Expand Down Expand Up @@ -102,21 +102,6 @@ def join_creator_to_operation(self, json_config):
op_id = json_config['op_id']
join_room(str(op_id))

def join_collaborator_to_operation(self, u_id, op_id):
"""
json has:
- u_id: user id(collaborator's id)
- op_id: operation id
"""
s_id = get_session_id(self.sockets, u_id)
if s_id is not None:
join_room(str(op_id), sid=s_id)

def remove_collaborator_from_operation(self, u_id, op_id):
s_id = get_session_id(self.sockets, u_id)
if s_id is not None:
leave_room(str(op_id), sid=s_id)

def handle_start_event(self, json_config):
"""
json is a dictionary version of data sent to backend
Expand Down
15 changes: 0 additions & 15 deletions mslib/utils/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,21 +27,6 @@
"""

import logging
import os
import subprocess


def subprocess_startupinfo():
"""
config options to hide windows terminals on subprocess call
"""
startupinfo = None
if os.name == 'nt':
# thx to https://gist.github.com/nitely/3862493
startupinfo = subprocess.STARTUPINFO()
startupinfo.dwFlags = subprocess.CREATE_NEW_CONSOLE | subprocess.STARTF_USESHOWWINDOW
startupinfo.wShowWindow = subprocess.SW_HIDE
return startupinfo


class FatalUserError(Exception):
Expand Down
6 changes: 0 additions & 6 deletions mslib/utils/netCDF4tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -319,9 +319,3 @@ def __init__(self, files, exclude=None, skip_dim_check=None,
"NETCDF3_64BIT and NETCDF4_CLASSIC "
"formatted files, not NETCDF4")
self._file_format.append(dset.file_format)

def getOriginFile(self, varname):
"""Returns filename and NetCDF4.Dataset-instance of the file that
contains <varname>.
"""
return self._cdfOrigin[varname]
21 changes: 1 addition & 20 deletions mslib/utils/qt.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
import sys
import traceback

from fslib.fs_filepicker import getSaveFileName, getOpenFileName, getExistingDirectory
from fslib.fs_filepicker import getSaveFileName, getOpenFileName
from PyQt5 import QtCore, QtWidgets, QtGui # noqa

from mslib.utils.config import config_loader
Expand Down Expand Up @@ -64,11 +64,6 @@ def get_save_filename_qt(*args):
return _filename


def get_existing_directory_qt(*args):
dirname = QtWidgets.QFileDialog.getExistingDirectory(*args)
return dirname[0] if isinstance(dirname, tuple) else str(dirname)


def get_pickertype(pickertype=None):
if pickertype is None:
return config_loader(dataset="filepicker_default")
Expand Down Expand Up @@ -127,20 +122,6 @@ def get_save_filename(parent, title, filename, filt, pickertype=None):
return filename


def get_existing_directory(parent, title, defaultdir, pickertype=None):
pickertype = get_pickertype(pickertype)
if pickertype == "fs":
dirname = getExistingDirectory(parent, title=title, fs_url=defaultdir)[0]
elif pickertype in ["qt", "default"]:
dirname = get_existing_directory_qt(parent, title, defaultdir)
else:
raise FatalUserError(f"Unknown file picker type '{pickertype}'.")
logging.debug("Selected '%s'", dirname)
if dirname == "":
dirname = None
return dirname


def variant_to_string(variant):
if isinstance(variant, QtCore.QVariant):
return str(variant.value())
Expand Down
5 changes: 0 additions & 5 deletions mslib/utils/time.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,5 @@ def jsec_to_datetime(jsecs):
return JSEC_START + datetime.timedelta(seconds=jsecs)


def compute_hour_of_day(jsecs):
date = JSEC_START + datetime.timedelta(seconds=jsecs)
return date.hour + (date.minute / 60.) + (date.second / 3600.)


def utc_to_local_datetime(utc_datetime):
return utc_datetime.replace(tzinfo=datetime.timezone.utc).astimezone(tz=None)
22 changes: 0 additions & 22 deletions tests/_test_mscolab/test_sockets_manager.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@
from mslib.msui.icons import icons
from mslib.mscolab.conf import mscolab_settings
from mslib.mscolab.seed import add_user, get_user, add_operation, add_user_to_operation, get_operation
from mslib.mscolab.sockets_manager import SocketsManager
from mslib.mscolab.models import Permission, User, Message, MessageType


Expand Down Expand Up @@ -86,27 +85,6 @@ def test_join_creator_to_operatiom(self):
assert perms.u_id == self.user.id
assert perms.access_level == "creator"

def test_join_collaborator_to_operation(self):
self._connect()
operation = self._new_operation('new_operation', "example description")
sm = SocketsManager(self.cm, self.fm)
sm.join_collaborator_to_operation(self.anotheruser.id, operation.id)
perms = Permission(self.anotheruser.id, operation.id, "collaborator")
assert perms.op_id == operation.id
assert perms.u_id == self.anotheruser.id
assert perms.access_level == "collaborator"

def test_remove_collaborator_from_operation(self):
pytest.skip("get_session_id has None result")
operation = self._new_operation('new_operation', "example description")
sm = SocketsManager(self.cm, self.fm)
sm.join_collaborator_to_operation(self.anotheruser.id, operation.id)
perms = Permission(self.anotheruser.id, operation.id, "collaborator")
assert perms is not None
sm.remove_collaborator_from_operation(self.anotheruser.id, operation.id)
perms = Permission(self.anotheruser.id, operation.id, "collaborator")
assert perms is None

def test_active_user_tracking_and_emissions_on_operation_selection(self):
"""
Test that selecting an operation tracks the active user count appropriately
Expand Down
26 changes: 0 additions & 26 deletions tests/_test_utils/test_qt.py
Original file line number Diff line number Diff line change
Expand Up @@ -159,29 +159,3 @@ def test_save_filename():
with mock.patch("mslib.utils.qt.get_save_filename_qt", return_value=""):
_filename = mqt.get_save_filename(None, "", "", "", pickertype="qt")
assert _filename is None


def test_get_existing_directory():
dirname = "example"
with mock.patch("mslib.utils.qt.getExistingDirectory", return_value=[dirname]):
_dirname = mqt.get_existing_directory(None, "", "~/", pickertype="fs")
assert _dirname == dirname
with mock.patch("mslib.utils.qt.get_existing_directory_qt", return_value=dirname):
_dirname = mqt.get_existing_directory(None, "", "~/", pickertype="qt")
assert _dirname == dirname
with mock.patch("mslib.utils.qt.get_existing_directory_qt", return_value=""):
_dirname = mqt.get_existing_directory(None, "", "~/", pickertype="qt")
assert _dirname is None
with pytest.raises(FatalUserError) as exc_info:
_dirname = mqt.get_existing_directory(None, "", "~/", pickertype="unknown")
assert type(exc_info.value.__cause__) is FatalUserError


def test_get_existing_directory_qt():
dirname = "example"
with mock.patch("mslib.utils.qt.QtWidgets.QFileDialog.getExistingDirectory", return_value=(dirname, )):
_dirname = mqt.get_existing_directory_qt()
assert _dirname == dirname
with mock.patch("mslib.utils.qt.QtWidgets.QFileDialog.getExistingDirectory", return_value=dirname):
_dirname = mqt.get_existing_directory_qt()
assert _dirname == dirname
6 changes: 0 additions & 6 deletions tests/_test_utils/test_time.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,9 +53,3 @@ def test_jsec_to_datetime(self):
assert time.jsec_to_datetime(0) == datetime.datetime(2000, 1, 1, 0, 0, 0, 0)
assert time.jsec_to_datetime(3600) == datetime.datetime(2000, 1, 1, 1, 0, 0, 0)
assert time.jsec_to_datetime(-157766400.0) == datetime.datetime(1995, 1, 1, 0, 0, 0, 0)

def test_compute_hour_of_day(self):
assert time.compute_hour_of_day(0) == 0
assert time.compute_hour_of_day(86400) == 0
assert time.compute_hour_of_day(3600) == 1
assert time.compute_hour_of_day(82800) == 23
Loading