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.
the same here
for string
expect result:
my result, I think correct:
please check random test generator
no problem. and don't feel alone in your troubles – it took me several different implementation approaches before i finally found one that was worth submitting. if you have any more questions, feel free to let me know – i'd be happy to help.
Well, this is embarrassing.
Thanks a lot for taking the time to reply. This is not the first time that I was working on an encoder/decoder pair, and argued from the perspective of one part of the pair, when I was working on the other.
Maybe I'll learn one day...
Anyway, I'll start over and hopefully finally check this one off.
replies to your list:
yes, that is correct
that was what i initially thought, too. but after finding the bugs in my own code, i realized that the inputs to decode are in the correct ascii85 range
You can create a bytestream from a JavaScript string using
for the sake of simplicity, i think it's OK that the kata only works on String types (annoying as that might be)
again, i don't think there are character encoding issues here:
Ah, that's unfortunate. I suppose that's because if you change test cases after the fact, there might be (and there would be in this kata) a bunch of already submitted solutions that won't pass the new test suite.
On the other hand, it's not good to have incorrect new solutions pass, either. Personally, I would prefer to fix the tests so that future submissions are correct, but I understand that takes some effort in the implementation, and probably even in coming up with a proper process in the first place.
This issue still persists after a year. I have tried to figure out how to edit the testcases, but unfortunately could not.
It should be sufficient to add two testcases that remove nodes 4 and 12 respectively, and to check via the already existing helper function "traverse" against a [1, 2, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] and [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15].
Getting the remove method right is one of the very few tricky bits in this kata, and should really be added to this otherwise very thorough suite.
The description could be a little bit clearer, although it does describe what's happening.
To clarify: In the tests, two clients are being instantiated, called A and B. A sends the A messages, i.e. in your example, A sends "a1" and "a2". B sends the B messages; in your example, B sends "b1".
The result should be that client A receives the message "b1", and client B receives the messages "a1", "a2", in that order.
It seems that in your implementation, all messages are being received by client B. Maybe something went wrong with the instantiation?
Edit: Aaand I answered a 7 months old question. Sorry, should have checked the date before my necromancy.
I seem consistently to get a result of 96 tests passed, and 1 failed.
The failing test has the title " Testing ASCII85 decoding with random binary input: ".
Now, it is possible that I'm misunderstanding something, but here's my problem with this test:
Again, it's quite likely that I misunderstand the algorithm or am misinterpreting something. I've stated my concerns in a straightforward way to make it easier to address possible misconceptions on my end.
For the sake of completeness, here are the bytes that tripped up my "solution". I couldn't figure out how I could access the "should"-string from the test case to work out what exactly the problem was, since there appeared to be a number of characters in there that couldn't be displayed, or created line breaks or other formatting. Additionally, I can't be sure that I'm seeing the correct string because of arbitrary character encoding mismatches.