-
-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test(pied-piper): acceptance tests #555
Conversation
Warning Rate limit exceeded@antoinezanardi has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 8 minutes and 59 seconds before requesting another review. How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. WalkthroughThe latest updates center around integrating the Pied Piper role into the game, enhancing user interactions and gameplay mechanics. Key changes include new configurations for the Pied Piper role, updates to localization files, additions of new Cucumber test scenarios, and modifications to various Vue components for event handling and user feedback. These alterations aim to improve the gaming experience by introducing fresh elements and refining existing functionalities. Changes
Sequence Diagram(s)sequenceDiagram
participant User
participant GameLobby
participant GameEngine
participant GameUI
participant AudioStore
User->>+GameLobby: Choose Pied Piper Role
GameLobby-->>GameEngine: Start New Game
GameEngine->>GameUI: Display Game Event "Pied Piper"
GameEngine->>AudioStore: Play "pan-flute" Sound
GameUI-->>User: Show Players Charmed by Pied Piper
GameEngine->>GameUI: Await User Action
Note right of User: User interacts based on game events
Poem
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
@coderabbitai review |
Actions performedReview triggered.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (2)
tests/acceptance/screenshots/darwin/Charmed people meet each other Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Pied Piper charms Playground.png
is excluded by!**/*.png
Files selected for processing (4)
- .run/Pied Piper Role.run.xml (1 hunks)
- modules/i18n/locales/en.json (1 hunks)
- tests/acceptance/features/game/features/role/pied-piper.feature (1 hunks)
- tests/acceptance/features/game/step-definitions/player/player-attribute/player-attribute.then-steps.ts (2 hunks)
Files skipped from review due to trivial changes (2)
- .run/Pied Piper Role.run.xml
- tests/acceptance/features/game/features/role/pied-piper.feature
Additional comments not posted (2)
tests/acceptance/features/game/step-definitions/player/player-attribute/player-attribute.then-steps.ts (1)
154-159
: Excellent addition to the acceptance tests for the Pied Piper role.This new step definition leverages Cucumber's DataTable to check multiple players for the "charmed by pied piper" attribute, enhancing the test's flexibility and coverage. Good use of the
DataTable
to handle multiple inputs efficiently. Ensure all necessary edge cases are covered in your test scenarios, such as what happens if no players are charmed or if an incorrect player name is passed.modules/i18n/locales/en.json (1)
297-297
: Change from "Savior" to "Defender" in the Pied Piper's role description is consistent with the PR's objectives.
@coderabbitai review |
Actions performedReview triggered.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (17)
tests/acceptance/screenshots/darwin/Accursed Wolf-Father infects Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Big Bad Wolf eats Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Charmed people meet each other Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Defender protects Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Game Playground without targets.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Hunter shoots Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Pied Piper charms Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Scandalmonger marks Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Seer looks Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Sheriff delegates Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Sheriff settles votes Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Survivors elect Sheriff Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/Werewolves eat Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/darwin/White Werewolf eats Playground.png
is excluded by!**/*.png
tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameSheriffPromotionEvent/__snapshots__/GameSheriffPromotionEvent.nuxt.spec.ts.snap
is excluded by!**/*.snap
tests/unit/specs/components/pages/game/GamePlaying/GamePlayground/CurrentPlayQuestion/__snapshots__/CurrentPlayQuestion.nuxt.spec.ts.snap
is excluded by!**/*.snap
tests/unit/specs/components/pages/game/GamePlaying/GamePlayground/GamePlaygroundHeader/GamePlaygroundHeaderCurrentPlay/__snapshots__/GamePlaygroundHeaderCurrentPlay.nuxt.spec.ts.snap
is excluded by!**/*.snap
Files selected for processing (4)
- app/components/pages/game/GamePlaying/GamePlayground/CurrentPlayQuestion/CurrentPlayQuestion.vue (1 hunks)
- app/components/pages/game/GamePlaying/GamePlayground/GamePlaygroundHeader/GamePlaygroundHeaderCurrentPlay/GamePlaygroundHeaderCurrentPlay.vue (1 hunks)
- tests/acceptance/features/game/features/role/pied-piper.feature (1 hunks)
- tests/acceptance/features/game/step-definitions/game-play/game-play.then-steps.ts (1 hunks)
Files skipped from review due to trivial changes (2)
- app/components/pages/game/GamePlaying/GamePlayground/CurrentPlayQuestion/CurrentPlayQuestion.vue
- app/components/pages/game/GamePlaying/GamePlayground/GamePlaygroundHeader/GamePlaygroundHeaderCurrentPlay/GamePlaygroundHeaderCurrentPlay.vue
Files skipped from review as they are similar to previous changes (1)
- tests/acceptance/features/game/features/role/pied-piper.feature
Additional comments not posted (1)
tests/acceptance/features/game/step-definitions/game-play/game-play.then-steps.ts (1)
21-22
: The new step definition correctly checks for the expected game state when no action is needed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (15)
public/audio/sound-effects/pan-flute.mp3
is excluded by!**/*.mp3
public/audio/sound-effects/pan-flute.webm
is excluded by!**/*.webm
tests/acceptance/screenshots/linux/Accursed Wolf-Father infects Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Big Bad Wolf eats Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Defender protects Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Game Playground without targets.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Hunter shoots Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Scandalmonger marks Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Seer looks Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Sheriff delegates Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Sheriff settles votes Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Survivors elect Sheriff Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Werewolves eat Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/White Werewolf eats Playground.png
is excluded by!**/*.png
tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GamePiedPiperHasCharmedEvent/__snapshots__/GamePiedPiperHasCharmedEvent.nuxt.spec.ts.snap
is excluded by!**/*.snap
Files selected for processing (12)
- app/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameEventsMonitorCurrentEvent.vue (2 hunks)
- app/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GamePiedPiperHasCharmedEvent/GamePiedPiperHasCharmedEvent.vue (1 hunks)
- app/stores/audio/constants/audio.constants.ts (1 hunks)
- app/stores/game/game-event/constants/game-event.constants.ts (1 hunks)
- app/stores/game/game-event/useGameEventsStore.ts (1 hunks)
- modules/i18n/locales/en.json (2 hunks)
- modules/i18n/locales/fr.json (1 hunks)
- tests/acceptance/features/game/features/role/pied-piper.feature (1 hunks)
- tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameEventsMonitorCurrentEvent.nuxt.spec.ts (2 hunks)
- tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GamePiedPiperHasCharmedEvent/GamePiedPiperHasCharmedEvent.nuxt.spec.ts (1 hunks)
- tests/unit/specs/stores/audio/useAudioStore.spec.ts (2 hunks)
- tests/unit/specs/stores/game/game-event/useGameEventsStore.spec.ts (3 hunks)
Files skipped from review due to trivial changes (2)
- app/stores/audio/constants/audio.constants.ts
- tests/unit/specs/stores/audio/useAudioStore.spec.ts
Files skipped from review as they are similar to previous changes (2)
- modules/i18n/locales/en.json
- tests/acceptance/features/game/features/role/pied-piper.feature
Additional comments not posted (9)
app/stores/game/game-event/constants/game-event.constants.ts (1)
11-11
: The addition of "pied-piper-has-charmed" to the game event types is well-placed and enhances the game's functionality by supporting new Pied Piper related events.app/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GamePiedPiperHasCharmedEvent/GamePiedPiperHasCharmedEvent.vue (1)
1-13
: The template structure usingGameEventWithTexts
and nestedGameEventFlippingLastPlayTargetsCard
is well-constructed for displaying the Pied Piper charm event dynamically.app/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameEventsMonitorCurrentEvent.vue (1)
Line range hint
27-52
: Correctly integratesGamePiedPiperHasCharmedEvent
into the dynamic component loading system based on the game event type. This ensures that the new Pied Piper event is handled seamlessly within the game's UI.tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GamePiedPiperHasCharmedEvent/GamePiedPiperHasCharmedEvent.nuxt.spec.ts (2)
1-34
: The test setup using various factories to create a controlled testing environment is well-implemented, ensuring that the component's functionality is tested in isolation.
37-71
: The test cases covering snapshot matching, sound effect playback, and dynamic text rendering are comprehensive and ensure the component behaves as expected under various states.app/stores/game/game-event/useGameEventsStore.ts (1)
29-35
: Ensure consistent handling of game events based onaction
andsource
.The implementation correctly creates a game event for the "pied-piper-has-charmed" action when the source is "pied-piper". This aligns with the PR's objectives to enhance the Pied Piper role functionality.
tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameEventsMonitorCurrentEvent.nuxt.spec.ts (1)
154-164
: Good coverage of the new "pied-piper-has-charmed" event.The test ensures that the
GamePiedPiperHasCharmedEvent
component renders correctly when the current game event is of type "pied-piper-has-charmed". This is crucial for verifying the visual integration of the new game event.tests/unit/specs/stores/game/game-event/useGameEventsStore.spec.ts (1)
342-357
: Comprehensive test for the "pied-piper-has-charmed" event generation.The test verifies that the "pied-piper-has-charmed" event is generated correctly when the last game history action is "charm" and the source is "pied-piper". This ensures that the game logic matches the new functionality introduced in the PR.
modules/i18n/locales/fr.json (1)
1340-1341
: LGTM! The new localization strings for the "GamePiedPiperHasCharmedEvent" are consistent with the described functionality.
<script setup lang="ts"> | ||
import { storeToRefs } from "pinia"; | ||
import GameEventFlippingLastPlayTargetsCard from "~/components/shared/game/game-event/GameEventFlippingPlayerCard/GameEventFlippingLastPlayTargetsCard/GameEventFlippingLastPlayTargetsCard.vue"; | ||
import GameEventWithTexts from "~/components/shared/game/game-event/GameEventWithTexts/GameEventWithTexts.vue"; | ||
import { useGameLastHistoryRecord } from "~/composables/api/game/game-history-record/useGameLastHistoryRecord"; | ||
import { useAudioStore } from "~/stores/audio/useAudioStore"; | ||
import { useGameStore } from "~/stores/game/useGameStore"; | ||
|
||
const gameStore = useGameStore(); | ||
const { game } = storeToRefs(gameStore); | ||
const { lastTargetedPlayers } = useGameLastHistoryRecord(game); | ||
|
||
const { t } = useI18n(); | ||
|
||
const audioStore = useAudioStore(); | ||
const { playSoundEffect } = audioStore; | ||
|
||
const gamePiedPiperHasCharmedEventTexts = computed<string[]>(() => [ | ||
t("components.GamePiedPiperHasCharmedEvent.piedPiperHasCharmed", { charmedCount: lastTargetedPlayers.value.length }, lastTargetedPlayers.value.length), | ||
t("components.GamePiedPiperHasCharmedEvent.gameMasterWillTapCharmedPlayers", { charmedCount: lastTargetedPlayers.value.length }, lastTargetedPlayers.value.length), | ||
]); | ||
|
||
playSoundEffect("pan-flute"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Consider refactoring the immediate play of the "pan-flute" sound effect to be triggered by a more specific game event or method call. This would enhance the component's reusability and make it easier to control when the sound is played, especially important for unit testing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (1)
tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameTurnStartsEvent/GameCharmedTurnStartsEvent/__snapshots__/GameCharmedTurnStartsEvent.nuxt.spec.ts.snap
is excluded by!**/*.snap
Files selected for processing (7)
- app/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameTurnStartsEvent/GameCharmedTurnStartsEvent/GameCharmedTurnStartsEvent.vue (2 hunks)
- modules/i18n/locales/en.json (4 hunks)
- modules/i18n/locales/fr.json (3 hunks)
- tests/acceptance/features/game/features/role/pied-piper.feature (1 hunks)
- tests/acceptance/features/game/step-definitions/game-options/game-options.given-steps.ts (1 hunks)
- tests/acceptance/features/game/step-definitions/player/player-attribute/player-attribute.then-steps.ts (3 hunks)
- tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameTurnStartsEvent/GameCharmedTurnStartsEvent/GameCharmedTurnStartsEvent.nuxt.spec.ts (3 hunks)
Files skipped from review as they are similar to previous changes (4)
- modules/i18n/locales/en.json
- modules/i18n/locales/fr.json
- tests/acceptance/features/game/features/role/pied-piper.feature
- tests/acceptance/features/game/step-definitions/player/player-attribute/player-attribute.then-steps.ts
Additional comments not posted (4)
app/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameTurnStartsEvent/GameCharmedTurnStartsEvent/GameCharmedTurnStartsEvent.vue (2)
31-33
: Consider caching the result ofcharmedGameEventTexts
to avoid recomputation on each render when the dependencies have not changed.
[REFACTOR_SUGGESTion]const charmedGameEventTexts = computed<string[]>(() => { if (isFirstNight.value) { return [t("components.GameCharmedTurnStartsEvent.charmedPeopleMeetEachOther", lastTargetedPlayers.value.length)]; } return [t("components.GameCharmedTurnStartsEvent.charmedPeopleMeetEachOtherWithOldOnes", lastTargetedPlayers.value.length)]; }, { cache: true });
14-14
: Ensure that theuseGameLastHistoryRecord
is correctly handling all edge cases, especially for games with no history records yet.Also applies to: 20-20
Verification successful
The
useGameLastHistoryRecord
function correctly handles the edge case where there are no history records by returning an empty array whengame.value.lastGameHistoryRecord?.play.targets
is not present.
- Location of the implementation:
app/composables/api/game/game-history-record/useGameLastHistoryRecord.ts
Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that `useGameLastHistoryRecord` handles cases with no history records. # Search for the function implementation and check for edge case handling. ast-grep --lang javascript --pattern $'function useGameLastHistoryRecord($_) { $$$ if ($_ === undefined) { return $$$ } $$$ }'Length of output: 139
Script:
#!/bin/bash # Description: Locate the implementation of `useGameLastHistoryRecord` and verify its handling of edge cases. # Search for the function definition of `useGameLastHistoryRecord` in the codebase. ast-grep --lang javascript --pattern 'function useGameLastHistoryRecord($$) { $$$ }' # If the function is not found as a standalone function, search for it as an exported function. ast-grep --lang javascript --pattern 'export function useGameLastHistoryRecord($$) { $$$ }'Length of output: 180
Script:
#!/bin/bash # Description: Locate all occurrences of `useGameLastHistoryRecord` in the codebase to find its definition and usage. # Search for the term `useGameLastHistoryRecord` across the codebase. rg 'useGameLastHistoryRecord'Length of output: 19592
tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameTurnStartsEvent/GameCharmedTurnStartsEvent/GameCharmedTurnStartsEvent.nuxt.spec.ts (1)
18-29
: Ensure that the default game setup in tests accurately reflects possible real game scenarios, especially concerning the number of targets and their properties.Verification successful
The previous attempts to match the overall structure using complex regex patterns caused repeated parse errors. However, the search for
targets
yielded several matches in different test files, indicating that the setup involvingtargets
is indeed used across the codebase.Given this context, it appears that the structure of the game setup in the test file (
GameCharmedTurnStartsEvent.nuxt.spec.ts
) is consistent with other test setups involving game targets.
tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameSeerHasSeenEvent/GameSeerHasSeenEvent.nuxt.spec.ts
tests/unit/specs/components/pages/game/GamePlaying/GameEventsMonitor/GameEventsMonitorCurrentEvent/GameAccursedWolfFatherMayHaveInfectedEvent/GameAccursedWolfFatherMayHaveInfectedEvent.nuxt.spec.ts
tests/unit/specs/components/pages/game/GameOver/GameOverHistory/GameOverHistoryRecords/GameOverHistoryRecord/GameOverHistoryRecord.nuxt.spec.ts
These examples show that the use of
targets
is a common pattern in game-related tests.Ensure that the default game setup in tests accurately reflects possible real game scenarios, especially concerning the number of targets and their properties.
Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that the default game setup matches real game scenarios. # Search for game scenarios in the codebase to compare with test setup. rg --type typescript $'game: { turn: $_, lastGameHistoryRecord: { play: { targets: $$$ } } }'Length of output: 467
Script:
#!/bin/bash # Description: Verify that the default game setup matches real game scenarios. # Search for game scenarios in the codebase to compare with test setup. rg --type typescript 'game: {[^}]+turn: [^,]+,[^}]+lastGameHistoryRecord: {[^}]+play: {[^}]+targets: \[[^]]+\][^}]+}[^}]+}'Length of output: 315
Script:
#!/bin/bash # Description: Verify that the default game setup matches real game scenarios. # Search for game scenarios in the codebase to compare with test setup. rg --type typescript 'game: {[^}]*turn: [^,]*,[^}]*lastGameHistoryRecord: {[^}]*play: {[^}]*targets: \[[^]]*\][^}]*}[^}]*}'Length of output: 315
Script:
#!/bin/bash # Description: Verify that the default game setup matches real game scenarios by searching for individual elements. # Search for 'turn' in game setups rg --type typescript 'game: {[^}]*turn: [^,]*,' # Search for 'lastGameHistoryRecord' in game setups rg --type typescript 'lastGameHistoryRecord: {[^}]*play: {[^}]*targets: \[[^]]*\]' # Search for 'targets' in game setups rg --type typescript 'targets: \[[^]]*\]'Length of output: 493
Script:
#!/bin/bash # Description: Verify that the default game setup matches real game scenarios by searching for individual elements. # Search for 'turn' in game setups rg --type ts 'game: {[^}]*turn: [^,]*,' # Search for 'lastGameHistoryRecord' in game setups rg --type ts 'lastGameHistoryRecord: {[^}]*play: {[^}]*targets: \[[^]]*\]' # Search for 'targets' in game setups rg --type ts 'targets: \[[^]]*\]'Length of output: 12642
tests/acceptance/features/game/step-definitions/game-options/game-options.given-steps.ts (1)
97-108
: Ensure that the new step definitions for the Pied Piper role options are correctly triggering the expected changes in game state and are covered by acceptance tests.Verification successful
The search results confirm that the step definitions for setting the Pied Piper game options are present in the codebase and are referenced in the acceptance tests.
tests/acceptance/features/game/step-definitions/game-options/game-options.given-steps.ts
: Step definitions for setting the Pied Piper charmed people count and the infected Pied Piper powerful options.Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify that the step definitions trigger the correct game state changes. # Search for acceptance tests covering these step definitions. rg --type typescript $'Given(/the user sets the pied piper $$$/, async function(this: CustomWorld, $$$): Promise<void> { $$$ })'Length of output: 486
Script:
#!/bin/bash # Description: Verify that the step definitions trigger the correct game state changes. # Adjusting the search pattern to avoid invalid repetition quantifier. rg --type typescript 'Given\(/the user sets the pied piper charmed people count per night to \(\?<charmedCount>\\d+\) in game options/u, async function\(this: CustomWorld, charmedCount: string\): Promise<void>' -A 5 rg --type typescript 'Given\(/the user sets the infected pied piper powerful in game options/u, async function\(this: CustomWorld\): Promise<void>' -A 5Length of output: 442
Script:
#!/bin/bash # Description: Verify that the step definitions trigger the correct game state changes. # Adjusting the search pattern to use the --glob option for .ts files. rg --glob '*.ts' 'Given\(/the user sets the pied piper charmed people count per night to \(\?<charmedCount>\\d+\) in game options/u, async function\(this: CustomWorld, charmedCount: string\): Promise<void>' -A 5 rg --glob '*.ts' 'Given\(/the user sets the infected pied piper powerful in game options/u, async function\(this: CustomWorld\): Promise<void>' -A 5Length of output: 364
Script:
#!/bin/bash # Description: Verify that the step definitions trigger the correct game state changes. # Broaden the search pattern to include general terms related to the Pied Piper role. rg --glob '*.ts' 'Pied Piper' -A 5 rg --glob '*.ts' 'charmed people count' -A 5 rg --glob '*.ts' 'infected pied piper' -A 5Length of output: 12396
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
Outside diff range and nitpick comments (5)
README.md (5)
Line range hint
135-157
: Add alt text to images for accessibility.The images in the "Game Page" section lack alternative text, which is important for accessibility. Consider adding descriptive alt text to each image tag.
Tools
Markdownlint
132-132: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
138-138: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
142-142: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
133-133: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
134-134: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
135-135: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
137-137: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
138-138: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
139-139: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
140-140: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
141-141: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
142-142: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
143-143: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
Line range hint
49-49
: Consider using a more formal tone in the introduction.The phrase "this awesome project" might be too informal for a project README. Consider using a more formal tone to enhance professionalism.
Tools
Markdownlint
132-132: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
138-138: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
142-142: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
133-133: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
134-134: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
135-135: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
137-137: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
138-138: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
139-139: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
140-140: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
141-141: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
142-142: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
143-143: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
Line range hint
281-281
: Correct grammatical error in installation instructions.The phrase "We recommend to use" should be corrected to "We recommend using" to improve readability and correctness.
Tools
Markdownlint
132-132: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
138-138: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
142-142: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
133-133: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
134-134: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
135-135: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
137-137: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
138-138: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
139-139: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
140-140: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
141-141: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
142-142: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
143-143: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
Line range hint
299-299
: Simplify wording in the build instructions.Consider simplifying "In order to build" to "To build" for conciseness and directness.
Tools
Markdownlint
132-132: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
138-138: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
142-142: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
133-133: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
134-134: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
135-135: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
137-137: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
138-138: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
139-139: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
140-140: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
141-141: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
142-142: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
143-143: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
Line range hint
398-398
: Simplify wording in the code analysis section.Consider simplifying "In order to keep" to "To keep" to maintain consistency with earlier suggestions and improve the document's readability.
Tools
Markdownlint
132-132: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
138-138: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
142-142: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
133-133: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
134-134: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
135-135: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
137-137: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
138-138: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
139-139: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
140-140: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
141-141: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
142-142: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
143-143: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Files ignored due to path filters (14)
tests/acceptance/screenshots/darwin/Game Playground without targets.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Accursed Wolf-Father infects Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Big Bad Wolf eats Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Charmed people meet each other Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Defender protects Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Game Playground without targets.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Hunter shoots Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Pied Piper charms Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Scandalmonger marks Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Seer looks Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Sheriff delegates Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Sheriff settles votes Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/Werewolves eat Playground.png
is excluded by!**/*.png
tests/acceptance/screenshots/linux/White Werewolf eats Playground.png
is excluded by!**/*.png
Files selected for processing (1)
- README.md (2 hunks)
Additional context used
LanguageTool
README.md
[style] ~49-~49: Consider using a more formal and expressive alternative to ‘awesome’. (AWESOME)
Context: .... #### 🤔 Want to know more about this awesome project ? <a href="https://werewolves-a...
[grammar] ~281-~281: The verb ‘recommend’ is used with the gerund form. (ADMIT_ENJOY_VB)
Context: ...Color=white&logo=pnpm&color=B76507) We recommend to use the node version specified in the `.nvm...
[style] ~299-~299: Consider a shorter alternative to avoid wordiness. (IN_ORDER_TO_PREMIUM)
Context: ...ocal. ## 🚀 Build In order to build the app for production, run the f...
[style] ~398-~398: Consider a shorter alternative to avoid wordiness. (IN_ORDER_TO_PREMIUM)
Context: ...oColor=white&logo=eslint&color=341BAB) In order to keep the code clean, consistent and fre...
Markdownlint
README.md
49-49: Expected: h3; Actual: h4 (MD001, heading-increment)
Heading levels should only increment by one level at a time
122-122: Expected: 0 or 2; Actual: 5 (MD009, no-trailing-spaces)
Trailing spaces
130-130: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
132-132: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
138-138: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
142-142: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
144-144: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
148-148: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
150-150: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
162-162: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
165-165: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
167-167: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
186-186: Expected: 0 or 2; Actual: 8 (MD009, no-trailing-spaces)
Trailing spaces
188-188: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
194-194: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
338-338: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
436-436: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
473-473: Expected: 0 or 2; Actual: 4 (MD009, no-trailing-spaces)
Trailing spaces
476-476: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
477-477: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
478-478: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
479-479: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
501-501: Expected: 0 or 2; Actual: 1 (MD009, no-trailing-spaces)
Trailing spaces
43-43: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings)
Headings should be surrounded by blank lines
483-483: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings)
Headings should be surrounded by blank lines
489-489: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings)
Headings should be surrounded by blank lines
494-494: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings)
Headings should be surrounded by blank lines
510-510: Expected: 1; Actual: 0; Below (MD022, blanks-around-headings)
Headings should be surrounded by blank lines
49-49: Punctuation: '.' (MD026, no-trailing-punctuation)
Trailing punctuation in heading
82-82: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
83-83: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
84-84: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
85-85: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
87-87: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
88-88: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
89-89: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
90-90: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
91-91: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
92-92: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
93-93: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
94-94: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
95-95: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
96-96: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
97-97: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
98-98: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
99-99: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
100-100: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
101-101: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
102-102: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
103-103: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
104-104: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
105-105: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
106-106: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
107-107: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
108-108: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
109-109: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
110-110: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
111-111: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
112-112: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
113-113: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
114-114: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
120-120: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
121-121: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
122-122: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
123-123: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
124-124: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
126-126: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
127-127: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
128-128: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
129-129: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
130-130: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
131-131: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
133-133: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
134-134: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
135-135: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
137-137: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
138-138: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
139-139: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
140-140: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
141-141: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
142-142: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
143-143: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
145-145: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
146-146: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
147-147: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
148-148: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
149-149: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
151-151: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
152-152: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
153-153: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
155-155: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
157-157: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
158-158: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
159-159: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
161-161: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
162-162: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
163-163: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
164-164: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
165-165: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
166-166: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
168-168: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
169-169: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
170-170: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
172-172: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
173-173: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
174-174: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
175-175: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
177-177: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
178-178: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
179-179: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
180-180: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
182-182: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
183-183: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
184-184: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
185-185: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
186-186: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
187-187: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
189-189: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
190-190: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
191-191: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
193-193: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
194-194: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
195-195: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
196-196: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
198-198: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
199-199: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
200-200: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
201-201: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
202-202: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
203-203: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
204-204: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
205-205: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
206-206: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
207-207: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
208-208: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
209-209: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
210-210: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
211-211: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
212-212: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
213-213: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
214-214: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
220-220: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
221-221: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
222-222: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
223-223: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
224-224: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
225-225: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
226-226: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
227-227: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
228-228: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
229-229: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
230-230: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
231-231: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
232-232: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
233-233: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
234-234: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
235-235: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
236-236: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
237-237: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
238-238: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
239-239: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
240-240: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
241-241: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
242-242: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
243-243: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
244-244: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
245-245: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
246-246: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
247-247: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
248-248: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
249-249: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
250-250: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
251-251: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
252-252: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
253-253: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
254-254: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
255-255: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
256-256: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
257-257: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
258-258: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
259-259: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
260-260: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
261-261: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
262-262: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
263-263: null (MD027, no-multiple-space-blockquote)
Multiple spaces after blockquote symbol
484-484: null (MD031, blanks-around-fences)
Fenced code blocks should be surrounded by blank lines
490-490: null (MD031, blanks-around-fences)
Fenced code blocks should be surrounded by blank lines
495-495: null (MD031, blanks-around-fences)
Fenced code blocks should be surrounded by blank lines
53-53: null (MD045, no-alt-text)
Images should have alternate text (alt text)
53-53: null (MD045, no-alt-text)
Images should have alternate text (alt text)
53-53: null (MD045, no-alt-text)
Images should have alternate text (alt text)
53-53: null (MD045, no-alt-text)
Images should have alternate text (alt text)
55-55: null (MD045, no-alt-text)
Images should have alternate text (alt text)
55-55: null (MD045, no-alt-text)
Images should have alternate text (alt text)
55-55: null (MD045, no-alt-text)
Images should have alternate text (alt text)
55-55: null (MD045, no-alt-text)
Images should have alternate text (alt text)
56-56: null (MD045, no-alt-text)
Images should have alternate text (alt text)
56-56: null (MD045, no-alt-text)
Images should have alternate text (alt text)
56-56: null (MD045, no-alt-text)
Images should have alternate text (alt text)
56-56: null (MD045, no-alt-text)
Images should have alternate text (alt text)
57-57: null (MD045, no-alt-text)
Images should have alternate text (alt text)
57-57: null (MD045, no-alt-text)
Images should have alternate text (alt text)
57-57: null (MD045, no-alt-text)
Images should have alternate text (alt text)
57-57: null (MD045, no-alt-text)
Images should have alternate text (alt text)
58-58: null (MD045, no-alt-text)
Images should have alternate text (alt text)
58-58: null (MD045, no-alt-text)
Images should have alternate text (alt text)
58-58: null (MD045, no-alt-text)
Images should have alternate text (alt text)
58-58: null (MD045, no-alt-text)
Images should have alternate text (alt text)
59-59: null (MD045, no-alt-text)
Images should have alternate text (alt text)
59-59: null (MD045, no-alt-text)
Images should have alternate text (alt text)
59-59: null (MD045, no-alt-text)
Images should have alternate text (alt text)
59-59: null (MD045, no-alt-text)
Images should have alternate text (alt text)
60-60: null (MD045, no-alt-text)
Images should have alternate text (alt text)
60-60: null (MD045, no-alt-text)
Images should have alternate text (alt text)
60-60: null (MD045, no-alt-text)
Images should have alternate text (alt text)
60-60: null (MD045, no-alt-text)
Images should have alternate text (alt text)
61-61: null (MD045, no-alt-text)
Images should have alternate text (alt text)
61-61: null (MD045, no-alt-text)
Images should have alternate text (alt text)
521-521: null (MD045, no-alt-text)
Images should have alternate text (alt text)
527-527: null (MD045, no-alt-text)
Images should have alternate text (alt text)
533-533: null (MD047, single-trailing-newline)
Files should end with a single newline character
Quality Gate passedIssues Measures |
## [1.22.0](v1.21.0...v1.22.0) (2024-06-20) ### 🚀 Features * **villager-villager:** event and revelations among player roles ([#552](#552)) ([1f6fb83](1f6fb83)) ### 🐛 Bug Fixes * **release:** correct release content in develop ([#561](#561)) ([af8a869](af8a869)) ### ✅ Tests * **acceptance:** white werewolf acceptance tests ([#551](#551)) ([700f730](700f730)) * **cucumber:** run tests in parallel ([#554](#554)) ([731a938](731a938)) * **game:** optimize game victory acceptance tests ([#558](#558)) ([52524bf](52524bf)) * **pied-piper:** acceptance tests ([#555](#555)) ([c8036fd](c8036fd)) ### 🧹 Chore * **coderabbit:** config file ([#560](#560)) ([8a0a95b](8a0a95b)) * **deps:** update dependency @stylistic/eslint-plugin to ^2.2.2 ([#553](#553)) ([fd12df9](fd12df9)) * **deps:** update dependency happy-dom to ^14.12.3 ([#556](#556)) ([1ab29be](1ab29be)) * **deps:** update dependency sass to ^1.77.6 ([#549](#549)) ([b0573a0](b0573a0)) * **deps:** update node.js to >=20.15.0 ([#557](#557)) ([3be5c0f](3be5c0f))
🎉 This PR is included in version 1.22.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Summary by CodeRabbit
New Features
GamePiedPiperHasCharmedEvent
to game event components and constants.Bug Fixes
Style
CurrentPlayQuestion.vue
for better text alignment.GamePlaygroundHeaderCurrentPlay.vue
.Documentation
Tests
GamePiedPiperHasCharmedEvent
component and updated expectations in audio store tests.Chores