This gist illustrates the full spec suite of the example used in Testing ActiveRecord Concerns
Copy the testing-concerns.rb file and run rspec testing-concerns.rb
The output should look something like
... bundling ...| require "bundler/inline" | |
| gemfile do | |
| gem "rails" | |
| gem "sqlite3" | |
| gem "debug" | |
| end | |
| require "debug" | |
| require "sqlite3" |
| # Made as an answer to the question is rails forums | |
| # https://discuss.rubyonrails.org/t/how-would-you-handle-gracefully-validating-a-generated-unique-code-until-its-guaranteed-to-be-valid/84919/9 | |
| require "bundler/inline" | |
| gemfile(true) do | |
| source "https://rubygems.org" | |
| gem "rails" | |
| gem "sqlite3" |
| class List | |
| include Enumerable | |
| attr_reader :items | |
| def initialize(items) | |
| @items = items | |
| end | |
| def a_thing_to_do |
This gist illustrates the full spec suite of the example used in Testing ActiveRecord Concerns
Copy the testing-concerns.rb file and run rspec testing-concerns.rb
The output should look something like
... bundling ...Resources:
| 2.hours.ago # => Fri, 02 Mar 2012 20:04:47 JST +09:00 | |
| 1.day.from_now # => Fri, 03 Mar 2012 22:04:47 JST +09:00 | |
| Date.today.to_time_in_current_zone # => Fri, 02 Mar 2012 22:04:47 JST +09:00 | |
| Date.current # => Fri, 02 Mar | |
| Time.zone.parse("2012-03-02 16:05:37") # => Fri, 02 Mar 2012 16:05:37 JST +09:00 | |
| Time.zone.now # => Fri, 02 Mar 2012 22:04:47 JST +09:00 | |
| Time.current # Same thing but shorter. (Thank you Lukas Sarnacki pointing this out.) | |
| Time.zone.today # If you really can't have a Time or DateTime for some reason | |
| Time.zone.now.utc.iso8601 # When supliyng an API (you can actually skip .zone here, but I find it better to always use it, than miss it when it's needed) | |
| Time.strptime(time_string, '%Y-%m-%dT%H:%M:%S%z').in_time_zone(Time.zone) # If you can't use Time#parse |
# /source/layouts/layout.erb
<body class="<%= page_classes %>">
<%= yield %>
<div id='permanent' data-turbolinks-permanent></div>
</body>function FBInit() {