This repository is your go-to source for all assignments you'll be tackling throughout the training.
We've split the assignments into modules, each corresponding to a theoretical module we'll cover during the training. As you progress through the modules, assignments become more challenging, so get ready to flex those Kotlin muscles!
You'll find the assignments as Kotlin files under src/main
. To help you test your solutions, we've included tests
for most assignments under src/test
. After completing an assignment, run the tests to validate your solution.
Feeling stuck? Don't worry, we've got your back. You can find solutions to every assignment in the solutions
branch.
Keep in mind that there are often multiple ways to solve a problem, so it's a good idea to compare your solutions
with the ones we've provided.
Want to hit the ground running on training day? Great! Here's what you need to do to make sure you're all set:
Step 1: Install IntelliJ
You'll need to download and install a recent version of IntelliJ. You are free to use another IDE, but if you run into issues the trainer might not be able to support you.
Step 2: Fork this project
We recommend that you Fork this repository. This will give you your own copy of the codebase to which you can commit your solutions.
Note By default GitHub only forks the
main
branch. If you want local access to thesolutions
branch, make sure to uncheck the "Copy themain
branch only" checkbox during the forking process.
Step 3: Clone your forked project
Clone your forked repository.
Step 4: Open the project in IntelliJ
Open the project in IntelliJ via file -> open
. Opening the project for the first time might take a while.
If you run into reference resolving issues try refreshing Gradle via Gradle -> Reload All Gradle Projects
.
We use Gradle as our trusty build tool. Don't worry about manually installing it! The Gradle Wrapper takes care of everything for you. It automatically invokes a declared version of Gradle, downloading it if necessary.
Note This section was written with unix users in mind. Windows users should omit the
./
prefix and just writegradlew <arguments>
instead of./gradlew <arguments>
.
To build and test the project, simply run the following command:
./gradlew build
However, there's a catch! Running the build command on the main
branch will result in test errors. Don't panic -
this is totally normal.
The tests won't pass until you've completed the assignments. To make the build pass, simply exclude the tests like this:
./gradlew build -x test
Are you ready to put your solutions to the test?
Starting tests directly from the IDE (using the 'play' buttons) is the most convenient. But you can also use the wrapper if you want.
Run all tests in all modules:
./gradlew test
Run all tests in a single module:
./gradlew :module-01:test
Run a single test file:
./gradlew :module-01:test --tests '*Assignment02Test'