openstax_api 1.0.4 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0f1429c6653d5491a5d6b1e9ed52f9a3f60545f3
4
- data.tar.gz: 3132f7b1b24f55834b4d1675a1daef215b82ace3
3
+ metadata.gz: 1e4d441e414199654826cf159d71c8194e4cdbf5
4
+ data.tar.gz: 13bf6cbc52729a2d53462644bbb2d1b668cf0b4c
5
5
  SHA512:
6
- metadata.gz: 02f3f16a5b88f6071b20472fc8f4a73d77e1ca7314d3a7c1d80512f674135f33c679468239316cde65c56d856e4798667e06ddfb5f2b6e61aa844822997b1b33
7
- data.tar.gz: c2d09d5c8a36c38d11074424d9df2153baaab847fa7930fc802ec7e3883dbbb34beaa384260fb02ee246a872a68661a970e10e0fe924ece44f8d47d78261eb55
6
+ metadata.gz: 853990e94e6a5f41fc1a6573410ae7cd8ed56f95a83bd9d3db941de67cf757657a4efdf1f7c9b2f34773d66ac7ac2a7197d7762c65919dd0917c0c008d85cae3
7
+ data.tar.gz: 288b1fe5127cf6ddd505e26c3082c03eee25fb7a216453bdddffc1e7f1008493a041ae2d602a79b95f67cae751c964dcb5d0d65f9dcac48573a226513ea4e4ad
@@ -7,79 +7,54 @@ module OpenStax
7
7
  module Api
8
8
  module V1
9
9
 
10
- class ApiController < ::ApplicationController
11
-
10
+ class ApiController < ActionController::Base
11
+
12
12
  include ::Roar::Rails::ControllerAdditions
13
13
  include OpenStax::Api::Roar
14
14
  include OpenStax::Api::Apipie
15
15
 
16
- fine_print_skip_signatures(:general_terms_of_use,
17
- :privacy_policy) \
18
- if respond_to? :fine_print_skip_signatures
19
-
20
16
  skip_protect_beta if respond_to? :skip_protect_beta
21
17
 
22
18
  skip_before_filter :authenticate_user!
23
- doorkeeper_for :all, :unless => :user_without_token?
24
- skip_before_filter :verify_authenticity_token,
25
- :unless => :user_without_token?
19
+ doorkeeper_for :all, :unless => :session_user?
20
+ skip_before_filter :verify_authenticity_token, :unless => :session_user?
21
+
22
+ # This filter can wait until the user signs in again
23
+ skip_interception :expired_password if respond_to? :skip_interception
26
24
 
27
25
  respond_to :json
28
- rescue_from Exception, :with => :rescue_from_exception
29
26
 
30
27
  # Keep old current_user method so we can use it
31
- alias_method :current_human_user,
28
+ alias_method :current_session_user,
32
29
  OpenStax::Api.configuration.current_user_method
33
30
 
34
- # TODO: doorkeeper users (or rather users who have doorkeeper
35
- # applications) need to agree to API terms of use (need to have agreed
36
- # to it at one time, can't require them to agree when terms change since
37
- # their apps are doing the talking) -- this needs more thought
38
-
39
- # TODO: maybe freak out if current_user is anonymous (require we know
40
- # who person/app is so we can do things like throttling, API terms
41
- # agreement, etc)
31
+ # Ensure we will never again confuse human users and api users
32
+ undef_method OpenStax::Api.configuration.current_user_method
42
33
 
43
34
  # Always return an ApiUser
44
- def current_user
35
+ def current_api_user
45
36
  @current_api_user ||= ApiUser.new(doorkeeper_token,
46
- lambda { current_human_user })
37
+ lambda { current_session_user })
47
38
  end
48
39
 
49
- protected
40
+ def current_application
41
+ current_api_user.application
42
+ end
50
43
 
51
- def user_without_token?
52
- current_human_user && doorkeeper_token.blank?
44
+ def current_human_user
45
+ current_api_user.human_user
53
46
  end
54
47
 
55
- def rescue_from_exception(exception)
56
- # See https://github.com/rack/rack/blob/master/lib/rack/utils.rb#L453 for error names/symbols
57
- error = :internal_server_error
58
- notify = true
59
-
60
- case exception
61
- when SecurityTransgression
62
- error = :forbidden
63
- notify = false
64
- when ActiveRecord::RecordNotFound,
65
- ActionController::RoutingError,
66
- ActionController::UnknownController,
67
- AbstractController::ActionNotFound
68
- error = :not_found
69
- notify = false
70
- end
71
-
72
- if notify
73
- ExceptionNotifier.notify_exception(
74
- exception,
75
- env: request.env,
76
- data: { message: "An exception occurred" }
77
- )
78
-
79
- Rails.logger.error("An exception occurred: #{exception.message}\n\n#{exception.backtrace.join("\n")}") \
80
- end
81
-
82
- head error
48
+ # JSON can't really redirect
49
+ # Redirect from a filter effectively means "deny access"
50
+ def redirect_to(options = {}, response_status = {})
51
+ head :forbidden
52
+ end
53
+
54
+ protected
55
+
56
+ def session_user?
57
+ current_session_user && doorkeeper_token.blank?
83
58
  end
84
59
 
85
60
  end
@@ -4,7 +4,7 @@
4
4
  # someone who logs into this site and then uses this site's Backbone
5
5
  # interface).
6
6
  # 2. It can be a combination of a Doorkeeper Application and a User,
7
- # given via OAuth's Authorization or Implicit flows.
7
+ # given via OAuth's Authorization Code or Implicit flows.
8
8
  # 3. It can just be a Doorkeeper Application, given through OAuth's
9
9
  # Client Credentials flow.
10
10
  #
@@ -36,10 +36,9 @@ module OpenStax
36
36
  # If we have a doorkeeper_token, derive the User from it.
37
37
  # If not, we're in case #1 above and the User should be
