{"id":965,"date":"2010-06-23T11:20:27","date_gmt":"2010-06-23T18:20:27","guid":{"rendered":"http:\/\/www.milfont.org\/tech\/?p=965"},"modified":"2010-06-23T11:41:52","modified_gmt":"2010-06-23T18:41:52","slug":"setup-sunspot-e-rspec","status":"publish","type":"post","link":"https:\/\/www.milfont.org\/tech\/2010\/06\/23\/setup-sunspot-e-rspec\/","title":{"rendered":"Setup do Sunspot-rails no Rspec"},"content":{"rendered":"<p><script type=\"text\/javascript\"> function get_style965 () { return \"none\"; } function end965_ () { document.getElementById('wqd965').style.display = get_style965(); } <\/script>T\u00ednhamos um problema nos testes unit\u00e1rios por d\u00e9bito t\u00e9cnico [na verdade desleixo mesmo] com o setup do <a href=\"http:\/\/rspec.info\/rails\/\">Rspec<\/a> e <a href=\"http:\/\/github.com\/outoftime\/sunspot\/\">Sunspot-rails<\/a> em determinado projeto. O problema era que mesmo para executar um simples teste unit\u00e1rio, levant\u00e1vamos o Sunspot no spec_helper.rb.<\/p>\n<p>Resolvi refatorar isso, acabei descobrindo no <a href=\"http:\/\/rspec.info\/documentation\/before_and_after.html\">before\/after do Spec::Runner.configure<\/a> algo que eu n\u00e3o usava e que j\u00e1 existia desde o rspec &#8220;1.1.12 \/ 2009-01-11&#8221;, pelo que percebi no changelog.<\/p>\n<p>O que fiz e parece bobo \u00e9 separar pelo tipo (type) <strong>integration<\/strong> a subida de uma instancia real do Sunspot e agora d\u00e1 para usar a estrutura de <a href=\"http:\/\/wiki.github.com\/outoftime\/sunspot\/rspec-and-sunspot\">Rspec que o Sunspot disponibiliza<\/a> para meus testes unit\u00e1rios.<br \/>\n[gist id=&#8221;450280&#8243;]<\/p>\n<p>Inspirado <a href=\"http:\/\/blog.kabisa.nl\/2010\/02\/03\/running-cucumber-features-with-sunspot_rails\/\">nesse post<\/a>, eu adaptei para o c\u00f3digo que uso ao subir o sunspot com linha de comando para os testes de integra\u00e7\u00e3o. Observe no c\u00f3digo anterior que importo configura\u00e7\u00f5es da pasta <em><strong>support<\/strong><\/em>, inclusive a classe JojobaSunspot, usada no after e before de integration.<\/p>\n<p>[gist id=&#8221;450298&#8243;]<\/p>\n<p>Desde que colocamos testes de integra\u00e7\u00e3o o tempo de execu\u00e7\u00e3o da bateria subiu muito, provocamos um setup ineficiente e desnecess\u00e1rio para os testes unit\u00e1rios. Fica a dica para quem passar pelo mesmo problema.<\/p>\n<p id=\"wqd965\">Typically chemist&#8217;s shop can sale to you with discreet treatments for various soundness problems. There are numerous of safe online pharmacies that will deliver medications to your address. There are divers medicines for each afflictions. Learn more about &#8220;<a href=\"http:\/\/free-viagrasamples.com\/viagra_coupons.html\">viagra manufacturer coupon<\/a>&#8220;. Maybe &#8220;<a href=\"http:\/\/free-viagrasamples.com\/viagra_coupons.html\">viagra discount coupons<\/a>&#8221; is a so complicated problem. Matters, like &#8220;<a href=\"http:\/\/free-viagrasamples.com\/viagra_coupons.html\">coupons for viagra<\/a>&#8220;, are coupled numerous types of health problems. If you need to take prescription medications, ask your druggist to check your testosterone levels before. Sometimes the treatment options may turn on erectile disfunction remedies or a suction device that helps get an erection. Keep in mind web-site which is ready to sell erectile disfunction drugs like Viagra without a prescription is fraudulent. When you purchase from an unknown web-site, you run the risk of getting counterfeit remedies. <\/p>\n<p><script type=\"text\/javascript\"> end965_(); <\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>T\u00ednhamos um problema nos testes unit\u00e1rios por d\u00e9bito t\u00e9cnico [na verdade desleixo mesmo] com o setup do Rspec e Sunspot-rails em determinado projeto. O problema era que mesmo para executar um simples teste unit\u00e1rio, levant\u00e1vamos o Sunspot no spec_helper.rb. Resolvi refatorar isso, acabei descobrindo no before\/after do Spec::Runner.configure algo que eu n\u00e3o usava e que [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[37,301,36,302],"tags":[282,382,224,44,223,299,300],"_links":{"self":[{"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/posts\/965"}],"collection":[{"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/comments?post=965"}],"version-history":[{"count":11,"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/posts\/965\/revisions"}],"predecessor-version":[{"id":974,"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/posts\/965\/revisions\/974"}],"wp:attachment":[{"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/media?parent=965"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/categories?post=965"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.milfont.org\/tech\/wp-json\/wp\/v2\/tags?post=965"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}