This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original Source: https://github.com/chneukirchen/styleguide | |
= Christian Neukirchen's Ruby Style Guide | |
You may not like all rules presented here, but they work very well for | |
me and have helped producing high quality code. Everyone is free to | |
code however they want, write and follow their own style guides, but | |
when you contribute to my code, please follow these rules: | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# courtesy of juliocapote (http://news.ycombinator.com/item?id=485423) | |
def generate_code(len = 5) | |
(1..len).map { (("a".."z").to_a + ("A".."Z").to_a + (0..9).to_a)[rand(62)] }.join | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
describe "as_json method" do | |
subject { artwork.to_json } | |
# test the root object structure | |
it { should have_json_type(String).at_path("artist_id") } | |
it { should have_json_type(Array).at_path("available_sizes") } | |
# test a nested object | |
it { should have_json_type(Object).at_path("artist") } | |
it { should have_json_type(String).at_path("artist/id") } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Which is totally awesome. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
describe "as_json method" do | |
subject { artwork.to_json } | |
# test the root object structure | |
it { should have_json_type(String).at_path("artist_id") } | |
it { should have_json_type(Array).at_path("available_sizes") } | |
# test a nested object | |
it { should have_json_type(Object).at_path("artist") } | |
it { should have_json_type(String).at_path("artist/id") } | |
it { should have_json_type(String).at_path("artist/slug") } | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
context "#index (GET /artworks.json)" do | |
# create 30 Artwork documents using FactoryGirl, and do a HTTP GET request on "/artworks.json" | |
before(:each) do | |
30.times { FactoryGirl.create(:artwork) } | |
get "/artworks.json" | |
end | |
describe "should list all artworks" do | |
# the request returns a variable called "response", which we can then make sure comes back as expected | |
it { response.should be_ok } | |
it { JSON.parse(response.body)["results"].should be_a_kind_of(Array) } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
it "each artwork should have the correct structure" do | |
JSON.parse(response.body)["results"].each do |artwork| | |
artwork.keys.sort.should eq JSON.parse(FactoryGirl.create(:artwork).to_json).keys.sort | |
end | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$("a").each(function(k,v) { | |
$(v).click(function() { | |
// do something here to load the content in dynamically | |
history.pushState(null, null, $(this).prop("href")); | |
return false; | |
}); | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$(window).bind('popstate', function(event) { | |
var filename = location.pathname.substr(location.pathname.lastIndexOf("/")); | |
if (filename.indexOf("page1") > 0) { | |
// go back to the page1 context | |
} else { | |
// go to the page2 context | |
} | |
}); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
s3cmd sync --exclude '.DS_Store' --exclude '.git/*' --exclude-from '.gitgnore' --add-header=Expires:max-age=604800 --acl-public ./ s3://the_bucket_name |
OlderNewer