38
38
  # retrieved from the non_doorkeeper_user_proc.
39
- @user ||= @doorkeeper_token ? \
40
- USER_CLASS.where(
41
- :id => @doorkeeper_token.try(:resource_owner_id)
42
- ).first : @non_doorkeeper_user_proc.call
39
+ @user ||= @doorkeeper_token ? USER_CLASS.where(
40
+ :id => @doorkeeper_token.try(:resource_owner_id)).first : \
41
+ @non_doorkeeper_user_proc.call
43
42
  end
44
43
 
45
44
  ##########################
@@ -1,6 +1,6 @@
1
1
  module OpenStax
2
2
  module Api
3
- module DoorkeeperExtensions
3
+ module DoorkeeperApplicationIncludes
4
4
  # Add some fields to Doorkeeper::Application
5
5
  def is_human?
6
6
  false
@@ -19,5 +19,6 @@ end
19
19
 
20
20
  # This needs to run after the orm is selected in the doorkeeper initializer
21
21
  OpenStax::Api::Engine.config.after_initialize do
22
- Doorkeeper::Application.send :include, OpenStax::Api::DoorkeeperExtensions
22
+ Doorkeeper::Application.send :include,
23
+ OpenStax::Api::DoorkeeperApplicationIncludes
23
24
  end
@@ -17,13 +17,13 @@ module OpenStax
17
17
 
18
18
  def standard_read(model_klass, id, represent_with=nil)
19
19
  @model = model_klass.find(id)
20
- raise SecurityTransgression unless current_user.can_read?(@model)
20
+ raise SecurityTransgression unless current_api_user.can_read?(@model)
21
21
  respond_with @model, represent_with: get_representer(represent_with, @model)
22
22
  end
23
23
 
24
24
  def standard_update(model_klass, id, represent_with=nil)
25
25
  @model = model_klass.find(id)
26
- raise SecurityTransgression unless current_user.can_update?(@model)
26
+ raise SecurityTransgression unless current_api_user.can_update?(@model)
27
27
  consume!(@model, represent_with: get_representer(represent_with, @model))
28
28
 
29
29
  if @model.save
@@ -54,7 +54,7 @@ module OpenStax
54
54
  model_klass.transaction do
55
55
  consume!(@model, represent_with: get_representer(represent_with, @model))
56
56
  yield @model if block_given?
57
- raise SecurityTransgression unless current_user.can_create?(@model)
57
+ raise SecurityTransgression unless current_api_user.can_create?(@model)
58
58
  end
59
59
 
60
60
  if @model.save
@@ -66,7 +66,7 @@ module OpenStax
66
66
 
67
67
  def standard_destroy(model_klass, id)
68
68
  @model = model_klass.find(id)
69
- raise SecurityTransgression unless current_user.can_destroy?(@model)
69
+ raise SecurityTransgression unless current_api_user.can_destroy?(@model)
70
70
 
71
71
  if @model.destroy
72
72
  head :no_content
@@ -98,7 +98,7 @@ module OpenStax
98
98
  originalOrdered.each do |item|
99
99
  raise SecurityTransgression unless item.send(:container_column) == originalOrdered[0].send(:container_column) \
100
100
  if item.respond_to?(:container_column)
101
- raise SecurityTransgression unless current_user.can_sort?(item)
101
+ raise SecurityTransgression unless current_api_user.can_sort?(item)
102
102
  end
103
103
 
104
104
  originalOrderedIds = originalOrdered.collect{|sc| sc.id}
@@ -2,7 +2,7 @@ require 'openstax/api/constraints'
2
2
 
3
3
  module OpenStax
4
4
  module Api
5
- module RouteExtensions
5
+ module RoutingMapperIncludes
6
6
  def api(version, options = {})
7
7
  constraints = Constraints.new(version: version,
8
8
  default: options.delete(:default))
@@ -15,4 +15,5 @@ module OpenStax
15
15
  end
16
16
  end
17
17
 
18
- ActionDispatch::Routing::Mapper.send :include, OpenStax::Api::RouteExtensions
18
+ ActionDispatch::Routing::Mapper.send :include,
19
+ OpenStax::Api::RoutingMapperIncludes
@@ -1,5 +1,5 @@
1
1
  module OpenStax
2
2
  module Api
3
- VERSION = "1.0.4"
3
+ VERSION = "2.0.0"
4
4
  end
5
5
  end
data/lib/openstax_api.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  require 'openstax/api/engine'
2
- require 'openstax/api/doorkeeper_extensions'
3
- require 'openstax/api/route_extensions'
2
+ require 'openstax/api/doorkeeper_application_includes'
3
+ require 'openstax/api/routing_mapper_includes'
4
4
 
5
5
  module OpenStax
6
6
  module Api
@@ -1,5 +1,7 @@
1
1
  # Load the rails application
2
2
  require File.expand_path('../application', __FILE__)
3
3
 
4
+ require 'controller_includes'
5
+
4
6
  # Initialize the rails application
5
7
  Dummy::Application.initialize!
