openstax_api 1.0.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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