{"id":3784,"date":"2014-07-31T15:50:13","date_gmt":"2014-07-31T05:50:13","guid":{"rendered":"https:\/\/www.flamingspork.com\/blog\/?p=3784"},"modified":"2014-07-31T15:50:13","modified_gmt":"2014-07-31T05:50:13","slug":"testing-that-all-projects-need","status":"publish","type":"post","link":"https:\/\/www.flamingspork.com\/blog\/2014\/07\/31\/testing-that-all-projects-need\/","title":{"rendered":"Testing that all projects need"},"content":{"rendered":"<p>Today, I was reminded of a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Jim_Starkey\">Jim Starkey<\/a> quote on the <a href=\"https:\/\/launchpad.net\/randgen\">Random Query Generator<\/a>:<\/p>\n<p>&#8220;The Colonoscopy of Database Software&#8221;<br \/>\n&#8211; Jim Starkey<\/p>\n<p>If your project does not have something that you can adapt that quote to, odds are your testing is inadequate.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today, I was reminded of a Jim Starkey quote on the Random Query Generator: &#8220;The Colonoscopy of Database Software&#8221; &#8211; Jim Starkey If your project does not have something that you can adapt that quote to, odds are your testing &hellip; <a href=\"https:\/\/www.flamingspork.com\/blog\/2014\/07\/31\/testing-that-all-projects-need\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[76,14],"tags":[633,628,592,593,591,590],"class_list":["post-3784","post","type-post","status-publish","format-standard","hentry","category-code","category-mysql","tag-code","tag-mysql","tag-qa","tag-quote","tag-randgen","tag-testing"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p5a6n8-Z2","jetpack-related-posts":[{"id":3676,"url":"https:\/\/www.flamingspork.com\/blog\/2014\/02\/14\/ghosts-of-mysql-past-part-5-the-era-of-acquisitions\/","url_meta":{"origin":3784,"position":0},"title":"Ghosts of MySQL Past Part 5: The Era of Acquisitions","author":"Stewart Smith","date":"2014-02-14","format":false,"excerpt":"This week I've been writing based on my linux.conf.au 2014 talk, which you can watch the recording of. Also see Part 1, Part 2, Part 3 and Part 4. My feed feel off Planet MySQL for a bit so you may have missed those posts. Now we head into the\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3231,"url":"https:\/\/www.flamingspork.com\/blog\/2013\/03\/03\/unireg-h-is-gone\/","url_meta":{"origin":3784,"position":1},"title":"unireg.h is finally gone","author":"Stewart Smith","date":"2013-03-03","format":false,"excerpt":"I got rid of unireg.cc way back in 2009 as I rewrote all the FRM related code inside Drizzle to instead use a nice protobuf based structure. If you're wondering what was there, I just quote this part of pack_screens() from unireg.cc in MySQL 5.6: start_row=4; end_row=22; cols=80; fields_on_screen=end_row+1-start_row; We\u2026","rel":"","context":"In &quot;drizzle&quot;","block_context":{"text":"drizzle","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/drizzle-work-et-al\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":800,"url":"https:\/\/www.flamingspork.com\/blog\/2007\/03\/10\/code-size-of-an-engine-versus-test-suite\/","url_meta":{"origin":3784,"position":2},"title":"Code size of an engine versus test suite","author":"Stewart Smith","date":"2007-03-10","format":false,"excerpt":"If you count the lines of code in the MySQL Cluster (NDB) test suite (mysql-5.1\/storage\/ndb\/test - and exclude the old ODBC stuff) you come up with about 104000 lines of code. This is in contrast to the approximate other 350,000 lines of code for the NDB engine (excluding the handler,\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1736,"url":"https:\/\/www.flamingspork.com\/blog\/2009\/10\/13\/random-query-generator-added-to-drizzle-automation\/","url_meta":{"origin":3784,"position":3},"title":"Random Query Generator added to Drizzle Automation","author":"Stewart Smith","date":"2009-10-13","format":false,"excerpt":"As Lee announced, we have the Random Query Generator added to Drizzle Automation. It always amazed me that we were lacking such a fundamental testing tool for MySQL for all that time. I always found the similar (NDB API) tools for MySQL Cluster (NDB) to be really, really useful when\u2026","rel":"","context":"In &quot;drizzle&quot;","block_context":{"text":"drizzle","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/drizzle-work-et-al\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":2041,"url":"https:\/\/www.flamingspork.com\/blog\/2010\/06\/29\/enum-now-works-properly-in-drizzle\/","url_meta":{"origin":3784,"position":4},"title":"ENUM now works properly (in Drizzle)","author":"Stewart Smith","date":"2010-06-29","format":false,"excerpt":"Over at the Drizzle blog, the recent 2010-06-07 tarball was announced. This tarball release has my fixes for the ENUM type, so that it now works as it should. I was quite amazed that such a small block of code could have so many bugs! One of the most interesting\u2026","rel":"","context":"In &quot;drizzle&quot;","block_context":{"text":"drizzle","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/drizzle-work-et-al\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":754,"url":"https:\/\/www.flamingspork.com\/blog\/2006\/10\/26\/mysql-ndb-team-trees-up-on-bkbitsnet\/","url_meta":{"origin":3784,"position":5},"title":"mysql NDB team trees up on bkbits.net","author":"Stewart Smith","date":"2006-10-26","format":false,"excerpt":"If you head over here: mysql on bkbits.net you can get a copy of the NDB team trees. This is where we push stuff before it hits the main MySQL trees so that we can get some extra testing in (also for when pulling from the main tree). So you\u2026","rel":"","context":"In &quot;mysql&quot;","block_context":{"text":"mysql","link":"https:\/\/www.flamingspork.com\/blog\/category\/work-et-al\/mysql\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/3784","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/comments?post=3784"}],"version-history":[{"count":1,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/3784\/revisions"}],"predecessor-version":[{"id":3785,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/posts\/3784\/revisions\/3785"}],"wp:attachment":[{"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/media?parent=3784"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/categories?post=3784"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.flamingspork.com\/blog\/wp-json\/wp\/v2\/tags?post=3784"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}