Skip to content

Commit

Permalink
Use string_to_bool() from spinedb_api
Browse files Browse the repository at this point in the history
The version in spinedb_api accepts more strings like "yes" and "1".
  • Loading branch information
soininen committed Feb 5, 2025
1 parent 3de77d6 commit 62a0226
Show file tree
Hide file tree
Showing 6 changed files with 6 additions and 28 deletions.
14 changes: 0 additions & 14 deletions spinetoolbox/spine_db_editor/helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,20 +31,6 @@ def string_to_display_icon(x):

TRUE_STRING = "true"
FALSE_STRING = "false"
GENERIC_TRUE = TRUE_STRING.casefold()
GENERIC_FALSE = FALSE_STRING.casefold()


def string_to_bool(x):
"""Converts a 'foreign' string (from e.g. Excel) to boolean.
Args:
x (str): string to convert
Returns:
bool: boolean value
"""
return x.casefold() == GENERIC_TRUE


def table_name_from_item_type(item_type):
Expand Down
4 changes: 2 additions & 2 deletions spinetoolbox/spine_db_editor/widgets/add_items_dialogs.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,11 @@
QVBoxLayout,
QWidget,
)
from spinedb_api.helpers import name_from_dimensions, name_from_elements
from spinedb_api.helpers import name_from_dimensions, name_from_elements, string_to_bool
from ...helpers import DB_ITEM_SEPARATOR
from ...mvcmodels.compound_table_model import CompoundTableModel
from ...mvcmodels.minimal_table_model import MinimalTableModel
from ..helpers import string_to_bool, string_to_display_icon
from ..helpers import string_to_display_icon
from ..mvcmodels.empty_models import EmptyAddEntityOrClassRowModel
from .custom_delegates import ManageEntitiesDelegate, ManageEntityClassesDelegate
from .manage_items_dialogs import (
Expand Down
2 changes: 1 addition & 1 deletion spinetoolbox/spine_db_editor/widgets/custom_qtableview.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
from PySide6.QtCore import QItemSelection, QItemSelectionModel, QModelIndex, QPoint, Qt, QTimer, Signal, Slot
from PySide6.QtGui import QAction, QKeySequence
from PySide6.QtWidgets import QHeaderView, QMenu, QTableView, QWidget
from spinedb_api.helpers import string_to_bool
from ...helpers import DB_ITEM_SEPARATOR, preferred_row_height, rows_to_row_count_tuples
from ...plotting import (
ParameterTableHeaderSection,
Expand All @@ -26,7 +27,6 @@
from ...widgets.custom_qwidgets import TitleWidgetAction
from ...widgets.plot_widget import PlotWidget, prepare_plot_in_window_menu
from ...widgets.report_plotting_failure import report_plotting_failure
from ..helpers import string_to_bool
from ..mvcmodels.metadata_table_model_base import Column as MetadataColumn
from ..mvcmodels.pivot_table_models import (
ElementPivotTableModel,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,10 @@
"""Classes for custom QDialogs to edit items in databases."""
from PySide6.QtCore import Slot
from PySide6.QtWidgets import QComboBox, QTabWidget
from spinedb_api.helpers import string_to_bool
from ...helpers import DB_ITEM_SEPARATOR, default_icon_id
from ...mvcmodels.minimal_table_model import MinimalTableModel
from ..helpers import string_to_bool, string_to_display_icon
from ..helpers import string_to_display_icon
from .custom_delegates import ManageEntitiesDelegate, ManageEntityClassesDelegate, RemoveEntitiesDelegate
from .manage_items_dialogs import (
DialogWithButtons,
Expand Down
1 change: 0 additions & 1 deletion spinetoolbox/spine_db_editor/widgets/graph_view_mixin.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
from time import monotonic
from PySide6.QtCore import Qt, QThreadPool, QTimer, Slot
from PySide6.QtGui import QPen
from spinedb_api import from_database
from spinedb_api.parameter_value import IndexedValue, TimeSeries
from ...fetch_parent import FlexibleFetchParent
from ...helpers import busy_effect, get_open_file_name_in_last_dir, get_save_file_name_in_last_dir, remove_first
Expand Down
10 changes: 1 addition & 9 deletions tests/spine_db_editor/test_helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

"""Unit tests for Database editor's ``helpers`` module."""
import unittest
from spinetoolbox.spine_db_editor.helpers import string_to_bool, string_to_display_icon
from spinetoolbox.spine_db_editor.helpers import string_to_display_icon


class TestStringToDisplayIcon(unittest.TestCase):
Expand All @@ -22,13 +22,5 @@ def test_converts_correctly(self):
self.assertIsNone(string_to_display_icon("rubbish"))


class TestStringToBool(unittest.TestCase):
def test_converts_correctly(self):
self.assertTrue(string_to_bool("true"))
self.assertTrue(string_to_bool("TRUE"))
self.assertFalse(string_to_bool("false"))
self.assertFalse(string_to_bool(""))


if __name__ == "__main__":
unittest.main()

0 comments on commit 62a0226

Please sign in to comment.