Skip to content
Open
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: 19 additions & 0 deletions lightspark/__tests__/test_remote_signing.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright ©, 2026-present, Lightspark Group, Inc. - All Rights Reserved

from lightspark import (
LightsparkSyncClient,
PositiveValidator,
RemoteSigningWebhookEventHandler,
)


class TestRemoteSigning:
def test_master_seed_not_in_repr(self) -> None:
client = LightsparkSyncClient("", "")
handler = RemoteSigningWebhookEventHandler(
client=client,
master_seed=b"1234",
validator=PositiveValidator(),
)

assert "1234" not in repr(handler)
19 changes: 6 additions & 13 deletions lightspark/remote_signing.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
from typing import Any
from dataclasses import dataclass
from dataclasses import dataclass, field
import json
import lightspark_crypto as lsc
import lightspark
Expand All @@ -14,21 +14,14 @@ def should_sign(webhook: Any) -> bool: # ty:ignore[invalid-method-override]
@dataclass
class RemoteSigningWebhookEventHandler:
client: lightspark.LightsparkSyncClient
master_seed: bytes
master_seed: bytes = field(repr=False)
validator: lsc.Validation

def __init__(
self,
client: lightspark.LightsparkSyncClient,
master_seed: bytes,
validator: lsc.Validation,
):
self.client = client
self.master_seed = master_seed
self.validator = validator

def handle_remote_signing_webhook_request(
self, data: bytes, hexdigest: str, webhook_secret: str
self,
data: bytes,
hexdigest: str,
webhook_secret: str,
):
response = lsc.handle_remote_signing_webhook_event(
data, hexdigest, webhook_secret, self.master_seed, self.validator
Expand Down
Loading