refactor: use quartz event builders in CallManager test helpers
Replace manual tag assembly in test helpers (makeOffer, makeAnswer, etc.) with the existing build() methods from quartz event classes. This keeps test tag structures in sync with production code automatically. https://claude.ai/code/session_01AfRYTRCvtKqqDxeKQujUrx
This commit is contained in:
+21
-61
@@ -98,6 +98,10 @@ class CallManagerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ---- Event construction helpers ----
|
// ---- Event construction helpers ----
|
||||||
|
// These use the real event builders from quartz so that tag structures
|
||||||
|
// stay in sync with the production code. The builder returns an
|
||||||
|
// EventTemplate (no pubKey/id/sig); we wrap the template fields into
|
||||||
|
// a concrete event instance with a test pubKey and dummy id/sig.
|
||||||
|
|
||||||
private var eventCounter = 0
|
private var eventCounter = 0
|
||||||
|
|
||||||
@@ -109,14 +113,8 @@ class CallManagerTest {
|
|||||||
sdp: String = sdpOffer,
|
sdp: String = sdpOffer,
|
||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
): CallOfferEvent {
|
): CallOfferEvent {
|
||||||
val tags =
|
val t = CallOfferEvent.build(sdp, to, callId, callType)
|
||||||
arrayOf(
|
return CallOfferEvent("offer${eventCounter++}", from, createdAt, t.tags, t.content, "sig")
|
||||||
arrayOf("p", to),
|
|
||||||
arrayOf("call-id", callId),
|
|
||||||
arrayOf("call-type", callType.value),
|
|
||||||
arrayOf("alt", "WebRTC call offer"),
|
|
||||||
)
|
|
||||||
return CallOfferEvent("offer${eventCounter++}", from, createdAt, tags, sdp, "sig")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun makeGroupOffer(
|
private fun makeGroupOffer(
|
||||||
@@ -127,15 +125,8 @@ class CallManagerTest {
|
|||||||
sdp: String = sdpOffer,
|
sdp: String = sdpOffer,
|
||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
): CallOfferEvent {
|
): CallOfferEvent {
|
||||||
val pTags = members.map { arrayOf("p", it) }.toTypedArray()
|
val t = CallOfferEvent.build(sdp, members, callId, callType)
|
||||||
val tags =
|
return CallOfferEvent("offer${eventCounter++}", from, createdAt, t.tags, t.content, "sig")
|
||||||
pTags +
|
|
||||||
arrayOf(
|
|
||||||
arrayOf("call-id", callId),
|
|
||||||
arrayOf("call-type", callType.value),
|
|
||||||
arrayOf("alt", "WebRTC call offer"),
|
|
||||||
)
|
|
||||||
return CallOfferEvent("offer${eventCounter++}", from, createdAt, tags, sdp, "sig")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun makeAnswer(
|
private fun makeAnswer(
|
||||||
@@ -145,13 +136,8 @@ class CallManagerTest {
|
|||||||
sdp: String = sdpAnswer,
|
sdp: String = sdpAnswer,
|
||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
): CallAnswerEvent {
|
): CallAnswerEvent {
|
||||||
val tags =
|
val t = CallAnswerEvent.build(sdp, to, callId)
|
||||||
arrayOf(
|
return CallAnswerEvent("answer${eventCounter++}", from, createdAt, t.tags, t.content, "sig")
|
||||||
arrayOf("p", to),
|
|
||||||
arrayOf("call-id", callId),
|
|
||||||
arrayOf("alt", "WebRTC call answer"),
|
|
||||||
)
|
|
||||||
return CallAnswerEvent("answer${eventCounter++}", from, createdAt, tags, sdp, "sig")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun makeGroupAnswer(
|
private fun makeGroupAnswer(
|
||||||
@@ -161,14 +147,8 @@ class CallManagerTest {
|
|||||||
sdp: String = sdpAnswer,
|
sdp: String = sdpAnswer,
|
||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
): CallAnswerEvent {
|
): CallAnswerEvent {
|
||||||
val pTags = members.map { arrayOf("p", it) }.toTypedArray()
|
val t = CallAnswerEvent.build(sdp, members, callId)
|
||||||
val tags =
|
return CallAnswerEvent("answer${eventCounter++}", from, createdAt, t.tags, t.content, "sig")
|
||||||
pTags +
|
|
||||||
arrayOf(
|
|
||||||
arrayOf("call-id", callId),
|
|
||||||
arrayOf("alt", "WebRTC call answer"),
|
|
||||||
)
|
|
||||||
return CallAnswerEvent("answer${eventCounter++}", from, createdAt, tags, sdp, "sig")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun makeHangup(
|
private fun makeHangup(
|
||||||
@@ -178,13 +158,8 @@ class CallManagerTest {
|
|||||||
reason: String = "",
|
reason: String = "",
|
||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
): CallHangupEvent {
|
): CallHangupEvent {
|
||||||
val tags =
|
val t = CallHangupEvent.build(to, callId, reason)
|
||||||
arrayOf(
|
return CallHangupEvent("hangup${eventCounter++}", from, createdAt, t.tags, t.content, "sig")
|
||||||
arrayOf("p", to),
|
|
||||||
arrayOf("call-id", callId),
|
|
||||||
arrayOf("alt", "WebRTC call hangup"),
|
|
||||||
)
|
|
||||||
return CallHangupEvent("hangup${eventCounter++}", from, createdAt, tags, reason, "sig")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun makeReject(
|
private fun makeReject(
|
||||||
@@ -194,13 +169,8 @@ class CallManagerTest {
|
|||||||
reason: String = "",
|
reason: String = "",
|
||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
): CallRejectEvent {
|
): CallRejectEvent {
|
||||||
val tags =
|
val t = CallRejectEvent.build(to, callId, reason)
|
||||||
arrayOf(
|
return CallRejectEvent("reject${eventCounter++}", from, createdAt, t.tags, t.content, "sig")
|
||||||
arrayOf("p", to),
|
|
||||||
arrayOf("call-id", callId),
|
|
||||||
arrayOf("alt", "WebRTC call rejection"),
|
|
||||||
)
|
|
||||||
return CallRejectEvent("reject${eventCounter++}", from, createdAt, tags, reason, "sig")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun makeIceCandidate(
|
private fun makeIceCandidate(
|
||||||
@@ -209,14 +179,9 @@ class CallManagerTest {
|
|||||||
callId: String = this.callId,
|
callId: String = this.callId,
|
||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
): CallIceCandidateEvent {
|
): CallIceCandidateEvent {
|
||||||
val json = """{"candidate":"candidate:1","sdpMid":"0","sdpMLineIndex":0}"""
|
val json = CallIceCandidateEvent.serializeCandidate("candidate:1", "0", 0)
|
||||||
val tags =
|
val t = CallIceCandidateEvent.build(json, to, callId)
|
||||||
arrayOf(
|
return CallIceCandidateEvent("ice${eventCounter++}", from, createdAt, t.tags, t.content, "sig")
|
||||||
arrayOf("p", to),
|
|
||||||
arrayOf("call-id", callId),
|
|
||||||
arrayOf("alt", "WebRTC ICE candidate"),
|
|
||||||
)
|
|
||||||
return CallIceCandidateEvent("ice${eventCounter++}", from, createdAt, tags, json, "sig")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun makeRenegotiate(
|
private fun makeRenegotiate(
|
||||||
@@ -226,13 +191,8 @@ class CallManagerTest {
|
|||||||
sdp: String = sdpOffer,
|
sdp: String = sdpOffer,
|
||||||
createdAt: Long = TimeUtils.now(),
|
createdAt: Long = TimeUtils.now(),
|
||||||
): CallRenegotiateEvent {
|
): CallRenegotiateEvent {
|
||||||
val tags =
|
val t = CallRenegotiateEvent.build(sdp, to, callId)
|
||||||
arrayOf(
|
return CallRenegotiateEvent("renego${eventCounter++}", from, createdAt, t.tags, t.content, "sig")
|
||||||
arrayOf("p", to),
|
|
||||||
arrayOf("call-id", callId),
|
|
||||||
arrayOf("alt", "WebRTC call renegotiation"),
|
|
||||||
)
|
|
||||||
return CallRenegotiateEvent("renego${eventCounter++}", from, createdAt, tags, sdp, "sig")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// ========================================================================
|
// ========================================================================
|
||||||
|
|||||||
Reference in New Issue
Block a user