<div class="gmail_quote">Hi Jono,</div><div class="gmail_quote"><br></div><div class="gmail_quote">On 23 January 2012 16:00, Jonathan <span dir="ltr"><<a href="mailto:j.fantham@gmail.com">j.fantham@gmail.com</a>></span> wrote:</div>
<div class="gmail_quote"><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br></blockquote><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
On 23 January 2012 15:53, Richard Taylor <<a href="mailto:richard@richt.co.uk">richard@richt.co.uk</a>> wrote:<br>><br>> Is your Retailer created by the spec?  I think the tests are run in a<br>> transaction that gets rolled back, so only the db session that created the<br>
> object will be able to see it, this would explain why you can't see it<br>> anywhere else.</blockquote><blockquote class="gmail_quote" style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
 </blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Yeah it is. It's created in a before(:each).<br>
<br>
Ok thanks, so I guess can't use transactional specs and I'll need to<br>
stick with fixtures for now. Pity!<br></blockquote><div><br></div><div>Not necessarily - using something like the database_cleaner gem (<a href="https://github.com/bmabey/database_cleaner">https://github.com/bmabey/database_cleaner</a>) you can clean up after each example using table truncation - there's an example configuration in the README. My integration tests (cucumber, not rspec, but same diff) run quite happily using factories and DatabaseCleaner with the truncation strategy.</div>
<div><br></div><div>Alternatively, there might be some way to force everything to use a shared DB connection, but it's hard to say without knowing more about your setup.</div><div><br></div><div>Cheers,</div><div>Simon</div>
<div> </div></div>-- <br>Simon Coffey<br>Developer, Tribesports<br><a href="mailto:simon@tribesports.com" target="_blank">simon@tribesports.com</a> | 07960 004 857<br>