lib/watir_install/generators/pages/spec/support/pages/page.rb.tt in watir_install-0.3.0 vs lib/watir_install/generators/pages/spec/support/pages/page.rb.tt in watir_install-0.3.1
- old
+ new
@@ -1,31 +1,33 @@
-module <%= name.split('_').map(&:capitalize).join -%>
-<% if klass.include?(':') -%>
-::<%= klass[/^[^:]*/] -%>
-<% end %>
- class <%= klass[/[^:]*$/] %> < <%= name.split('_').map(&:capitalize).join %>::Base
+module <%= name.split('_').map(&:capitalize).join %>
+ class <%= klass.gsub('::', '') %> < Page::Base
- <% if url.empty? -%>
-# Define url represented by page object if appropriate
-
+<% if url.empty? -%>
+ # Define url represented by page object if appropriate
# page_url { }
<% else -%>
-page_url { "<%= url %>" }
-<% end %>
+<% if url =~ %r{^(about|data|https?):}i -%>
+ page_url { "<%= url %>" }
+<% else -%>
+ page_url { "#{Site.base_url}<%= url %>" }
+<% end -%>
+<% end -%>
+
<% if elements.empty? -%>
# Define elements representing contents of page
<% end -%>
# Specify full Watir locator inside block
# element(:foo) { browser.div(id: 'foo') }
+
<% elements.each do |element| -%>
element(:<%= element %>) { }
<% end -%>
<% unless form.empty? -%>
element(:submit) { browser.button(visible: true) }
def submit_form(<%= form.downcase %> = nil)
- <%= form.downcase %> ||= <%= name.split('_').map(&:capitalize).join %>::Data::<%= form %>.new
+ <%= form.downcase %> ||= Data::<%= form %>.new
fill_form(<%= form.downcase %>)
submit.click
<%= form.downcase %>
end
<% end %>