<div class="gmail_quote">On Fri, Apr 20, 2012 at 10:53 AM, Luke Macpherson <span dir="ltr"><<a href="mailto:macpherson@chromium.org">macpherson@chromium.org</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


Tests are a good thing, but they are not the only thing. Consider the<br>
state-space of a large piece of software like webkit - it is<br>
essentially infinite. You can’t test every case and code path to<br>
ensure correctness.</blockquote><div><br>While I do understand where you're coming from, this is an agreed policy. We should state why tests are absent in change logs or in bugs when it's hard to create one putting reasonable efforts into creating one.</div>

<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This is a reasonable goal, so let’s remember that the goal is to<br>
prevent the bug from recurring, not to add a test for its own sake. In<br>
this case, the potential null pointer dereference was found using<br>
coverity, a static analysis tool that we run nightly.</blockquote><div><br></div><div>Is the code reachable? It's quite possible that the code is unreachable and therefore there is no way to hit that crash. Without a test, we can't answer that question.</div>

<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">If the bug were to be reintroduced it is reasonable to expect that static analysis would be able to find it again.</blockquote>

<div><br></div><div>WebKit contributors are not required to use such a tool prior to committing their changes at least for now, but we DO require contributors to run our layout tests. And I don't think we want to require all contributors to run coverity on webkit before committing their patches. Given that, there is definitely a benefit in adding a test case for simple fixes like this.</div>

<div><br></div><div>On the other hand, I don't think it's realistic to force contributors to come up with a test case if it's really hard since that could become a significant development overhead as well. And in those cases where we decide that it's too hard to create a test, we explicitly mention it in the change log. It is this piece the particular patch ap brought up is missing.</div>

<div><br></div><div>- Ryosuke</div><div><br></div></div>