Earn extra honor and gain new allies!
Honor is earned for each new codewarrior who joins.
Learn more
  • thank you kata sensei for comprehensive instructions.

  • A minor typo in the description: The function should insert only after the first occur[R]ence ..

  • Looking at the tests I can tell that everything seems fine to me (especially when viewing tests requires completing the kata). So, I'm tempted to say that it's your code that isn't working correctly.

  • Deleted the red dot as suggested and now sample test passes. But Attempt fails on 1 basic test and 1 random test. I don't believe either failure has to do with my code, since both errors mention the each_char method and the random test error mentions the times method. I used neither of those methods in my solution.

    For the basic test failure:

    #<ArgumentError: bad value for range>
    main.rb:12:in `block in insert_missing_letters'
    main.rb:9:in `each_char'
    main.rb:9:in `insert_missing_letters'
    main.rb:36:in `block (2 levels) in <main>'
    /runner/frameworks/ruby/cw-2.rb:180:in `wrap_error'
    /runner/frameworks/ruby/cw-2.rb:72:in `it'
    /runner/frameworks/ruby/cw-2.rb:206:in `it'
    main.rb:34:in `block in <main>'
    /runner/frameworks/ruby/cw-2.rb:55:in `block in describe'
    /runner/frameworks/ruby/cw-2.rb:46:in `measure'
    /runner/frameworks/ruby/cw-2.rb:51:in `describe'
    /runner/frameworks/ruby/cw-2.rb:202:in `describe'
    main.rb:33:in `<main>'
    

    For the random test failure:

    #<ArgumentError: bad value for range>
    main.rb:12:in `block in insert_missing_letters'
    main.rb:9:in `each_char'
    main.rb:9:in `insert_missing_letters'
    main.rb:52:in `block (3 levels) in <main>'
    main.rb:46:in `times'
    main.rb:46:in `block (2 levels) in <main>'
    /runner/frameworks/ruby/cw-2.rb:180:in `wrap_error'
    /runner/frameworks/ruby/cw-2.rb:72:in `it'
    /runner/frameworks/ruby/cw-2.rb:206:in `it'
    main.rb:43:in `block in <main>'
    /runner/frameworks/ruby/cw-2.rb:55:in `block in describe'
    /runner/frameworks/ruby/cw-2.rb:46:in `measure'
    /runner/frameworks/ruby/cw-2.rb:51:in `describe'
    /runner/frameworks/ruby/cw-2.rb:202:in `describe'
    main.rb:33:in `<main>'
    
  • @mmanousos, click Attempt instead, or delete the red dot after the sample test and try again.

  • Mistake in sample tests in Ruby:

    Test.assert_equals(insert_missing_letters("hello"),"hIJKMNPQRSTUVWXYZeFGIJKMNPQRSTUVWXYZlMNPQRSTUVWXYZloPQRSTUVWXYZ")​    <--    unknown character after closing parenthesis
                                                                                                                                   (it's not being displayed here for some reason)
    
  • There's a mistake in sample tests.

  • Yes, I'm sure. My script runs on my system. I wrote it in my code editor then copied and pasted here. It is only 15 lines long, and includes all necessary closing end commands. So I'm not sure why they would register an error on line 20.

  • Are you sure your code isn't missing the end the error is about?

  • I am unable to validate my solution: getting a tIDENTIFIER error on line 20, but my code is only 15 lines long. So maybe it's an error with the test?

    main.rb:20: syntax error, unexpected tIDENTIFIER, expecting keyword_end

  • Haskell is up.

  • Damn, sorry. I missed that.
    Thanks Chrono.

  • Answered.

  • No, it's already in the instructions:

    The function should insert only after the first occurence of each character of the input string, all the alphabet letters that:

  • The last "l" given in the example of "holly" shouldn´t be also followed by the missing letters of the alphabets? Something like:

    output="hIJKMNPQRSTUVWXZoPQRSTUVWXZlMNPQRSTUVWXZl + MNPQRSTUVWXZ + yZ"

    Hope I didn´t miss anything.

  • Loading more items...