)]}'
{"src/test/java/net/spy/memcached/util/StringUtilsTest.java":[{"author":{"_account_id":1000013,"name":"Matt Ingenthron","email":"ingenthr@gmail.com","username":"ingenthr","avatars":[{"url":"https://www.gravatar.com/avatar/dface45e4481ef6bd571492fa3b4ef8c.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/dface45e4481ef6bd571492fa3b4ef8c.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/dface45e4481ef6bd571492fa3b4ef8c.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/dface45e4481ef6bd571492fa3b4ef8c.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"526990860df3f97fc9134e3c0d51f5c32e979927","unresolved":false,"context_lines":[{"line_number":69,"context_line":"  }"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"  @Test"},{"line_number":72,"context_line":"  public void shouldValidateNonJSONObject() {"},{"line_number":73,"context_line":"    assertFalse(StringUtils.isJsonObject(\"foobar\"));"},{"line_number":74,"context_line":"    assertFalse(StringUtils.isJsonObject(\"0.5\"));"},{"line_number":75,"context_line":"    assertFalse(StringUtils.isJsonObject(\"1,244.0\"));"}],"source_content_type":"text/x-java","patch_set":1,"id":"61a0e75a_2501b40b","line":72,"updated":"2014-03-06 06:41:07.000000000","message":"might be nice to have some tougher things in there.  like, leave off a curly, or have an extra or missing comma","commit_id":"c8a50583b61eba4aa1e7437fcd94a919c9e14a28"},{"author":{"_account_id":1000327,"name":"Michael Nitschinger","email":"michael.nitschinger@couchbase.com","username":"daschl","avatars":[{"url":"https://www.gravatar.com/avatar/ca669dcaa36c077d54b96af979d77b9d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/ca669dcaa36c077d54b96af979d77b9d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/ca669dcaa36c077d54b96af979d77b9d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/ca669dcaa36c077d54b96af979d77b9d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"17da6bfb01442c42f91e2ee345518ad00d61c702","unresolved":false,"context_lines":[{"line_number":69,"context_line":"  }"},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"  @Test"},{"line_number":72,"context_line":"  public void shouldValidateNonJSONObject() {"},{"line_number":73,"context_line":"    assertFalse(StringUtils.isJsonObject(\"foobar\"));"},{"line_number":74,"context_line":"    assertFalse(StringUtils.isJsonObject(\"0.5\"));"},{"line_number":75,"context_line":"    assertFalse(StringUtils.isJsonObject(\"1,244.0\"));"}],"source_content_type":"text/x-java","patch_set":1,"id":"61a0e75a_8523e8b0","line":72,"in_reply_to":"61a0e75a_2501b40b","updated":"2014-03-06 07:00:38.000000000","message":"Oh, you are hitting a tough spot here. If you check the old impl, stuff like this was never caught. \n\nI know there are some fancy regex out there to check for proper JSON, but this would not be backwards compatible with the current approach. It just checks for startsWith.\n\nI refrained from changing the behaviour because of our previous discussion on the Query refactoring.","commit_id":"c8a50583b61eba4aa1e7437fcd94a919c9e14a28"},{"author":{"_account_id":1000013,"name":"Matt Ingenthron","email":"ingenthr@gmail.com","username":"ingenthr","avatars":[{"url":"https://www.gravatar.com/avatar/dface45e4481ef6bd571492fa3b4ef8c.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/dface45e4481ef6bd571492fa3b4ef8c.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/dface45e4481ef6bd571492fa3b4ef8c.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/dface45e4481ef6bd571492fa3b4ef8c.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"526990860df3f97fc9134e3c0d51f5c32e979927","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  @Test"},{"line_number":79,"context_line":"  public void shouldValidateAsciiKey() {"},{"line_number":80,"context_line":"    StringUtils.validateKey(\"mykey1234\", false);"},{"line_number":81,"context_line":"    assertTrue(true);"},{"line_number":82,"context_line":"  }"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"  @Test(expected \u003d IllegalArgumentException.class)"}],"source_content_type":"text/x-java","patch_set":1,"id":"61a0e75a_e50aec26","line":81,"updated":"2014-03-06 06:41:07.000000000","message":"nitpick: might be nice to comment you\u0027re checking for an exception here.","commit_id":"c8a50583b61eba4aa1e7437fcd94a919c9e14a28"},{"author":{"_account_id":1000327,"name":"Michael Nitschinger","email":"michael.nitschinger@couchbase.com","username":"daschl","avatars":[{"url":"https://www.gravatar.com/avatar/ca669dcaa36c077d54b96af979d77b9d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d32","height":32},{"url":"https://www.gravatar.com/avatar/ca669dcaa36c077d54b96af979d77b9d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d56","height":56},{"url":"https://www.gravatar.com/avatar/ca669dcaa36c077d54b96af979d77b9d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d100","height":100},{"url":"https://www.gravatar.com/avatar/ca669dcaa36c077d54b96af979d77b9d.jpg?d\u003didenticon\u0026r\u003dpg\u0026s\u003d120","height":120}]},"change_message_id":"17da6bfb01442c42f91e2ee345518ad00d61c702","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  @Test"},{"line_number":79,"context_line":"  public void shouldValidateAsciiKey() {"},{"line_number":80,"context_line":"    StringUtils.validateKey(\"mykey1234\", false);"},{"line_number":81,"context_line":"    assertTrue(true);"},{"line_number":82,"context_line":"  }"},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"  @Test(expected \u003d IllegalArgumentException.class)"}],"source_content_type":"text/x-java","patch_set":1,"id":"61a0e75a_451de068","line":81,"in_reply_to":"61a0e75a_e50aec26","updated":"2014-03-06 07:00:38.000000000","message":"hmm I dont want an exception here?\nThe problem is that validateKey returns void, so there is nothing I can assert against.\n\nIf all is good the true(true) hits, if an exception is raised inside the method it will fail. Or maybe I misunderstood you?","commit_id":"c8a50583b61eba4aa1e7437fcd94a919c9e14a28"}]}
