Loading collection data...
Collections are a way for you to organize kata so that you can create your own training routines. Every collection you create is public and automatically sharable with other warriors. After you have added a few kata to a collection you and others can train on the kata contained within the collection.
Get started now by creating a new collection.
Nice kata to practice sorting with.
Python: Random tests are vulnerable to input modification
python new test framework is required. updated in this fork
I think the rangom tests violate the given assumptions: 'there will always be a rank 1 in the given input ranks are of type string
rank numbers are incremented, and not skippped (1.1 could be followed by 1.2, not 1.3)'
Random test:
['2', '2.1', '2.1.1.1', '2.1.1.1.2', '2.1.1.2', '3', '4']
^ no ^ skipping 2.1.1 here
rank 1 here
I've switched the
expected
andactual
assertion arguments.I've added a bunch of randomised test cases that use a subset of the available test cases.
Yes, I saw the "shuffle part" of the tests. But the solution being always the same, it could be hard coded without a real random test.
Regards,
B4B
I added
#
at the end and got accepted as a valid, separate solution.I don't know what is causing this, but thanks for letting me know :)
@Blind4Basics
,The six main tests are somewhat random (using
random.shuffle
) but they could be better. Generating random "version" strings would not be difficult at all and you could test many more (I usually see ~100 random tests on most katas).Thanks for mentioning that!
It would be nice to have random tests too ! :)
@danarters
,This kata seems familiar but I couldn't find a duplicate after a quick search. Here are a few suggestions in the mean time!
Typo in the description:
skippped -> skipped
It looks like you accidentally reversed the order of the arguments in the tests. It just messes up the error message
{actual} should equal {expected}
.test.assert_equals(expected, actual)
should betest.assert_equals(actual, expected)
(Optional) The
Example Test Cases
seem a bit over-complicated. You don't really need to shuffle those lists every time they are run. They could be easily simplified:(Optional) There is also a fair bit of repetition in your main
Test Cases
. It could be cleaned up quite easily.Thanks!
I'm not sure either :/ I just submitted again to make sure and it passed all the tests.
Hi,
You have inverted the
expected
andactual
values in the assertions ! ;)A glitch I think. I did not submit that version anyway.
I'm not sure why this is marked as incorrect, I just ran it through the new set of tests and it passes all of them.
Maybe it is an issue with how codewars handles updated test cases
Loading more items...