<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4627162941031918606</id><updated>2012-02-16T11:41:30.910-08:00</updated><title type='text'>Missing Bit</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://missingbit.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4627162941031918606/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://missingbit.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Sujoy</name><uri>http://www.blogger.com/profile/14019331633194846052</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>1</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4627162941031918606.post-724877460777769841</id><published>2011-07-20T17:10:00.001-07:00</published><updated>2011-07-20T17:10:07.407-07:00</updated><title type='text'>Stubbing constants in Rspec</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;This &lt;a href="http://digitaldumptruck.jotabout.com/?p=551"&gt;blog&lt;/a&gt;&amp;nbsp;talks about stubbing constants in RSpec. The posted solution only works for global constants.&lt;br /&gt;&lt;br /&gt;The following version works with all constants.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;def parse(constant)&lt;br /&gt;  source, _, constant_name = constant.to_s.rpartition('::')&lt;br /&gt;&lt;br /&gt;  [source.constantize, constant_name]&lt;br /&gt;end&lt;br /&gt;&lt;br /&gt;def with_constants(constants, &amp;amp;block)&lt;br /&gt;  saved_constants = {}&lt;br /&gt;  constants.each do |constant, val|&lt;br /&gt;    source_object, const_name = parse(constant)&lt;br /&gt;&lt;br /&gt;    saved_constants[constant] = source_object.const_get(const_name)&lt;br /&gt;    Kernel::silence_warnings { source_object.const_set(const_name, val) }&lt;br /&gt;  end&lt;br /&gt;&lt;br /&gt;  begin&lt;br /&gt;    block.call&lt;br /&gt;  ensure&lt;br /&gt;    constants.each do |constant, val|&lt;br /&gt;      source_object, const_name = parse(constant)&lt;br /&gt;&lt;br /&gt;      Kernel::silence_warnings { source_object.const_set(const_name, saved_constants[constant]) }&lt;br /&gt;    end&lt;br /&gt;  end&lt;br /&gt;end&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4627162941031918606-724877460777769841?l=missingbit.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://missingbit.blogspot.com/feeds/724877460777769841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4627162941031918606&amp;postID=724877460777769841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4627162941031918606/posts/default/724877460777769841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4627162941031918606/posts/default/724877460777769841'/><link rel='alternate' type='text/html' href='http://missingbit.blogspot.com/2011/07/stubbing-constants-in-rspec_20.html' title='Stubbing constants in Rspec'/><author><name>Sujoy</name><uri>http://www.blogger.com/profile/14019331633194846052</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
