Comments (6)
What do the contents of that widget look like?
I just tried what you mentioned on one of my simpler widgets and it works fine:
irb(main):020:0> Views::Widgets::Base.new.to_html
=> "<!-- BEGIN Views::Widgets::Base depth 0: :id => (DEFAULT) nil, :element => (DEFAULT) nil, :classes => (DEFAULT) nil -->\n<div id=\"u9iydhwl\" class=\"\">\n</div>\n<!-- END Views::Widgets::Base depth 0 -->"
from fortitude.
from fortitude.
@karlhe, take a look at this Gist that I wrote up and attached the relevant files' contents to, as well as the error dump that prompted filing of this issue.
Note the update at the bottom of the intro, where I document discovery of a workaround that indeed allows me to unit test widgets that yield to blocks if specified — by wrapping the widget of interest in a dummy widget. Ceremonious overkill? Absolutely. Can I think of a better way to do it, that actually works? Nope.
from fortitude.
Hey, @alexch, how's life? Your questions should be answered by that Gist I linked to in my answer to @karlhe.
from fortitude.
I'm reopening this, at least temporarily. It strikes me that Fortitude might be breaking #block_given?
in a widget context, and that would be bad. At minimum, I want to write some specs around this to make sure it's completely solid (and stays that way). I'll also make sure there aren't some weird situations in which MyWidget.new.to_html
doesn't work for some reason. I very much want Fortitude widget testing to Just Work. :)
from fortitude.
There was, in fact, an issue here underneath: #block_given?
always returned true
inside a Fortitude widget's content
method, whether or not there was any block passed anywhere. Fixed now.
from fortitude.
Related Issues (20)
- Unit testing of widgets without loading entire Rails stack in test environment? HOT 2
- Script to convert to and from HTML/ERb? HOT 3
- :csrf_meta_tags helper unavailable? HOT 1
- Even more forms weirdness, or... HOT 11
- Using #inline_html with a Rails view context HOT 2
- Implicit passing of `needs` variables fails when View class is named the same as the `needs` key HOT 4
- Can't mark HTML attribute values as html_safe HOT 1
- Upgraded to Rails 4.2.5.2 and everything is blowing up HOT 3
- use controller.view_paths to resolve view paths when calculating widget_class_from_file HOT 1
- Status? HOT 8
- alias_method_chain deprecated in Rails 5 HOT 2
- fix Travis build HOT 2
- Release latest code to rubygems HOT 1
- ArgumentError: wrong number of arguments (given 5, expected 4) with ActionView 4.2.6 HOT 2
- Issues when running tests: "uninitialized constant OopRailsServer::RailsServer::Bundler" HOT 1
- Regression: automatic inclusion of Rails helpers breaks implicit route arguments HOT 6
- Fortitude prevents Rails csrf_meta_tags from being rendered in the <head> element HOT 1
- retina_images repo unavailable
- Single arity template handlers are deprecated in Rails 6.0
- Still maintained? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fortitude.