A very simple card game
Project description
JJC's Card Game
This is a simple card played over a series of round. Each round, players draw one card. The player with the highest card received 2 points. Players with penalty cards lose a point. First player to 21 points wins.
Installation
Make sure you have python 3.6 or higher installed, then:
pip install jjc-card-game
Play
jjc-card-game
Then follow the on-screen rules and instructions.
Or try these more advanced options:
jjc-card-game -d Jonathan Nicholas Austin
to play a game with these three players. The-d
speeds up gameplay by dealing all the cards at once.jjc-card-game --help
to see even more options
Development
Development tools: Windows 10, PowerShell, and PyCharm.
git clone https://github.com/jonathanchukinas/card_game.git
cd card_game
pip install flit # for build, packaging
python -m venv .venv # create virtual environment
.venv\scripts\activate # activate virtual environment
flit install --pth-file # set up editable install
# modify source code
jjc-card-game # run modified app
# repeat
deactivate # exit virtual environment
Running the tests
Test are written for pytest
and automated by tox
.
Game logic has 95% test coverage, while
the command-line interface / ouput has less than 50%.
To run all the tests:
pip install tox, pytest
cd path\to\project\directory
tox
Tests will be run against all these python versions, if you have them:
- v3.6
- v3.7
- v3.8
For a faster way to run tests:
pytest
Built With
python and python packages:
Authors
- Jonathan Chukinas - initial release
License
This project is licensed under the MIT License - see the LICENSE.md file for details
Acknowledgements
- Brian Okken for his Test & Code podcast and Python Testing with pytest book, which jump-started my testing knowledge early in 2019 and recently helped me integrate pytest, flit, and tox together.
- Luciano Ramalho for his outstanding Fluent Python, which taught me much of what I know about python under the hood, dunder methods, lru cache, and so much more.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for jjc_card_game-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9dbfc7e664be365ac0e45964e5fc615d04c0cbf6bc98719aa34d25815dcb41e0 |
|
MD5 | 7e23b9ba4d697c6135e08449a0fdeb3c |
|
BLAKE2b-256 | 311cfce501ff3477fa4b03716a3b562e099e68c4d3d5a3772a26409e215ce86d |