diff options
Diffstat (limited to 'engine')
| -rw-r--r-- | engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelContext.kt | 9 | ||||
| -rw-r--r-- | engine/src/test/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelDataClassesTest.kt | 6 |
2 files changed, 10 insertions, 5 deletions
diff --git a/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelContext.kt b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelContext.kt index 02dc1d3..54b98e0 100644 --- a/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelContext.kt +++ b/engine/src/main/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelContext.kt @@ -1,7 +1,12 @@ package dev.m1sk9.lunaticChat.engine.chat.channel +/** + * A player's active channel together with its member list. + */ data class ChannelContext( - val channelId: String, val channel: Channel, val members: List<ChannelMember>, -) +) { + /** Shorthand for the channel's id, which callers ask for far more often than the channel. */ + val channelId: String get() = channel.id +} diff --git a/engine/src/test/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelDataClassesTest.kt b/engine/src/test/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelDataClassesTest.kt index 4684432..de514b1 100644 --- a/engine/src/test/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelDataClassesTest.kt +++ b/engine/src/test/kotlin/dev/m1sk9/lunaticChat/engine/chat/channel/ChannelDataClassesTest.kt @@ -114,7 +114,7 @@ class ChannelDataClassesTest { fun `ChannelContext should store all fields`() { val channel = Channel(id = "ch-1", name = "Test", ownerId = testOwnerId) val member = ChannelMember(channelId = "ch-1", playerId = testPlayerId, role = ChannelRole.MEMBER) - val context = ChannelContext(channelId = "ch-1", channel = channel, members = listOf(member)) + val context = ChannelContext(channel = channel, members = listOf(member)) assertEquals("ch-1", context.channelId) assertEquals(channel, context.channel) @@ -125,8 +125,8 @@ class ChannelDataClassesTest { @Test fun `ChannelContext copy should create independent instance`() { val channel = Channel(id = "ch-1", name = "Test", ownerId = testOwnerId) - val original = ChannelContext(channelId = "ch-1", channel = channel, members = emptyList()) - val copied = original.copy(channelId = "ch-2") + val original = ChannelContext(channel = channel, members = emptyList()) + val copied = original.copy(channel = channel.copy(id = "ch-2")) assertEquals("ch-2", copied.channelId) assertNotEquals(original.channelId, copied.channelId) |
