Rspec / capybara fails when plain text email templates are added to features in rails2019 Community Moderator ElectionIs there a difference between plain text emails, and multipart emails with only plain text?Why would ActionMailer (rails 2.3.5) start sending text/html email intermittently?undefined method `visit' when using RSpec and Capybara in railsTest BrainTree with rspec and capybara in Rails 4Getting error: Peer authentication failed for user “postgres”, when trying to get pgsql working with railsRuby on Rails rspec uniqueness test failing inexplicablyError while using RSpec + Capybara in Rails 4capybara have_field with nil rspec expectation fails on upgrade to 2.2Store emails in ActionMailer::Base.deliveries array when testing with RspecRails RSpec feature test failing due to nil value, model test passing

Should I take out a loan for a friend to invest on my behalf?

BitNot does not flip bits in the way I expected

Subset counting for even numbers

Why would a jet engine that runs at temps excess of 2000°C burn when it crashes?

What are some noteworthy "mic-drop" moments in math?

Force user to remove USB token

If the Captain's screens are out, does he switch seats with the co-pilot?

What wound would be of little consequence to a biped but terrible for a quadruped?

Are the terms "stab" and "staccato" synonyms?

Is "history" a male-biased word ("his+story")?

Peter's Strange Word

How did Alan Turing break the enigma code using the hint given by the lady in the bar?

Reverse string, can I make it faster?

The bar has been raised

Is it true that real estate prices mainly go up?

Aliens englobed the Solar System: will we notice?

Why doesn't this Google Translate ad use the word "Translation" instead of "Translate"?

Is Gradient Descent central to every optimizer?

Does splitting a potentially monolithic application into several smaller ones help prevent bugs?

Can you reject a postdoc offer after the PI has paid a large sum for flights/accommodation for your visit?

How do I locate a classical quotation?

Am I not good enough for you?

Fourth person (in Slavey language)

Space in array system equations



Rspec / capybara fails when plain text email templates are added to features in rails



2019 Community Moderator ElectionIs there a difference between plain text emails, and multipart emails with only plain text?Why would ActionMailer (rails 2.3.5) start sending text/html email intermittently?undefined method `visit' when using RSpec and Capybara in railsTest BrainTree with rspec and capybara in Rails 4Getting error: Peer authentication failed for user “postgres”, when trying to get pgsql working with railsRuby on Rails rspec uniqueness test failing inexplicablyError while using RSpec + Capybara in Rails 4capybara have_field with nil rspec expectation fails on upgrade to 2.2Store emails in ActionMailer::Base.deliveries array when testing with RspecRails RSpec feature test failing due to nil value, model test passing










0















I am testing a html email (somemail.html.erb) email in rails with the following code:



last_email = ActionMailer::Base.deliveries.last
fragment = Nokogiri::HTML::fragment(last_email.body.raw_source)
fragment.at_css('[id="some-id"]').attr('href')


This looks for an link with an id in the code, and then get the url to follow it later in a test.



However if I add a somemail.text.erb file the test suit breaks.



How do I get the config on my test suit to look at the html email, or even better look at both emails? I have to currently move my text emails out the map to get the feature tests to run and pass.










