Skip to content

Commit

Permalink
start on tests
Browse files Browse the repository at this point in the history
  • Loading branch information
alyssaruth committed Apr 9, 2024
1 parent 27338d9 commit 3a3cdd4
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 3 deletions.
3 changes: 2 additions & 1 deletion src/main/kotlin/dartzee/screen/game/DartsGameScreen.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import dartzee.db.GameEntity
import dartzee.game.state.IWrappedParticipant
import dartzee.screen.ScreenCache
import dartzee.utils.InjectedThings
import java.awt.Dimension
import java.awt.Frame

/** DartsGameScreen Simple screen which wraps up a single game panel */
Expand All @@ -23,7 +24,7 @@ class DartsGameScreen(game: GameEntity, private val participants: List<IWrappedP

if (InjectedThings.partyMode) {
contentPane.add(tutorialPanel)
pack()
size = Dimension(1000, 600)
extendedState = Frame.MAXIMIZED_BOTH
} else {
contentPane.add(gamePanel)
Expand Down
9 changes: 7 additions & 2 deletions src/main/kotlin/dartzee/screen/game/TutorialPanel.kt
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@ import javax.swing.UIDefaults
import javax.swing.border.EmptyBorder
import javax.swing.border.EtchedBorder
import net.miginfocom.swing.MigLayout
import javax.swing.JScrollPane
import javax.swing.ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER
import javax.swing.ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED

class TutorialPanel(private val parent: DartsGameScreen) :
JPanel(), ActionListener, DartboardListener {
Expand All @@ -45,10 +48,12 @@ class TutorialPanel(private val parent: DartsGameScreen) :

// West Pane - the rules
val panelWest = JPanel()
val scrollPane = JScrollPane(panelWest, VERTICAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER)
scrollPane.setViewportView(panelWest)
panelWest.border = EtchedBorder(EtchedBorder.RAISED, null, null)
panelWest.layout = MigLayout("al center top")
panelWest.preferredSize = Dimension(500, 50)
add(panelWest, BorderLayout.WEST)
panelWest.preferredSize = Dimension(500, 1000)
add(scrollPane, BorderLayout.WEST)

val lblRules = makeTitleLabel("The Rules")
panelWest.add(lblRules, "cell 0 0, growx")
Expand Down
23 changes: 23 additions & 0 deletions src/test/kotlin/dartzee/screen/game/TestTutorialPanel.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
package dartzee.screen.game

import dartzee.clickButton
import dartzee.helper.AbstractTest
import io.mockk.mockk
import io.mockk.verify
import org.junit.jupiter.api.Test

class TestTutorialPanel: AbstractTest() {
@Test
fun `Should launch the game when ready button is pressed`() {
val parentWindow = mockk<DartsGameScreen>(relaxed = true)
val panel = TutorialPanel(parentWindow)
panel.clickButton(text = "I'm ready - let's play!")

verify { parentWindow.startNewGame() }
}

@Test
fun `Should accurately record busts in the demo`() {
val panel = TutorialPanel(mockk(relaxed = true))
}
}

0 comments on commit 3a3cdd4

Please sign in to comment.