Binary file
@@ -0,0 +1,7 @@
1
+ module ControllerIncludes
2
+ def present_user
3
+ @user ||= DummyUser.create
4
+ end
5
+ end
6
+
7
+ ActionController::Base.send :include, ControllerIncludes
@@ -501,3 +501,292 @@ Connecting to database specified by database.yml
501
501
   (0.9ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
502
502
   (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
503
503
   (0.1ms) SELECT version FROM "schema_migrations"
504
+ Connecting to database specified by database.yml
505
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
506
+  (0.2ms) select sqlite_version(*)
507
+  (0.8ms) DROP TABLE "dummy_users"
508
+  (0.7ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
509
+  (0.6ms) DROP TABLE "oauth_access_grants"
510
+  (0.7ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
511
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
512
+  (0.7ms) DROP TABLE "oauth_access_tokens"
513
+  (0.8ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
514
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
515
+  (0.7ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
516
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
517
+  (0.7ms) DROP TABLE "oauth_applications"
518
+  (0.7ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
519
+  (1.1ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
520
+  (0.1ms) SELECT version FROM "schema_migrations"
521
+ Connecting to database specified by database.yml
522
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
523
+  (0.2ms) select sqlite_version(*)
524
+  (1.5ms) DROP TABLE "dummy_users"
525
+  (0.9ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
526
+  (0.9ms) DROP TABLE "oauth_access_grants"
527
+  (1.0ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
528
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
529
+  (0.8ms) DROP TABLE "oauth_access_tokens"
530
+  (0.8ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
531
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
532
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
533
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
534
+  (0.9ms) DROP TABLE "oauth_applications"
535
+  (0.9ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
536
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
537
+  (0.1ms) SELECT version FROM "schema_migrations"
538
+ Connecting to database specified by database.yml
539
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
540
+  (0.2ms) select sqlite_version(*)
541
+  (1.8ms) DROP TABLE "dummy_users"
542
+  (1.1ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
543
+  (1.1ms) DROP TABLE "oauth_access_grants"
544
+  (1.0ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
545
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
546
+  (0.8ms) DROP TABLE "oauth_access_tokens"
547
+  (0.9ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
548
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
549
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
550
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
551
+  (0.8ms) DROP TABLE "oauth_applications"
552
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
553
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
554
+  (0.0ms) SELECT version FROM "schema_migrations"
555
+ Connecting to database specified by database.yml
556
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
557
+  (0.2ms) select sqlite_version(*)
558
+  (1.7ms) DROP TABLE "dummy_users"
559
+  (0.9ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
560
+  (0.7ms) DROP TABLE "oauth_access_grants"
561
+  (0.8ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
562
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
563
+  (0.8ms) DROP TABLE "oauth_access_tokens"
564
+  (1.0ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
565
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
566
+  (0.7ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
567
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
568
+  (0.8ms) DROP TABLE "oauth_applications"
569
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
570
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
571
+  (0.1ms) SELECT version FROM "schema_migrations"
572
+ Connecting to database specified by database.yml
573
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
574
+  (0.2ms) select sqlite_version(*)
575
+  (1.8ms) DROP TABLE "dummy_users"
576
+  (1.1ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
577
+  (0.9ms) DROP TABLE "oauth_access_grants"
578
+  (0.9ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
579
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
580
+  (0.8ms) DROP TABLE "oauth_access_tokens"
581
+  (0.9ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
582
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
583
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
584
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
585
+  (0.8ms) DROP TABLE "oauth_applications"
586
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
587
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
588
+  (0.1ms) SELECT version FROM "schema_migrations"
589
+ Connecting to database specified by database.yml
590
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
591
+  (0.2ms) select sqlite_version(*)
592
+  (1.8ms) DROP TABLE "dummy_users"
593
+  (1.1ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
594
+  (0.9ms) DROP TABLE "oauth_access_grants"
595
+  (0.9ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
596
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
597
+  (0.9ms) DROP TABLE "oauth_access_tokens"
598
+  (0.9ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
599
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
600
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
601
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
602
+  (0.8ms) DROP TABLE "oauth_applications"
603
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
604
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
605
+  (0.1ms) SELECT version FROM "schema_migrations"
606
+ Connecting to database specified by database.yml
607
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
608
+  (0.2ms) select sqlite_version(*)
609
+  (1.8ms) DROP TABLE "dummy_users"
610
+  (1.1ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
611
+  (1.0ms) DROP TABLE "oauth_access_grants"
612
+  (0.9ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
613
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
614
+  (0.8ms) DROP TABLE "oauth_access_tokens"
615
+  (1.0ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
616
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
617
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
618
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
619
+  (0.8ms) DROP TABLE "oauth_applications"
620
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
621
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
622
+  (0.1ms) SELECT version FROM "schema_migrations"
623
+ Connecting to database specified by database.yml
624
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
625
+  (0.2ms) select sqlite_version(*)
626
+  (1.8ms) DROP TABLE "dummy_users"
627
+  (1.1ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
628
+  (0.9ms) DROP TABLE "oauth_access_grants"
629
+  (0.9ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
630
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
631
+  (0.8ms) DROP TABLE "oauth_access_tokens"
632
+  (1.0ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
633
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
634
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
635
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
636
+  (0.8ms) DROP TABLE "oauth_applications"
637
+  (0.9ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
638
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
639
+  (0.1ms) SELECT version FROM "schema_migrations"
640
+ Connecting to database specified by database.yml
641
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
642
+  (0.2ms) select sqlite_version(*)
643
+  (1.9ms) DROP TABLE "dummy_users"
644
+  (1.1ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
645
+  (0.9ms) DROP TABLE "oauth_access_grants"
646
+  (0.9ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
647
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
648
+  (0.8ms) DROP TABLE "oauth_access_tokens"
649
+  (0.9ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
650
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
651
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
652
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
653
+  (0.8ms) DROP TABLE "oauth_applications"
654
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
655
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
656
+  (0.0ms) SELECT version FROM "schema_migrations"
657
+ Connecting to database specified by database.yml
658
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
659
+  (0.2ms) select sqlite_version(*)
660
+  (1.8ms) DROP TABLE "dummy_users"
661
+  (1.0ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
662
+  (0.9ms) DROP TABLE "oauth_access_grants"
663
+  (0.9ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
664
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
665
+  (0.8ms) DROP TABLE "oauth_access_tokens"
666
+  (0.9ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
667
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
668
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
669
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
670
+  (0.8ms) DROP TABLE "oauth_applications"
671
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
672
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
673
+  (0.1ms) SELECT version FROM "schema_migrations"
674
+ Connecting to database specified by database.yml
675
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
676
+  (0.3ms) select sqlite_version(*)
677
+  (0.9ms) DROP TABLE "dummy_users"
678
+  (0.7ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
679
+  (0.8ms) DROP TABLE "oauth_access_grants"
680
+  (0.7ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
681
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
682
+  (0.8ms) DROP TABLE "oauth_access_tokens"
683
+  (0.8ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
684
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
685
+  (0.7ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
686
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
687
+  (0.7ms) DROP TABLE "oauth_applications"
688
+  (0.7ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
689
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
690
+  (0.1ms) SELECT version FROM "schema_migrations"
691
+ Connecting to database specified by database.yml
692
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
693
+  (0.2ms) select sqlite_version(*)
694
+  (1.5ms) DROP TABLE "dummy_users"
695
+  (1.0ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
696
+  (0.8ms) DROP TABLE "oauth_access_grants"
697
+  (0.8ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
698
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
699
+  (0.9ms) DROP TABLE "oauth_access_tokens"
700
+  (0.9ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
701
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
702
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
703
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
704
+  (0.8ms) DROP TABLE "oauth_applications"
705
+  (0.7ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
706
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
707
+  (0.1ms) SELECT version FROM "schema_migrations"
708
+ Connecting to database specified by database.yml
709
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
710
+  (0.2ms) select sqlite_version(*)
711
+  (0.9ms) DROP TABLE "dummy_users"
712
+  (0.8ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
713
+  (0.7ms) DROP TABLE "oauth_access_grants"
714
+  (0.8ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
715
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
716
+  (1.0ms) DROP TABLE "oauth_access_tokens"
717
+  (1.1ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
718
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
719
+  (1.1ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
720
+  (0.9ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
721
+  (0.8ms) DROP TABLE "oauth_applications"
722
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
723
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
724
+  (0.0ms) SELECT version FROM "schema_migrations"
725
+ Connecting to database specified by database.yml
726
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
727
+  (0.2ms) select sqlite_version(*)
728
+  (1.7ms) DROP TABLE "dummy_users"
729
+  (1.0ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
730
+  (0.8ms) DROP TABLE "oauth_access_grants"
731
+  (0.8ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
732
+  (1.0ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
733
+  (0.8ms) DROP TABLE "oauth_access_tokens"
734
+  (0.9ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
735
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
736
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
737
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
738
+  (0.8ms) DROP TABLE "oauth_applications"
739
+  (0.8ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
740
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
741
+  (0.0ms) SELECT version FROM "schema_migrations"
742
+ Connecting to database specified by database.yml
743
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
744
+  (0.2ms) select sqlite_version(*)
745
+  (3.3ms) DROP TABLE "dummy_users"
746
+  (2.7ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
747
+  (0.7ms) DROP TABLE "oauth_access_grants"
748
+  (0.6ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
749
+  (0.4ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
750
+  (0.5ms) DROP TABLE "oauth_access_tokens"
751
+  (0.5ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
752
+  (0.4ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
753
+  (0.5ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
754
+  (0.5ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
755
+  (0.4ms) DROP TABLE "oauth_applications"
756
+  (0.5ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
757
+  (0.4ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
758
+  (0.1ms) SELECT version FROM "schema_migrations"
759
+ Connecting to database specified by database.yml
760
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
761
+  (0.3ms) select sqlite_version(*)
762
+  (1.4ms) DROP TABLE "dummy_users"
763
+  (1.0ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
764
+  (0.9ms) DROP TABLE "oauth_access_grants"
765
+  (1.0ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
766
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
767
+  (0.8ms) DROP TABLE "oauth_access_tokens"
768
+  (0.9ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
769
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
770
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
771
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
772
+  (0.8ms) DROP TABLE "oauth_applications"
773
+  (1.0ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
774
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
775
+  (0.1ms) SELECT version FROM "schema_migrations"
776
+ Connecting to database specified by database.yml
777
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" 
778
+  (0.2ms) select sqlite_version(*)
779
+  (1.8ms) DROP TABLE "dummy_users"
780
+  (1.1ms) CREATE TABLE "dummy_users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "username" varchar(255), "password_hash" varchar(255), "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
781
+  (0.9ms) DROP TABLE "oauth_access_grants"
782
+  (0.9ms) CREATE TABLE "oauth_access_grants" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer NOT NULL, "application_id" integer NOT NULL, "token" varchar(255) NOT NULL, "expires_in" integer NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "revoked_at" datetime, "scopes" varchar(255))
783
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_grants_on_token" ON "oauth_access_grants" ("token")
784
+  (0.9ms) DROP TABLE "oauth_access_tokens"
785
+  (1.0ms) CREATE TABLE "oauth_access_tokens" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "resource_owner_id" integer, "application_id" integer, "token" varchar(255) NOT NULL, "refresh_token" varchar(255), "expires_in" integer, "revoked_at" datetime, "created_at" datetime NOT NULL, "scopes" varchar(255)) 
786
+  (0.8ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_refresh_token" ON "oauth_access_tokens" ("refresh_token")
787
+  (0.8ms) CREATE INDEX "index_oauth_access_tokens_on_resource_owner_id" ON "oauth_access_tokens" ("resource_owner_id")
788
+  (0.9ms) CREATE UNIQUE INDEX "index_oauth_access_tokens_on_token" ON "oauth_access_tokens" ("token")
789
+  (0.8ms) DROP TABLE "oauth_applications"
790
+  (0.9ms) CREATE TABLE "oauth_applications" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255) NOT NULL, "uid" varchar(255) NOT NULL, "secret" varchar(255) NOT NULL, "redirect_uri" text NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
791
+  (0.7ms) CREATE UNIQUE INDEX "index_oauth_applications_on_uid" ON "oauth_applications" ("uid")
792
+  (0.1ms) SELECT version FROM "schema_migrations"
@@ -722,3 +722,366 @@ Connecting to database specified by database.yml
722
722
   (0.0ms) rollback transaction
723
723
   (0.0ms) begin transaction
724
724
   (0.0ms) rollback transaction
725
+ Connecting to database specified by database.yml
726
+ Connecting to database specified by database.yml
727
+ Connecting to database specified by database.yml
728
+ Connecting to database specified by database.yml
729
+ Connecting to database specified by database.yml
730
+ Connecting to database specified by database.yml
731
+  (0.6ms) begin transaction
732
+  (0.1ms) rollback transaction
733
+  (0.0ms) begin transaction
734
+  (0.0ms) rollback transaction
735
+  (0.0ms) begin transaction
736
+  (0.0ms) rollback transaction
737
+  (0.0ms) begin transaction
738
+  (0.0ms) rollback transaction
739
+  (0.0ms) begin transaction
740
+  (0.0ms) rollback transaction
741
+  (0.0ms) begin transaction
742
+  (0.1ms) rollback transaction
743
+  (0.0ms) begin transaction
744
+  (0.0ms) rollback transaction
745
+  (0.0ms) begin transaction
746
+  (0.0ms) rollback transaction
747
+  (0.0ms) begin transaction
748
+  (0.0ms) rollback transaction
749
+  (0.0ms) begin transaction
750
+  (0.0ms) rollback transaction
751
+  (0.0ms) begin transaction
752
+  (0.0ms) rollback transaction
753
+  (0.0ms) begin transaction
754
+  (0.0ms) SAVEPOINT active_record_1
755
+ SQL (4.7ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 00:51:31 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 00:51:31 UTC +00:00], ["username", nil]]
756
+  (0.0ms) RELEASE SAVEPOINT active_record_1
757
+  (0.3ms) rollback transaction
758
+  (0.0ms) begin transaction
759
+  (0.0ms) rollback transaction
760
+  (0.0ms) begin transaction
761
+  (0.0ms) rollback transaction
762
+ Connecting to database specified by database.yml
763
+  (0.4ms) begin transaction
764
+  (0.0ms) rollback transaction
765
+  (0.0ms) begin transaction
766
+  (0.0ms) rollback transaction
767
+  (0.0ms) begin transaction
768
+  (0.0ms) rollback transaction
769
+  (0.0ms) begin transaction
770
+  (0.0ms) SAVEPOINT active_record_1
771
+ SQL (2.5ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 00:52:38 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 00:52:38 UTC +00:00], ["username", nil]]
772
+  (0.0ms) RELEASE SAVEPOINT active_record_1
773
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" = 1 LIMIT 1
774
+  (0.4ms) rollback transaction
775
+  (0.0ms) begin transaction
776
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" IS NULL LIMIT 1
777
+  (0.0ms) rollback transaction
778
+  (0.0ms) begin transaction
779
+  (0.0ms) rollback transaction
780
+  (0.0ms) begin transaction
781
+  (0.0ms) rollback transaction
782
+  (0.0ms) begin transaction
783
+  (0.0ms) rollback transaction
784
+  (0.0ms) begin transaction
785
+  (0.0ms) rollback transaction
786
+  (0.0ms) begin transaction
787
+  (0.0ms) rollback transaction
788
+  (0.0ms) begin transaction
789
+  (0.0ms) rollback transaction
790
+  (0.0ms) begin transaction
791
+  (0.0ms) rollback transaction
792
+  (0.0ms) begin transaction
793
+  (0.0ms) rollback transaction
794
+  (0.0ms) begin transaction
795
+  (0.0ms) rollback transaction
796
+ Connecting to database specified by database.yml
797
+  (0.4ms) begin transaction
798
+  (0.0ms) rollback transaction
799
+  (0.0ms) begin transaction
800
+  (0.0ms) rollback transaction
801
+  (0.0ms) begin transaction
802
+  (0.0ms) rollback transaction
803
+  (0.0ms) begin transaction
804
+  (0.0ms) rollback transaction
805
+  (0.0ms) begin transaction
806
+  (0.0ms) rollback transaction
807
+  (0.0ms) begin transaction
808
+  (0.0ms) rollback transaction
809
+  (0.0ms) begin transaction
810
+  (0.0ms) rollback transaction
811
+  (0.0ms) begin transaction
812
+  (0.0ms) rollback transaction
813
+  (0.0ms) begin transaction
814
+  (0.0ms) rollback transaction
815
+  (0.0ms) begin transaction
816
+  (0.0ms) rollback transaction
817
+  (0.0ms) begin transaction
818
+  (0.0ms) rollback transaction
819
+  (0.0ms) begin transaction
820
+  (0.0ms) SAVEPOINT active_record_1
821
+ SQL (2.4ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:01:33 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:01:33 UTC +00:00], ["username", nil]]
822
+  (0.0ms) RELEASE SAVEPOINT active_record_1
823
+  (0.5ms) rollback transaction
824
+  (0.0ms) begin transaction
825
+  (0.0ms) rollback transaction
826
+  (0.0ms) begin transaction
827
+  (0.0ms) rollback transaction
828
+ Connecting to database specified by database.yml
829
+  (0.4ms) begin transaction
830
+  (0.0ms) rollback transaction
831
+  (0.0ms) begin transaction
832
+  (0.1ms) rollback transaction
833
+  (0.0ms) begin transaction
834
+  (0.0ms) rollback transaction
835
+  (0.0ms) begin transaction
836
+  (0.0ms) SAVEPOINT active_record_1
837
+ SQL (2.4ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:01:58 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:01:58 UTC +00:00], ["username", nil]]
838
+  (0.0ms) RELEASE SAVEPOINT active_record_1
839
+  (1.1ms) rollback transaction
840
+  (0.1ms) begin transaction
841
+  (0.0ms) SAVEPOINT active_record_1
842
+ SQL (0.4ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:01:58 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:01:58 UTC +00:00], ["username", nil]]
843
+  (0.0ms) RELEASE SAVEPOINT active_record_1
844
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" = 1 LIMIT 1
845
+  (0.4ms) rollback transaction
846
+  (0.1ms) begin transaction
847
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" IS NULL LIMIT 1
848
+  (0.0ms) rollback transaction
849
+  (0.0ms) begin transaction
850
+  (0.0ms) rollback transaction
851
+  (0.0ms) begin transaction
852
+  (0.0ms) rollback transaction
853
+  (0.0ms) begin transaction
854
+  (0.0ms) rollback transaction
855
+  (0.0ms) begin transaction
856
+  (0.0ms) rollback transaction
857
+  (0.0ms) begin transaction
858
+  (0.0ms) rollback transaction
859
+  (0.0ms) begin transaction
860
+  (0.0ms) rollback transaction
861
+  (0.0ms) begin transaction
862
+  (0.0ms) rollback transaction
863
+  (0.0ms) begin transaction
864
+  (0.0ms) rollback transaction
865
+ Connecting to database specified by database.yml
866
+  (0.4ms) begin transaction
867
+  (0.0ms) rollback transaction
868
+  (0.0ms) begin transaction
869
+  (0.1ms) rollback transaction
870
+  (0.0ms) begin transaction
871
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" IS NULL LIMIT 1
872
+  (0.0ms) rollback transaction
873
+  (0.0ms) begin transaction
874
+  (0.0ms) SAVEPOINT active_record_1
875
+ SQL (2.5ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:07:15 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:07:15 UTC +00:00], ["username", nil]]
876
+  (0.0ms) RELEASE SAVEPOINT active_record_1
877
+  (0.8ms) rollback transaction
878
+  (0.0ms) begin transaction
879
+  (0.0ms) SAVEPOINT active_record_1
880
+ SQL (0.2ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:07:15 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:07:15 UTC +00:00], ["username", nil]]
881
+  (0.0ms) RELEASE SAVEPOINT active_record_1
882
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" = 1 LIMIT 1
883
+  (0.3ms) rollback transaction
884
+  (0.0ms) begin transaction
885
+  (0.0ms) rollback transaction
886
+  (0.0ms) begin transaction
887
+  (0.0ms) rollback transaction
888
+  (0.0ms) begin transaction
889
+  (0.0ms) rollback transaction
890
+  (0.0ms) begin transaction
891
+  (0.0ms) rollback transaction
892
+  (0.0ms) begin transaction
893
+  (0.0ms) rollback transaction
894
+  (0.0ms) begin transaction
895
+  (0.0ms) rollback transaction
896
+  (0.0ms) begin transaction
897
+  (0.0ms) rollback transaction
898
+  (0.0ms) begin transaction
899
+  (0.0ms) rollback transaction
900
+  (0.0ms) begin transaction
901
+  (0.0ms) rollback transaction
902
+ Connecting to database specified by database.yml
903
+  (0.4ms) begin transaction
904
+  (0.0ms) rollback transaction
905
+  (0.0ms) begin transaction
906
+  (0.0ms) rollback transaction
907
+  (0.0ms) begin transaction
908
+  (0.0ms) rollback transaction
909
+  (0.0ms) begin transaction
910
+  (0.0ms) rollback transaction
911
+  (0.0ms) begin transaction
912
+  (0.0ms) rollback transaction
913
+  (0.0ms) begin transaction
914
+  (0.0ms) rollback transaction
915
+  (0.0ms) begin transaction
916
+  (0.0ms) rollback transaction
917
+  (0.0ms) begin transaction
918
+  (0.0ms) rollback transaction
919
+  (0.0ms) begin transaction
920
+  (0.0ms) rollback transaction
921
+  (0.0ms) begin transaction
922
+  (0.0ms) rollback transaction
923
+  (0.0ms) begin transaction
924
+  (0.0ms) rollback transaction
925
+  (0.0ms) begin transaction
926
+ DummyUser Load (0.0ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" IS NULL LIMIT 1
927
+  (0.0ms) rollback transaction
928
+  (0.0ms) begin transaction
929
+  (0.0ms) SAVEPOINT active_record_1
930
+ SQL (2.3ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:13:12 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:13:12 UTC +00:00], ["username", nil]]
931
+  (0.0ms) RELEASE SAVEPOINT active_record_1
932
+ DummyUser Load (0.0ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" = 1 LIMIT 1
933
+  (1.1ms) rollback transaction
934
+  (0.1ms) begin transaction
935
+  (0.0ms) SAVEPOINT active_record_1
936
+ SQL (0.4ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:13:12 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:13:12 UTC +00:00], ["username", nil]]
937
+  (0.0ms) RELEASE SAVEPOINT active_record_1
938
+  (0.3ms) rollback transaction
939
+ Connecting to database specified by database.yml
940
+  (0.4ms) begin transaction
941
+  (0.0ms) rollback transaction
942
+  (0.0ms) begin transaction
943
+  (0.0ms) rollback transaction
944
+  (0.0ms) begin transaction
945
+  (0.0ms) rollback transaction
946
+  (0.0ms) begin transaction
947
+  (0.0ms) rollback transaction
948
+  (0.0ms) begin transaction
949
+  (0.0ms) rollback transaction
950
+  (0.0ms) begin transaction
951
+  (0.0ms) rollback transaction
952
+  (0.0ms) begin transaction
953
+  (0.0ms) rollback transaction
954
+  (0.0ms) begin transaction
955
+  (0.0ms) rollback transaction
956
+  (0.0ms) begin transaction
957
+  (0.0ms) rollback transaction
958
+  (0.0ms) begin transaction
959
+  (0.0ms) rollback transaction
960
+  (0.0ms) begin transaction
961
+ DummyUser Load (0.0ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" IS NULL LIMIT 1
962
+  (0.0ms) rollback transaction
963
+  (0.0ms) begin transaction
964
+  (0.0ms) SAVEPOINT active_record_1
965
+ SQL (3.1ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:28:47 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:28:47 UTC +00:00], ["username", nil]]
966
+  (0.0ms) RELEASE SAVEPOINT active_record_1
967
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" = 1 LIMIT 1
968
+  (0.5ms) rollback transaction
969
+  (0.0ms) begin transaction
970
+  (0.0ms) SAVEPOINT active_record_1
971
+ SQL (0.3ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:28:47 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:28:47 UTC +00:00], ["username", nil]]
972
+  (0.0ms) RELEASE SAVEPOINT active_record_1
973
+  (0.3ms) rollback transaction
974
+  (0.0ms) begin transaction
975
+  (0.0ms) rollback transaction
976
+ Connecting to database specified by database.yml
977
+  (0.4ms) begin transaction
978
+  (0.0ms) rollback transaction
979
+  (0.0ms) begin transaction
980
+  (0.0ms) rollback transaction
981
+  (0.0ms) begin transaction
982
+  (0.0ms) SAVEPOINT active_record_1
983
+ SQL (2.4ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:38:49 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:38:49 UTC +00:00], ["username", nil]]
984
+  (0.0ms) RELEASE SAVEPOINT active_record_1
985
+  (0.5ms) rollback transaction
986
+  (0.0ms) begin transaction
987
+  (0.0ms) SAVEPOINT active_record_1
988
+ SQL (0.2ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:38:49 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:38:49 UTC +00:00], ["username", nil]]
989
+  (0.0ms) RELEASE SAVEPOINT active_record_1
990
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" = 1 LIMIT 1
991
+  (0.3ms) rollback transaction
992
+  (0.0ms) begin transaction
993
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" IS NULL LIMIT 1
994
+  (0.0ms) rollback transaction
995
+  (0.0ms) begin transaction
996
+  (0.0ms) rollback transaction
997
+  (0.0ms) begin transaction
998
+  (0.0ms) rollback transaction
999
+  (0.0ms) begin transaction
1000
+  (0.0ms) rollback transaction
1001
+  (0.0ms) begin transaction
1002
+  (0.0ms) rollback transaction
1003
+  (0.0ms) begin transaction
1004
+  (0.0ms) rollback transaction
1005
+  (0.0ms) begin transaction
1006
+  (0.0ms) rollback transaction
1007
+  (0.0ms) begin transaction
1008
+  (0.0ms) rollback transaction
1009
+  (0.0ms) begin transaction
1010
+  (0.0ms) rollback transaction
1011
+  (0.0ms) begin transaction
1012
+  (0.0ms) rollback transaction
1013
+ Connecting to database specified by database.yml
1014
+  (0.4ms) begin transaction
1015
+  (0.0ms) SAVEPOINT active_record_1
1016
+ SQL (2.4ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:43:20 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:43:20 UTC +00:00], ["username", nil]]
1017
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1018
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" = 1 LIMIT 1
1019
+  (1.0ms) rollback transaction
1020
+  (0.0ms) begin transaction
1021
+  (0.0ms) SAVEPOINT active_record_1
1022
+ SQL (0.2ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:43:20 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:43:20 UTC +00:00], ["username", nil]]
1023
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1024
+  (0.3ms) rollback transaction
1025
+  (0.0ms) begin transaction
1026
+ DummyUser Load (0.1ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" IS NULL LIMIT 1
1027
+  (0.0ms) rollback transaction
1028
+  (0.0ms) begin transaction
1029
+  (0.1ms) rollback transaction
1030
+  (0.0ms) begin transaction
1031
+  (0.0ms) rollback transaction
1032
+  (0.0ms) begin transaction
1033
+  (0.0ms) rollback transaction
1034
+  (0.0ms) begin transaction
1035
+  (0.0ms) rollback transaction
1036
+  (0.0ms) begin transaction
1037
+  (0.0ms) rollback transaction
1038
+  (0.0ms) begin transaction
1039
+  (0.0ms) rollback transaction
1040
+  (0.0ms) begin transaction
1041
+  (0.0ms) rollback transaction
1042
+  (0.0ms) begin transaction
1043
+  (0.0ms) rollback transaction
1044
+  (0.0ms) begin transaction
1045
+  (0.0ms) rollback transaction
1046
+  (0.0ms) begin transaction
1047
+  (0.0ms) rollback transaction
1048
+  (0.0ms) begin transaction
1049
+  (0.0ms) rollback transaction
1050
+ Connecting to database specified by database.yml
1051
+ Connecting to database specified by database.yml
1052
+  (0.4ms) begin transaction
1053
+ DummyUser Load (0.0ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" IS NULL LIMIT 1
1054
+  (0.0ms) rollback transaction
1055
+  (0.0ms) begin transaction
1056
+  (0.0ms) SAVEPOINT active_record_1
1057
+ SQL (2.6ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:50:51 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:50:51 UTC +00:00], ["username", nil]]
1058
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1059
+ DummyUser Load (0.0ms) SELECT "dummy_users".* FROM "dummy_users" WHERE "dummy_users"."id" = 1 LIMIT 1
1060
+  (1.1ms) rollback transaction
1061
+  (0.1ms) begin transaction
1062
+  (0.0ms) SAVEPOINT active_record_1
1063
+ SQL (0.3ms) INSERT INTO "dummy_users" ("created_at", "password_hash", "updated_at", "username") VALUES (?, ?, ?, ?) [["created_at", Fri, 16 May 2014 01:50:51 UTC +00:00], ["password_hash", nil], ["updated_at", Fri, 16 May 2014 01:50:51 UTC +00:00], ["username", nil]]
1064
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1065
+  (0.6ms) rollback transaction
1066
+  (0.0ms) begin transaction
1067
+  (0.0ms) rollback transaction
1068
+  (0.0ms) begin transaction
1069
+  (0.0ms) rollback transaction
1070
+  (0.0ms) begin transaction
1071
+  (0.0ms) rollback transaction
1072
+  (0.0ms) begin transaction
1073
+  (0.0ms) rollback transaction
1074
+  (0.0ms) begin transaction
1075
+  (0.0ms) rollback transaction
1076
+  (0.0ms) begin transaction
1077
+  (0.0ms) rollback transaction
1078
+  (0.0ms) begin transaction
1079
+  (0.0ms) rollback transaction
1080
+  (0.0ms) begin transaction
1081
+  (0.0ms) rollback transaction
1082
+  (0.0ms) begin transaction
1083
+  (0.0ms) rollback transaction
1084
+  (0.0ms) begin transaction
1085
+  (0.0ms) rollback transaction
1086
+  (0.0ms) begin transaction
1087
+  (0.0ms) rollback transaction
@@ -2,7 +2,7 @@ require 'spec_helper'
2
2
 
3
3
  module OpenStax
4
4
  module Api
5
- describe DoorkeeperExtensions do
5
+ describe DoorkeeperApplicationIncludes do
6
6
  it 'must add methods to Doorkeeper::Application' do
7
7
  application = Doorkeeper::Application.new
8
8
  expect(application).to respond_to(:is_human?)
@@ -2,7 +2,7 @@ require 'spec_helper'
2
2
 
3
3
  module OpenStax
4
4
  module Api
5
- describe RouteExtensions do
5
+ describe RoutingMapperIncludes do
6
6
  it 'must add api method to ActionDispatch::Routing::Mapper' do
7
7
  mapper = ActionDispatch::Routing::Mapper.new(Rails.application.routes)
8
8
  expect(mapper).to respond_to(:api)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openstax_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 2.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dante Soares
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-05-01 00:00:00.000000000 Z
12
+ date: 2014-05-16 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
@@ -139,11 +139,11 @@ files:
139
139
  - app/models/openstax/api/api_user.rb
140
140
  - lib/openstax/api/apipie.rb
141
141
  - lib/openstax/api/constraints.rb
142
- - lib/openstax/api/doorkeeper_extensions.rb
142
+ - lib/openstax/api/doorkeeper_application_includes.rb
143
143
  - lib/openstax/api/engine.rb
144
144
  - lib/openstax/api/representable_schema_printer.rb
145
145
  - lib/openstax/api/roar.rb
146
- - lib/openstax/api/route_extensions.rb
146
+ - lib/openstax/api/routing_mapper_includes.rb
147
147
  - lib/openstax/api/version.rb
148
148
  - lib/openstax_api.rb
149
149
  - spec/controllers/openstax/api/v1/api_controller_spec.rb
@@ -151,7 +151,6 @@ files:
151
151
  - spec/dummy/Rakefile
152
152
  - spec/dummy/app/assets/javascripts/application.js
153
153
  - spec/dummy/app/assets/stylesheets/application.css
154
- - spec/dummy/app/controllers/application_controller.rb
155
154
  - spec/dummy/app/helpers/application_helper.rb
156
155
  - spec/dummy/app/models/dummy_user.rb
157
156
  - spec/dummy/app/representers/dummy_user_representer.rb
@@ -178,6 +177,7 @@ files:
178
177
  - spec/dummy/db/migrate/1_create_dummy_users.rb
179
178
  - spec/dummy/db/schema.rb
180
179
  - spec/dummy/db/test.sqlite3
180
+ - spec/dummy/lib/controller_includes.rb
181
181
  - spec/dummy/log/development.log
182
182
  - spec/dummy/log/test.log
183
183
  - spec/dummy/public/404.html
@@ -187,10 +187,10 @@ files:
187
187
  - spec/dummy/script/rails
188
188
  - spec/lib/openstax/api/apipie.rb
189
189
  - spec/lib/openstax/api/constraints_spec.rb
190
- - spec/lib/openstax/api/doorkeeper_extensions_spec.rb
190
+ - spec/lib/openstax/api/doorkeeper_application_includes_spec.rb
191
191
  - spec/lib/openstax/api/representable_schema_printer_spec.rb
192
192
  - spec/lib/openstax/api/roar.rb
193
- - spec/lib/openstax/api/route_extensions_spec.rb
193
+ - spec/lib/openstax/api/routing_mapper_includes_spec.rb
194
194
  - spec/models/openstax/api/api_user_spec.rb
195
195
  - spec/spec_helper.rb
196
196
  homepage: https://github.com/openstax/openstax_api
@@ -221,7 +221,6 @@ test_files:
221
221
  - spec/controllers/openstax/api/v1/api_controller_spec.rb
222
222
  - spec/dummy/app/assets/javascripts/application.js
223
223
  - spec/dummy/app/assets/stylesheets/application.css
224
- - spec/dummy/app/controllers/application_controller.rb
225
224
  - spec/dummy/app/helpers/application_helper.rb
226
225
  - spec/dummy/app/models/dummy_user.rb
227
226
  - spec/dummy/app/representers/dummy_user_representer.rb
@@ -248,6 +247,7 @@ test_files:
248
247
  - spec/dummy/db/migrate/1_create_dummy_users.rb
249
248
  - spec/dummy/db/schema.rb
250
249
  - spec/dummy/db/test.sqlite3
250
+ - spec/dummy/lib/controller_includes.rb
251
251
  - spec/dummy/log/development.log
252
252
  - spec/dummy/log/test.log
253
253
  - spec/dummy/public/404.html
@@ -259,9 +259,9 @@ test_files:
259
259
  - spec/dummy/script/rails
260
260
  - spec/lib/openstax/api/apipie.rb
261
261
  - spec/lib/openstax/api/constraints_spec.rb
262
- - spec/lib/openstax/api/doorkeeper_extensions_spec.rb
262
+ - spec/lib/openstax/api/doorkeeper_application_includes_spec.rb
263
263
  - spec/lib/openstax/api/representable_schema_printer_spec.rb
264
264
  - spec/lib/openstax/api/roar.rb
265
- - spec/lib/openstax/api/route_extensions_spec.rb
265
+ - spec/lib/openstax/api/routing_mapper_includes_spec.rb
266
266
  - spec/models/openstax/api/api_user_spec.rb
267
267
  - spec/spec_helper.rb
@@ -1,7 +0,0 @@
1
- class ApplicationController < ActionController::Base
2
- protect_from_forgery
3
-
4
- def present_user
5
- @user ||= DummyUser.create
6
- end
7
- end