<p dir="auto">Bonfire task:<br>
Drop the elements of an array (first argument), starting from the front, until the predicate (second argument) returns true.</p>
<hr>
<p dir="auto">It's possible to solve this bonfire without completing all of the objectives.<br>
One of the objectives is that you should continue <strong>until</strong> the second argument is true. But even if you never stop, you can still pass the bonfire. Look at the code example below:</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="function drop(arr, func) {

  return arr.filter(func);
}

drop([1, 2, 3, 1], function (n) {return n &lt; 2; });"><pre class="notranslate"><code class="notranslate">function drop(arr, func) {

  return arr.filter(func);
}

drop([1, 2, 3, 1], function (n) {return n &lt; 2; });
</code></pre></div>
<p dir="auto">This will continue filtering, giving you the wrong answer. But since no test case checks if the code actually continues past the first <em>false</em> value, it will pass.</p>
<hr>
<p dir="auto">If I was unclear, then feel free to ask what I meant. :)</p>
<p dir="auto">Challenge <a href="http://freecodecamp.com/challenges/bonfire-drop-it" rel="nofollow">http://freecodecamp.com/challenges/bonfire-drop-it</a> has an issue. Please describe how to reproduce it, and include links to screenshots if possible.</p>
<hr>
<p dir="auto">It describes only eating the head of the array and then stopping, returning the rest of the array. This is not what is tested.</p>
<p dir="auto">All of the tests can be passed using <code class="notranslate">return arr.filter(func);</code> which will filter ALL items from the array, not just from the head.</p>
<p dir="auto">There needs to be an additional test case, like <code class="notranslate">expect(drop([1, 2, 3, 7, 4], function(n) {return n &gt; 5; })).to.eqls([7, 4]);</code></p>