Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Ticket #4810 (closed defect: fixed)

Opened 2 years ago

Last modified 2 years ago

[PATCH] assert_tag only works on the first page loaded in an integration test

Reported by: easleydp@gmail.com Assigned to: minam
Priority: high Milestone: 1.2
Component: ActionPack Version: 1.1.1
Severity: major Keywords: integration test
Cc: jarkko@jlaine.net

Description

@html_document is initialised in lazy fashion (@html_document = HTML::Document.new(@response.body)) via the find_tag method in action_controller\test_process.rb. This instance variable never gets reset when assert_tag is called again for a subsequent page. This means assert_tag invariably fails on the subsequent page because @html_document still records the first page.

Attachments

patch-for-ticket-4810.diff (450 bytes) - added by jarkko@jlaine.net on 04/25/06 11:14:31.
Patch for Ticket #4810

Change History

04/25/06 11:08:49 changed by jarkko@jlaine.net

  • severity changed from normal to major.
  • cc set to jarkko@jlaine.net.
  • priority changed from normal to high.
  • owner changed from David to minam.
  • version set to 1.1.1.
  • milestone set to 1.2.
  • keywords set to integration test.

You can work around this by putting "@html_document = nil" after subsequent requests. I'm writing a patch but can't find any ActionPack tests for integration tests. This only affects integration tests so normal assertion tests (action_pack_assertions_test.rb and test_test.rb) won't catch this bug.

04/25/06 11:14:31 changed by jarkko@jlaine.net

  • attachment patch-for-ticket-4810.diff added.

Patch for Ticket #4810

04/25/06 11:14:55 changed by anonymous

  • summary changed from assert_tag only works on the first page loaded in an integration test to [PATCH] assert_tag only works on the first page loaded in an integration test.

06/14/06 08:00:11 changed by jarkko@jlaine.net

  • status changed from new to closed.
  • resolution set to fixed.

Fixed in rev 4397 by Jamis.

06/18/06 15:49:33 changed by anonymous

  • status changed from closed to reopened.
  • resolution deleted.

Oops, it wasn't fixed after all.

07/01/06 20:10:42 changed by anonymous

Can this patch be applied, as this is a serious problem? I've tested it and it works.

07/08/06 04:58:56 changed by bitsweat

  • status changed from reopened to closed.
  • resolution set to fixed.

(In [4591]) Reset @html_document between requests so assert_tag works. Closes #4810.

08/05/06 05:37:22 changed by anonymous

home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home home