share|improve this question


























    0















    I am testing a html email (somemail.html.erb) email in rails with the following code:



    last_email = ActionMailer::Base.deliveries.last
    fragment = Nokogiri::HTML::fragment(last_email.body.raw_source)
    fragment.at_css('[id="some-id"]').attr('href')


    This looks for an link with an id in the code, and then get the url to follow it later in a test.



    However if I add a somemail.text.erb file the test suit breaks.



    How do I get the config on my test suit to look at the html email, or even better look at both emails? I have to currently move my text emails out the map to get the feature tests to run and pass.










    share|improve this question
























      0












      0








      0








      I am testing a html email (somemail.html.erb) email in rails with the following code:



      last_email = ActionMailer::Base.deliveries.last
      fragment = Nokogiri::HTML::fragment(last_email.body.raw_source)
      fragment.at_css('[id="some-id"]').attr('href')


      This looks for an link with an id in the code, and then get the url to follow it later in a test.



      However if I add a somemail.text.erb file the test suit breaks.



      How do I get the config on my test suit to look at the html email, or even better look at both emails? I have to currently move my text emails out the map to get the feature tests to run and pass.










      share|improve this question














      I am testing a html email (somemail.html.erb) email in rails with the following code:



      last_email = ActionMailer::Base.deliveries.last
      fragment = Nokogiri::HTML::fragment(last_email.body.raw_source)
      fragment.at_css('[id="some-id"]').attr('href')


      This looks for an link with an id in the code, and then get the url to follow it later in a test.



      However if I add a somemail.text.erb file the test suit breaks.



      How do I get the config on my test suit to look at the html email, or even better look at both emails? I have to currently move my text emails out the map to get the feature tests to run and pass.







      ruby-on-rails ruby email rspec capybara






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Mar 6 at 16:29









      SmickieSmickie

      1,9411465125




      1,9411465125






















          1 Answer
          1






          active

          oldest

          votes


















          1














          The email objects stored in deliveries should have the html and text parts available separately via html_part and text_part. So to look at the html only part you'd do something like



          fragment = Nokogiri::HTML::fragment(last_email.html_part.body.to_s)


          Note: Since you're using capybara there is a gem that can make this sort of testing/email link following easier called capybara-email






          share|improve this answer























          • That's brilliant thanks. And that gem suggestion is great too, I'll move over to that at some point.

            – Smickie
            Mar 7 at 12:14










          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55027890%2frspec-capybara-fails-when-plain-text-email-templates-are-added-to-features-in%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          The email objects stored in deliveries should have the html and text parts available separately via html_part and text_part. So to look at the html only part you'd do something like



          fragment = Nokogiri::HTML::fragment(last_email.html_part.body.to_s)


          Note: Since you're using capybara there is a gem that can make this sort of testing/email link following easier called capybara-email






          share|improve this answer























          • That's brilliant thanks. And that gem suggestion is great too, I'll move over to that at some point.

            – Smickie
            Mar 7 at 12:14















          1














          The email objects stored in deliveries should have the html and text parts available separately via html_part and text_part. So to look at the html only part you'd do something like



          fragment = Nokogiri::HTML::fragment(last_email.html_part.body.to_s)


          Note: Since you're using capybara there is a gem that can make this sort of testing/email link following easier called capybara-email






          share|improve this answer























          • That's brilliant thanks. And that gem suggestion is great too, I'll move over to that at some point.

            – Smickie
            Mar 7 at 12:14













          1












          1








          1







          The email objects stored in deliveries should have the html and text parts available separately via html_part and text_part. So to look at the html only part you'd do something like



          fragment = Nokogiri::HTML::fragment(last_email.html_part.body.to_s)


          Note: Since you're using capybara there is a gem that can make this sort of testing/email link following easier called capybara-email






          share|improve this answer













          The email objects stored in deliveries should have the html and text parts available separately via html_part and text_part. So to look at the html only part you'd do something like



          fragment = Nokogiri::HTML::fragment(last_email.html_part.body.to_s)


          Note: Since you're using capybara there is a gem that can make this sort of testing/email link following easier called capybara-email







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Mar 6 at 18:53









          Thomas WalpoleThomas Walpole

          31.5k33053




          31.5k33053












          • That's brilliant thanks. And that gem suggestion is great too, I'll move over to that at some point.

            – Smickie
            Mar 7 at 12:14

















          • That's brilliant thanks. And that gem suggestion is great too, I'll move over to that at some point.

            – Smickie
            Mar 7 at 12:14
















          That's brilliant thanks. And that gem suggestion is great too, I'll move over to that at some point.

          – Smickie
          Mar 7 at 12:14





          That's brilliant thanks. And that gem suggestion is great too, I'll move over to that at some point.

          – Smickie
          Mar 7 at 12:14



















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55027890%2frspec-capybara-fails-when-plain-text-email-templates-are-added-to-features-in%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          Save data to MySQL database using ExtJS and PHP [closed]2019 Community Moderator ElectionHow can I prevent SQL injection in PHP?Which MySQL data type to use for storing boolean valuesPHP: Delete an element from an arrayHow do I connect to a MySQL Database in Python?Should I use the datetime or timestamp data type in MySQL?How to get a list of MySQL user accountsHow Do You Parse and Process HTML/XML in PHP?Reference — What does this symbol mean in PHP?How does PHP 'foreach' actually work?Why shouldn't I use mysql_* functions in PHP?

          Compiling GNU Global with universal-ctags support Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern) Data science time! April 2019 and salary with experience The Ask Question Wizard is Live!Tags for Emacs: Relationship between etags, ebrowse, cscope, GNU Global and exuberant ctagsVim and Ctags tips and trickscscope or ctags why choose one over the other?scons and ctagsctags cannot open option file “.ctags”Adding tag scopes in universal-ctagsShould I use Universal-ctags?Universal ctags on WindowsHow do I install GNU Global with universal ctags support using Homebrew?Universal ctags with emacsHow to highlight ctags generated by Universal Ctags in Vim?

          Add ONERROR event to image from jsp tldHow to add an image to a JPanel?Saving image from PHP URLHTML img scalingCheck if an image is loaded (no errors) with jQueryHow to force an <img> to take up width, even if the image is not loadedHow do I populate hidden form field with a value set in Spring ControllerStyling Raw elements Generated from JSP tagds with Jquery MobileLimit resizing of images with explicitly set width and height attributeserror TLD use in a jsp fileJsp tld files cannot be resolved