Zomg removing trailing whitespace.

This commit is contained in:
Steve Klabnik 2012-02-13 10:24:31 -05:00
parent 36a6e5d1f4
commit 56ce55addb
19 changed files with 99 additions and 99 deletions

View File

@ -1,6 +1,6 @@
body {
body {
margin: 0;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-size: 13px;
height: 101%;
overflow-x: hidden;

View File

@ -1,6 +1,6 @@
body {
body {
padding: 0 20px;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
font-size: 13px;
}
body.frames { padding: 0 5px; }
@ -8,7 +8,7 @@ h1 { font-size: 25px; margin: 1em 0 0.5em; padding-top: 4px; border-top: 1px dot
h1.noborder { border-top: 0px; margin-top: 0; padding-top: 4px; }
h1.title { margin-bottom: 10px; }
h1.alphaindex { margin-top: 0; font-size: 22px; }
h2 {
h2 {
padding: 0;
padding-bottom: 3px;
border-bottom: 1px #aaa solid;
@ -34,9 +34,9 @@ h2 small { font-weight: normal; font-size: 0.7em; display: block; float: right;
#filecontents dd, .docstring dd { padding: 5px 0px; margin-left: 18px; }
#filecontents dd > p, .docstring dd > p { margin: 0px; }
.note {
.note {
color: #222;
-moz-border-radius: 3px; -webkit-border-radius: 3px;
-moz-border-radius: 3px; -webkit-border-radius: 3px;
background: #e3e4e3; border: 1px solid #d5d5d5; padding: 7px 10px;
display: block;
}
@ -47,9 +47,9 @@ h2 small { font-weight: normal; font-size: 0.7em; display: block; float: right;
.note.title { text-transform: lowercase; padding: 1px 5px; font-size: 0.9em; font-family: "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif; display: inline; }
.summary_signature + .note.title { margin-left: 7px; }
h1 .note.title { font-size: 0.5em; font-weight: normal; padding: 3px 5px; position: relative; top: -3px; text-transform: capitalize; }
.note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
.note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
.note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
.note.title.constructor { color: #fff; background: #6a98d6; border-color: #6689d6; }
.note.title.writeonly { color: #fff; background: #45a638; border-color: #2da31d; }
.note.title.readonly { color: #fff; background: #6a98d6; border-color: #6689d6; }
.note.title.private { background: #d5d5d5; border-color: #c5c5c5; }
.discussion .note { margin-top: 6px; }
.discussion .note:first-child { margin-top: 0; }
@ -123,9 +123,9 @@ dl.constants .discussion *:last-child { margin-bottom: 0; }
.method_details { border-top: 1px dotted #aaa; margin-top: 15px; padding-top: 0; }
.method_details.first { border: 0; }
p.signature {
font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
padding: 6px 10px; margin-top: 18px;
p.signature {
font-size: 1.1em; font-weight: normal; font-family: Monaco, Consolas, Courier, monospace;
padding: 6px 10px; margin-top: 18px;
background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
}
p.signature tt { font-family: Monaco, Consolas, Courier, monospace; }
@ -145,7 +145,7 @@ p.signature .aliases .names { font-family: Monaco, Consolas, Courier, monospace;
.tags .examples h4 { padding: 0; margin: 0; margin-left: 15px; font-weight: bold; font-size: 0.9em; }
.tags .overload .overload_item { list-style: none; margin-bottom: 25px; }
.tags .overload .overload_item .signature {
.tags .overload .overload_item .signature {
padding: 2px 8px;
background: #e5e8ff; border: 1px solid #d8d8e5; -moz-border-radius: 3px; -webkit-border-radius: 3px;
}
@ -169,19 +169,19 @@ ul.summary {
font-size: 1em;
line-height: 1.5em;
}
ul.summary a:link, ul.summary a:visited {
ul.summary a:link, ul.summary a:visited {
text-decoration: none; font-size: 1.1em;
}
ul.summary li { margin-bottom: 5px; }
.summary .summary_signature {
.summary .summary_signature {
padding: 1px 10px;
background: #eaeaff; border: 1px solid #dfdfe5;
-moz-border-radius: 3px; -webkit-border-radius: 3px;
-moz-border-radius: 3px; -webkit-border-radius: 3px;
}
.summary_signature:hover { background: #eeeeff; cursor: pointer; }
ul.summary.compact li { display: inline-block; margin: 0px 5px 0px 0px; line-height: 2.6em;}
ul.summary.compact .summary_signature { padding: 5px 7px; padding-right: 4px; }
#content .summary_signature:hover a:link,
#content .summary_signature:hover a:link,
#content .summary_signature:hover a:visited {
background: transparent;
color: #48f;
@ -204,18 +204,18 @@ ul.fullTree li:last-child { padding-bottom: 0; }
.showAll .inheritName { display: none; }
#search { position: absolute; right: 14px; top: 0px; }
#search a:link, #search a:visited {
#search a:link, #search a:visited {
display: block; float: left; margin-right: 4px;
padding: 8px 10px; text-decoration: none; color: #05a;
border: 1px solid #d8d8e5;
-moz-border-radius-bottomleft: 3px; -moz-border-radius-bottomright: 3px;
-moz-border-radius-bottomleft: 3px; -moz-border-radius-bottomright: 3px;
-webkit-border-bottom-left-radius: 3px; -webkit-border-bottom-right-radius: 3px;
background: #eaf0ff;
-webkit-box-shadow: -1px 1px 3px #ddd;
}
#search a:hover { background: #f5faff; color: #06b; }
#search a.active {
background: #568; padding-bottom: 20px; color: #fff; border: 1px solid #457;
#search a.active {
background: #568; padding-bottom: 20px; color: #fff; border: 1px solid #457;
-moz-border-radius-topleft: 5px; -moz-border-radius-topright: 5px;
-webkit-border-top-left-radius: 5px; -webkit-border-top-right-radius: 5px;
}
@ -249,8 +249,8 @@ li.r2 { background: #fafafa; }
z-index: 9999;
background: #fff;
display: none;
position: absolute;
top: 36px;
position: absolute;
top: 36px;
right: 18px;
width: 500px;
height: 80%;
@ -266,7 +266,7 @@ li.r2 { background: #fafafa; }
#content ul.summary li.deprecated .summary_signature a:link,
#content ul.summary li.deprecated .summary_signature a:visited { text-decoration: line-through; font-style: italic; }
#toc {
#toc {
padding: 20px; padding-right: 30px; border: 1px solid #ddd; float: right; background: #fff; margin-left: 20px; margin-bottom: 20px;
max-width: 300px;
-webkit-box-shadow: -2px 2px 6px #bbb;
@ -291,7 +291,7 @@ li.r2 { background: #fafafa; }
#filecontents pre.code, .docstring pre.code, .source_code pre { font-family: monospace; }
#filecontents pre.code, .docstring pre.code { display: block; }
.source_code .lines { padding-right: 12px; color: #555; text-align: right; }
#filecontents pre.code, .docstring pre.code,
#filecontents pre.code, .docstring pre.code,
.tags .example { padding: 5px 12px; margin-top: 4px; border: 1px solid #eef; background: #f5f5ff; }
pre.code { color: #000; }
pre.code .info.file { color: #555; }
@ -300,21 +300,21 @@ pre.code .tstring_content,
pre.code .heredoc_beg, pre.code .heredoc_end,
pre.code .qwords_beg, pre.code .qwords_end,
pre.code .tstring, pre.code .dstring { color: #036A07; }
pre.code .fid, pre.code .id.new, pre.code .id.to_s,
pre.code .id.to_sym, pre.code .id.to_f,
pre.code .fid, pre.code .id.new, pre.code .id.to_s,
pre.code .id.to_sym, pre.code .id.to_f,
pre.code .dot + pre.code .id,
pre.code .id.to_i pre.code .id.each { color: #0085FF; }
pre.code .comment { color: #0066FF; }
pre.code .const, pre.code .constant { color: #585CF6; }
pre.code .symbol { color: #C5060B; }
pre.code .kw,
pre.code .kw,
pre.code .label,
pre.code .id.require,
pre.code .id.require,
pre.code .id.extend,
pre.code .id.include { color: #0000FF; }
pre.code .ivar { color: #318495; }
pre.code .gvar,
pre.code .id.backref,
pre.code .gvar,
pre.code .id.backref,
pre.code .id.nth_ref { color: #6D79DE; }
pre.code .regexp, .dregexp { color: #036A07; }
pre.code a { border-bottom: 1px dotted #bbf; }

View File

@ -44,7 +44,7 @@ function createFullTreeLinks() {
function fixBoxInfoHeights() {
$('dl.box dd.r1, dl.box dd.r2').each(function() {
$(this).prev().height($(this).height());
$(this).prev().height($(this).height());
});
}
@ -113,7 +113,7 @@ function summaryToggle() {
if (next.hasClass('compact')) {
next.toggle();
next.next().toggle();
}
}
else if (next.hasClass('summary')) {
var list = $('<ul class="summary compact" />');
list.html(next.html());
@ -159,13 +159,13 @@ function generateTOC() {
if ($('#' + proposedId).length > 0) { proposedId += counter; counter++; }
this.id = proposedId;
}
if (thisTag > lastTag) {
for (i = 0; i < thisTag - lastTag; i++) {
var tmp = $('<ol/>'); toc.append(tmp); toc = tmp;
}
if (thisTag > lastTag) {
for (i = 0; i < thisTag - lastTag; i++) {
var tmp = $('<ol/>'); toc.append(tmp); toc = tmp;
}
}
if (thisTag < lastTag) {
for (i = 0; i < lastTag - thisTag; i++) toc = toc.parent();
if (thisTag < lastTag) {
for (i = 0; i < lastTag - thisTag; i++) toc = toc.parent();
}
toc.append('<li><a href="#' + this.id + '">' + $(this).text() + '</a></li>');
lastTag = thisTag;
@ -174,7 +174,7 @@ function generateTOC() {
html = '<div id="toc"><p class="title"><a class="hide_toc" href="#"><strong>Table of Contents</strong></a> <small>(<a href="#" class="float_toc">left</a>)</small></p></div>';
$('#content').prepend(html);
$('#toc').append(_toc);
$('#toc .hide_toc').toggle(function() {
$('#toc .hide_toc').toggle(function() {
$('#toc .top').slideUp('fast');
$('#toc').toggleClass('hidden');
$('#toc .title small').toggle();
@ -183,7 +183,7 @@ function generateTOC() {
$('#toc').toggleClass('hidden');
$('#toc .title small').toggle();
});
$('#toc .float_toc').toggle(function() {
$('#toc .float_toc').toggle(function() {
$(this).text('float');
$('#toc').toggleClass('nofloat');
}, function() {

View File

@ -10,7 +10,7 @@ function fullListSearch() {
var link = $(this).find('.object_link a');
searchCache.push({name:link.text(), node:$(this), link:link});
});
$('#search input').keyup(function() {
searchString = this.value.toLowerCase();
if (searchString === "") {
@ -18,9 +18,9 @@ function fullListSearch() {
inSearch = null;
$('#full_list, #content').removeClass('insearch');
$('#full_list li').removeClass('found').each(function() {
var link = $(this).find('.object_link a');
link.text(link.text());
link.text(link.text());
});
if (clicked) {
clicked.parents('ul').each(function() {
@ -38,7 +38,7 @@ function fullListSearch() {
searchItem();
}
});
$('#search input').focus();
$('#full_list').after("<div id='noresults'></div>");
}
@ -54,8 +54,8 @@ function searchItem() {
item.node.css('padding-left', '10px').addClass('found');
item.node.removeClass(lastRowClass).addClass(lastRowClass == 'r1' ? 'r2' : 'r1');
lastRowClass = item.node.hasClass('r1') ? 'r1' : 'r2';
item.link.html(item.name.replace(new RegExp("(" +
searchString.replace(/([\/.*+?|()\[\]{}\\])/g, "\\$1") + ")", "ig"),
item.link.html(item.name.replace(new RegExp("(" +
searchString.replace(/([\/.*+?|()\[\]{}\\])/g, "\\$1") + ")", "ig"),
'<strong>$1</strong>'));
}
@ -110,10 +110,10 @@ function linkList() {
function collapse() {
if (!$('#full_list').hasClass('class')) return;
$('#full_list.class a.toggle').click(function() {
$('#full_list.class a.toggle').click(function() {
$(this).parent().toggleClass('collapsed').next().toggleClass('collapsed');
highlight();
return false;
return false;
});
$('#full_list.class ul').each(function() {
$(this).addClass('collapsed').prev().addClass('collapsed');

View File

@ -21,7 +21,7 @@ module Draper
def respond_to?(method)
super || @wrapped_collection.respond_to?(method)
end
def kind_of?(klass)
super || @wrapped_collection.kind_of?(klass)
end

View File

@ -7,7 +7,7 @@ module Draper
generates: "app/decorators/article_decorator"
"spec/decorators/article_decorator_spec"
DESC
source_root File.expand_path('../templates', __FILE__)
DECORATORS_ROOT = 'app/decorators/'

View File

@ -1,20 +1,20 @@
module Draper
class InstallGenerator < Rails::Generators::Base
desc <<-DESC
Description:
Generate application and spec decorators in your application.
DESC
class_option "test-framework", :type => :string, :default => "rspec", :aliases => "-t", :desc => "Test framework to be invoked"
source_root File.expand_path('../templates', __FILE__)
def build_application_decorator
empty_directory 'app/decorators'
template 'application_decorator.rb', File.join('app/decorators', 'application_decorator.rb')
end
def build_decorator_tests
case options["test-framework"]
when "rspec"
@ -23,13 +23,13 @@ module Draper
build_application_decorator_test
end
end
private
def build_application_decorator_spec
empty_directory 'spec/decorators'
template 'application_decorator_spec.rb', File.join('spec/decorators', 'application_decorator_spec.rb')
end
def build_application_decorator_test
empty_directory 'test/decorators/'
template 'application_decorator_test.rb', File.join('test/decorators', 'application_decorator_test.rb')

View File

@ -1,14 +1,14 @@
require File.expand_path('../../draper/decorator/decorator_generator.rb', __FILE__)
class Rails::DecoratorGenerator < Draper::DecoratorGenerator
source_root File.expand_path('../../draper/decorator/templates', __FILE__)
class_option :invoke_after_finished, :type => :string, :description => "Generator to invoke when finished"
def build_model_and_application_decorators
super
if self.options[:invoke_after_finished]
Rails::Generators.invoke(self.options[:invoke_after_finished], [@name, @_initializer.first[1..-1]])
Rails::Generators.invoke(self.options[:invoke_after_finished], [@name, @_initializer.first[1..-1]])
end
end

View File

@ -17,20 +17,20 @@ Benchmark.bm do |bm|
ProductDecorator.decorate(Product.new)
end
end
bm.report("#hello_world ") do
i.times do |n|
ProductDecorator.decorate(Product.new).hello_world
end
end
bm.report("#sample_class_method ") do
i.times do |n|
ProductDecorator.decorate(Product.new).class.sample_class_method
end
end
end
puts "\n[ Defining methods on method_missing first hit ]"
[ 1_000, 10_000, 100_000 ].each do |i|
puts "\n[ #{i} ]"
@ -39,13 +39,13 @@ Benchmark.bm do |bm|
FastProductDecorator.decorate(FastProduct.new)
end
end
bm.report("#hello_world ") do
i.times do |n|
FastProductDecorator.decorate(FastProduct.new).hello_world
end
end
bm.report("#sample_class_method ") do
i.times do |n|
FastProductDecorator.decorate(FastProduct.new).class.sample_class_method

View File

@ -1,11 +1,11 @@
require "./performance/models"
class ProductDecorator < Draper::Base
decorates :product
def awesome_title
"Awesome Title"
end
# Original #method_missing
def method_missing(method, *args, &block)
if allow?(method)
@ -23,11 +23,11 @@ end
class FastProductDecorator < Draper::Base
decorates :product
def awesome_title
"Awesome Title"
end
# Modified #method_missing
def method_missing(method, *args, &block)
if allow?(method)

View File

@ -3,7 +3,7 @@ class Product < ActiveRecord::Base
def self.sample_class_method
"sample class method"
end
def hello_world
"Hello, World"
end
@ -13,7 +13,7 @@ class FastProduct < ActiveRecord::Base
def self.sample_class_method
"sample class method"
end
def hello_world
"Hello, World"
end

View File

@ -53,7 +53,7 @@ describe Draper::Base do
BusinessDecorator.model_class.should == Business
end.should_not raise_error
end
context("accepts ActiveRecord like :class_name option too") do
it "accepts constants for :class" do
expect do
@ -63,7 +63,7 @@ describe Draper::Base do
CustomDecorator.model_class.should == Product
end.should_not raise_error
end
it "accepts constants for :class_name" do
expect do
class CustomDecorator < Draper::Base
@ -72,7 +72,7 @@ describe Draper::Base do
CustomDecorator.model_class.should == Product
end.should_not raise_error
end
it "accepts strings for :class" do
expect do
class CustomDecorator < Draper::Base
@ -81,7 +81,7 @@ describe Draper::Base do
CustomDecorator.model_class.should == Product
end.should_not raise_error
end
it "accepts strings for :class_name" do
expect do
class CustomDecorator < Draper::Base

View File

@ -8,7 +8,7 @@ describe Draper::HelperSupport do
output = ApplicationController.decorate(@product){|p| p.model.object_id }
output.should == @product.object_id
end
it 'uses #capture so Rails only renders the content once' do
ApplicationController.decorate(@product){|p| p.model.object_id }
ApplicationController.capture_triggered.should be

View File

@ -4,19 +4,19 @@ describe Draper::ViewContext do
let (:app_controller) do
ApplicationController
end
let (:app_controller_instance) do
app_controller.new
end
it "implements #set_current_view_context" do
app_controller_instance.should respond_to(:set_current_view_context)
end
it "calls #before_filter with #set_current_view_context" do
app_controller.before_filters.should include(:set_current_view_context)
end
it "raises an exception if the view_context is fetched without being set" do
Draper::ViewContext.current = nil
expect {app_controller.current_view_context}.should raise_exception(Exception)

View File

@ -19,24 +19,24 @@ describe Draper::InstallGenerator do
it { should contain "class ApplicationDecorator < Draper::Base" }
end
end
describe 'spec/decorators/application_decorator_spec.rb' do
subject { file('spec/decorators/application_decorator_spec.rb') }
it { should exist }
it { should contain "describe ApplicationDecorator do" }
end
end
context "using test_unit" do
before { run_generator ["", "-t=test_unit"] }
it_should_behave_like "ApplicationDecoratorGenerator"
describe 'spec/decorators/application_decorator_spec.rb' do
subject { file('spec/decorators/application_decorator_spec.rb') }
it { should_not exist }
end
describe 'spec/decorators/application_decorator_test.rb' do
subject { file('test/decorators/application_decorator_test.rb') }
it { should exist }

View File

@ -19,25 +19,25 @@ class ApplicationController < ActionController::Base
extend ActionView::Helpers
extend ActionView::Helpers::TagHelper
extend ActionView::Helpers::UrlHelper
extend ApplicationHelper
extend ApplicationHelper
def view_context
@view_context ||= ApplicationController
end
def view_context=(input)
@view_context = input
end
def self.hello
"Hello!"
end
def self.capture(&block)
@@capture = true
block.call
end
def self.capture_triggered
@@capture ||= false
end

View File

@ -1,3 +1,3 @@
class DecoratorWithAllows < Draper::Base
class DecoratorWithAllows < Draper::Base
allows :goodnight_moon
end

View File

@ -1,20 +1,20 @@
class DecoratorWithApplicationHelper < Draper::Base
class DecoratorWithApplicationHelper < Draper::Base
def uses_hello_world
h.hello_world
end
def sample_content
h.content_tag :span, "Hello, World!"
end
def sample_link
h.link_to "Hello", "/World"
end
def sample_truncate
h.truncate("Once upon a time", :length => 7)
end
def length
"overridden"
end

View File

@ -1,3 +1,3 @@
class DecoratorWithDenies < Draper::Base
class DecoratorWithDenies < Draper::Base
denies :goodnight_moon, :title
end