mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-06-10 00:04:48 -07:00
Cause:
- This issue happens due to logic of moving the card from the top of the
deck being reused when moving from the bottom of the deck, in a way
that makes it impossible to check if the card came from the bottom.
Resolution:
- Updated the logging logic in the client for card moves.
- Added a gRPC parameter ('is_from_bottom') for card moves.
- Updates the server logic to reverse the order of the card move if the
'is_from_bottom' parameter is true.
- Added a test to show the expected behaviour of the fix.
NOTE: While the changes in this patch seem big, this is due to changing
the loop in the moveCard function to a helper function, in order to make
the bug fix change. The only change to the loop was to pass a
variable attribution to the moveCard function because it was redundant
to be in the loop.
16 lines
429 B
CMake
Executable file
16 lines
429 B
CMake
Executable file
add_executable(reverse_card_move_test reverse_card_move_test.cpp)
|
|
|
|
if(NOT GTEST_FOUND)
|
|
add_dependencies(reverse_card_move_test gtest)
|
|
endif()
|
|
|
|
target_link_libraries(
|
|
reverse_card_move_test
|
|
PRIVATE libcockatrice_network_server_remote
|
|
PRIVATE libcockatrice_rng
|
|
PRIVATE Threads::Threads
|
|
PRIVATE ${GTEST_BOTH_LIBRARIES}
|
|
PRIVATE ${TEST_QT_MODULES}
|
|
)
|
|
|
|
add_test(NAME reverse_card_move_test COMMAND reverse_card_move_test)
|