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
4 changes: 1 addition & 3 deletions src/services/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@
from __future__ import annotations

from services.collection_service import CollectionService, RequestLoadDict
from services.environment_service import (EnvironmentService, LocalOverride,
VariableDetail)
from services.environment_service import EnvironmentService, LocalOverride, VariableDetail
from services.import_service import ImportService

__all__ = [
Expand All @@ -21,4 +20,3 @@
"RequestLoadDict",
"VariableDetail",
]
]
32 changes: 23 additions & 9 deletions src/services/collection_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,30 @@
from typing import Any, TypedDict

from database.models.collections.collection_query_repository import (
count_collection_requests, fetch_all_collections,
get_collection_breadcrumb, get_collection_by_id,
get_recent_requests_for_collection, get_request_auth_chain,
get_request_breadcrumb, get_request_by_id, get_request_variable_chain,
get_saved_responses_for_request)
count_collection_requests,
fetch_all_collections,
get_collection_breadcrumb,
get_collection_by_id,
get_recent_requests_for_collection,
get_request_auth_chain,
get_request_breadcrumb,
get_request_by_id,
get_request_variable_chain,
get_saved_responses_for_request,
)
from database.models.collections.collection_repository import (
create_new_collection, create_new_request, delete_collection,
delete_request, rename_collection, rename_request, save_response,
update_collection, update_collection_parent, update_request,
update_request_collection)
create_new_collection,
create_new_request,
delete_collection,
delete_request,
rename_collection,
rename_request,
save_response,
update_collection,
update_collection_parent,
update_request,
update_request_collection,
)
from database.models.collections.model.collection_model import CollectionModel
from database.models.collections.model.request_model import RequestModel

Expand Down
34 changes: 18 additions & 16 deletions src/services/environment_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,14 @@
from typing import Any, TypedDict

from database.models.environments.environment_repository import (
create_environment, delete_environment, fetch_all_environments,
get_environment_by_id, rename_environment, update_environment_values)
from database.models.environments.model.environment_model import \
EnvironmentModel
create_environment,
delete_environment,
fetch_all_environments,
get_environment_by_id,
rename_environment,
update_environment_values,
)
from database.models.environments.model.environment_model import EnvironmentModel

logger = logging.getLogger(__name__)

Expand Down Expand Up @@ -181,8 +185,9 @@ def build_combined_variable_map(

Returns an empty dict if neither source provides variables.
"""
from database.models.collections.collection_query_repository import \
get_request_variable_chain
from database.models.collections.collection_query_repository import (
get_request_variable_chain,
)

# 1. Collection-level variables (inherited up the tree)
variables: dict[str, str] = {}
Expand All @@ -207,8 +212,9 @@ def build_combined_variable_detail_map(
whether it came from ``"collection"`` or ``"environment"``.
Environment variables take precedence over collection variables.
"""
from database.models.collections.collection_query_repository import \
get_request_variable_chain_detailed
from database.models.collections.collection_query_repository import (
get_request_variable_chain_detailed,
)

details: dict[str, VariableDetail] = {}

Expand Down Expand Up @@ -263,10 +269,8 @@ def _update_collection_variable(
) -> None:
"""Patch a single variable in a collection's variables list."""
from database.database import get_session
from database.models.collections.collection_repository import \
update_collection
from database.models.collections.model.collection_model import \
CollectionModel
from database.models.collections.collection_repository import update_collection
from database.models.collections.model.collection_model import CollectionModel

with get_session() as session:
coll = session.get(CollectionModel, collection_id)
Expand Down Expand Up @@ -353,10 +357,8 @@ def _add_collection_variable(
) -> None:
"""Append a new variable to a collection's variables list."""
from database.database import get_session
from database.models.collections.collection_repository import \
update_collection
from database.models.collections.model.collection_model import \
CollectionModel
from database.models.collections.collection_repository import update_collection
from database.models.collections.model.collection_model import CollectionModel

with get_session() as session:
coll = session.get(CollectionModel, collection_id)
Expand Down
4 changes: 1 addition & 3 deletions src/ui/main_window/variable_controller.py
Original file line number Diff line number Diff line change
Expand Up @@ -152,8 +152,7 @@ def _on_add_unresolved_variable(
request_id = ctx.request_id if ctx else None
if request_id is None:
return
from database.models.collections.collection_query_repository import \
get_request_by_id
from database.models.collections.collection_query_repository import get_request_by_id

req = get_request_by_id(request_id)
if req is None:
Expand All @@ -175,4 +174,3 @@ def _on_add_unresolved_variable(
tab_ctx.request_id,
tab_ctx.local_overrides,
)
)
22 changes: 16 additions & 6 deletions src/ui/request/request_editor/editor_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,23 @@
import json
from typing import TYPE_CHECKING

from PySide6.QtCore import (QModelIndex, QPersistentModelIndex, Qt, QTimer,
Signal)
from PySide6.QtCore import QModelIndex, QPersistentModelIndex, Qt, QTimer, Signal
from PySide6.QtGui import QColor, QKeySequence, QPalette, QShortcut
from PySide6.QtWidgets import (QComboBox, QFileDialog, QHBoxLayout, QLabel,
QPushButton, QRadioButton, QSizePolicy,
QStyledItemDelegate, QStyleOptionViewItem,
QTabWidget, QTextEdit, QVBoxLayout, QWidget)
from PySide6.QtWidgets import (
QComboBox,
QFileDialog,
QHBoxLayout,
QLabel,
QPushButton,
QRadioButton,
QSizePolicy,
QStyledItemDelegate,
QStyleOptionViewItem,
QTabWidget,
QTextEdit,
QVBoxLayout,
QWidget,
)

from ui.request.request_editor.auth import _AuthMixin
from ui.request.request_editor.body_search import _BodySearchMixin
Expand Down
27 changes: 20 additions & 7 deletions tests/unit/database/test_repository.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,27 @@
import pytest

from database.models.collections.collection_query_repository import (
count_collection_requests, fetch_all_collections,
get_collection_breadcrumb, get_collection_by_id,
get_recent_requests_for_collection, get_request_by_id,
get_request_variable_chain, get_request_variable_chain_detailed)
count_collection_requests,
fetch_all_collections,
get_collection_breadcrumb,
get_collection_by_id,
get_recent_requests_for_collection,
get_request_by_id,
get_request_variable_chain,
get_request_variable_chain_detailed,
)
from database.models.collections.collection_repository import (
create_new_collection, create_new_request, delete_collection,
delete_request, rename_collection, rename_request, update_collection,
update_collection_parent, update_request, update_request_collection)
create_new_collection,
create_new_request,
delete_collection,
delete_request,
rename_collection,
rename_request,
update_collection,
update_collection_parent,
update_request,
update_request_collection,
)


# ------------------------------------------------------------------
Expand Down
6 changes: 2 additions & 4 deletions tests/unit/services/test_import_service.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,8 @@
import json
from pathlib import Path

from database.models.collections.collection_query_repository import \
fetch_all_collections
from database.models.environments.environment_repository import \
fetch_all_environments
from database.models.collections.collection_query_repository import fetch_all_collections
from database.models.environments.environment_repository import fetch_all_environments
from services.import_service import ImportService


Expand Down