Some tests must be done to prevent error caused by user input. These tests must cover:
[x] Check if kwarg is an allowed variable.
[ ] Check if the input variable is in the correct type.
[ ] A more intelligent way to check different possible input combination. For instance, when the object can be instantiated by different combinations, this test must be done at the beginning of the call instead of the ongoing function.
Some tests must be done to prevent error caused by user input. These tests must cover: