nulogy_sso 2.1.3 → 2.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (104) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +20 -6
  3. data/lib/nulogy_sso/engine.rb +12 -8
  4. data/lib/nulogy_sso/test_utilities/auth0_mock.rb +8 -2
  5. data/lib/nulogy_sso/version.rb +1 -1
  6. data/spec/dummy/db/development.sqlite3 +0 -0
  7. data/spec/dummy/db/test.sqlite3 +0 -0
  8. data/spec/dummy/log/development.log +21 -0
  9. data/spec/dummy/log/test.log +1286 -6816
  10. data/spec/dummy/tmp/development_secret.txt +1 -1
  11. data/spec/examples.txt +22 -22
  12. data/spec/features/nulogy_sso/sso_login_spec.rb +6 -1
  13. metadata +64 -238
  14. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/-I/-IQzWZBVpyNJ9dwZO5AyzvfeT_L1FhLt_VKtEYstioM.cache +0 -3
  15. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/-w/-wQxmZSFnAYuueO3wv-SMcI6GpkF0zb93Bk-K1nh6-I.cache +0 -0
  16. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/03/03X-YlLKeQbKg9UgFMNeO-pNRjTrufgGcONruMJMhus.cache +0 -1
  17. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/0v/0vQlHhWsvfiQYmfJVne6KDdCTrM9Ct1ZBUv1wI12fXc.cache +0 -1
  18. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/1c/1cSa1S_Ik-wQeXi-Pb1sJX4_CC_Gu6CJ6THxM2ZxOTQ.cache +0 -1
  19. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/3A/3ACRNidm75IdG2lgWCRExd2yOtmLtKsdRrgsvML8gc4.cache +0 -0
  20. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/3o/3ogX5PjkplRXrsO2QZTSkbohBKS3xuy3yHXRf30Vsho.cache +0 -0
  21. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/4J/4J2ZSEfqkzjpNHLlEPvd-5laPYz8eA0Tm6lt04YfVc4.cache +0 -2
  22. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/4y/4ySQY2DeEDqx7mPwZF2m9dK9u5dtKOZj6PfLlWnRyEQ.cache +0 -1
  23. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/5J/5JVr1JuiYXAwKzD64wxtFHroGbE9K2aMWb6f67tfVDQ.cache +0 -1
  24. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/5u/5uuIL6SiWAHDNxQ63Bb-mEptuzUArLXyoTBDHJ5RTM4.cache +0 -5
  25. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/6b/6bIKFgIunI8QwnhOiCTyQOSHwPOCUNQbSzAVYhaqq8E.cache +0 -1
  26. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/8Q/8QavKcHzS_5D2q2DLfuAtFkJXKtNBAASd3oLAhmCNQs.cache +0 -0
  27. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/8a/8avIYxo88yDqslmUypali4ILLE-OVrryLchYsJuc9uE.cache +0 -1
  28. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/8i/8izW0a4Zw0ZIpyJ2h1olnHKpWoSj6Yu39_6iziqxvzc.cache +0 -1
  29. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/9J/9J6tFdjgXdjYE9Oc9ar9ti5spP_tdq-1_PiYhlD9t6I.cache +0 -2
  30. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/9q/9qxBVp_Ackolv-Ir9TIGtC3Jg4cbqj6mxxLcoimAilw.cache +0 -0
  31. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Ac/AccyOixh8iQFR7XBSzGVVKalgdg64T1yeAp7NBwDtTg.cache +0 -3
  32. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/An/An4y7wYtShMDQHwnRlEj4qcTQOlebrjVIrH-ZjRXlTw.cache +0 -0
  33. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/D2/D2kPITeQ0WkknzjDQuPSbkXklgS6LtKcdtgyC3pu50k.cache +0 -1
  34. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/DO/DOjY5JRYb7u9e6jD6doIfYt5nrvUEjacjyhiTjXal2M.cache +0 -1
  35. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/DU/DUMR4O60Nd02Z9uDvlfLbFUhubOiMbJnYrbJR_AKo4k.cache +0 -1
  36. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Dt/Dt8q0fkQgUXw6I6nWfcPb4ZYGY-_UebKwhNObSrdkT8.cache +0 -0
  37. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Ez/EzXtHEm-xBGVH72qLdvc7siqWebRocOJzp2iPwJm1TM.cache +0 -0
  38. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/FP/FPL9y7t_40uxIV9w2IGRZJnEh_5N6NmXaOWLgvn2wmI.cache +0 -1
  39. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/I-/I-aV6d9rIPlPNI2uOoWp7Il9fdzqpAmpJXcnd08TMxI.cache +0 -0
  40. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/J0/J030bfDTH7OJpzAVdkIlvcx8n0gY-en4t63QpRh83Yo.cache +0 -2
  41. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/KL/KLHTElxq3T60mK7oURgiZow2JiCXYvKCYEUdhhctZKM.cache +0 -1
  42. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/L2/L2uA8R_LKv75JnGXHF4Z-0J1AGG5VObLLPSObFUwov0.cache +0 -0
  43. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/M7/M7sD_tg1aMFHF-gHYiCM_ml6S44geHzvefKgdasAhz8.cache +0 -1
  44. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/M7/m7xag7aON7xLeWIpCQBJ70HcdFqJ1ZUZUg46oU89Zfw.cache +0 -1
  45. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/MA/MAsN3JftLnlWpSVqP84N8tvQ0c5DQ2AJBjL8nWVUINI.cache +0 -0
  46. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Mo/Mo6cKTdohqOXUaEUYOXwkpUewtRun6oC_arZQltPGZg.cache +0 -0
  47. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/OI/OIl8YRbsB6--l_CKIzlqpMNk31xMfPSe8IEGgNnNSQA.cache +0 -2
  48. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/OJ/OJjACgGreSmoal4FQO9QFdjAyRFG8y8Q6urqK9jarR0.cache +0 -1
  49. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/OS/OSjUgSyEOb3ZvdTPFeGkLQQzpdqEaIc_WDb9eOTANH8.cache +0 -0
  50. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/PJ/PJg5JJZQpAq56ZK4RlLkLk3EO_C_PfhhcQcgX155Q3Y.cache +0 -3
  51. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/QO/QO59HgQ2MIHck98-gaQqUM3ia4uzM138LlZsO5TsjLI.cache +0 -1
  52. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Qb/QblQL05XuRs4iHdx96hOHN5mI_37pNeik6NWB99iuxY.cache +0 -0
  53. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/R6/R678edDsoAWc6Bijbe0DN2gc--95iwiQo75-zILHS2Y.cache +0 -0
  54. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Rv/RvFFKTRBnfZgEO-gWwKl_MUeogSPgvYvqivJkjtHF1c.cache +0 -1
  55. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/St/StXiB3ZVbOvvg1eN7OMHH9g_uCljMP209iDbVkqVPaQ.cache +0 -0
  56. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Uj/UjohEpOjNl1G6DoHx_DiqYWORyFy_SIY-Z_3iTgvaNY.cache +0 -2
  57. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/W7/W7lea8dViN-zKiB0YDymngohwzY780_bafIrifdvdEU.cache +0 -1
  58. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Wv/Wv5smlMR8HZlVpUVszeSJC2Z3y9tNVOCXkBcRXb3PK0.cache +0 -1
  59. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/XZ/XZcPRDhkBL2jpJUwZciwFizBlxNz2CsMDBvM71F7Y6M.cache +0 -1
  60. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Y4/Y4XV3TFQk_FtIsIDm735D9Gxqs2n-nVssI7ItEbHlT4.cache +0 -4
  61. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/YU/YUZTikjrtYByH5K9PQpw9o9incNNYKhsjekDQLhPniE.cache +0 -1
  62. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Yp/YpMKz0G1Yf2acXo2K2vXpxKyND46cz69bF5q1zn5dWY.cache +0 -1
  63. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Zk/Zk5OwH10pLNWcgDncIB2KDdKjiMNtG7tzFnAiL4tITw.cache +0 -2
  64. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/Zs/ZsxGMLE5q7daf8xX9wxiISEfgaSSkWQG13xtjs5oGvU.cache +0 -1
  65. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/_c/_c0OX2xSAUonHyl--ScIJdqu4dOIv5eWSiRCpsNIat4.cache +0 -0
  66. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/_v/_vB_dHVUtju7m6FGk-MvQutohQFkt58fsmuf3Y1EFgU.cache +0 -1
  67. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/aT/aTPoDhk5o9HqzSqn8VjurVSrWbYTbh3dAJmXhgLEZyc.cache +0 -1
  68. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/aZ/aZgVZIZURvHb9-rOh2SivDHU-aBn-Jn1nKOPuI7lF0U.cache +0 -0
  69. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/bB/bBrouo-AbmaOmmI5w0EatyvJIj6Zel6BDOqpXUub-YM.cache +0 -2
  70. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/bC/bCGetG10_IPS-4Lea1FrjonfYd1QJf5j7J23dBSgxMI.cache +0 -3
  71. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/bd/bde0sI4pua76cCQiJr5-4YPdoGOq7zUcE5JUFy10wEQ.cache +0 -1
  72. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/c3/c3MkD92XKFFo7SIHfkh3Zf3b7TTV7PPhLy04Ak1iOuY.cache +0 -0
  73. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/cI/cIXdHUyJ1umwlEmauLUx-whf_06eJvzlxEoPVPlG-4s.cache +0 -1
  74. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ck/ckZOTlrjGXnk3bJ7dEgh6ld9VFFg1rV7MGXqEv1Fb9I.cache +0 -3
  75. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/dC/dCxhpA2j6Pi1XDXa12EUmvdpLN_MJ3GPOZBqgg7GcVw.cache +0 -0
  76. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ej/ejwFH71RbcAzfpFyRxO8czavHqoOs9SzC10c-PwS60Y.cache +0 -4
  77. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/fl/flex8byqqPRlAhCuyDZsaMg2gOeDj3NHAIzid-OS2Hg.cache +0 -0
  78. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/gu/guEVVxdrH6uyyJ_m1VYsBVD566zTNeSBDgppqYGy-sk.cache +0 -2
  79. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/hV/hVXlJWvvr6NsDbr1qABWR3CFv36YU7970jmxU_L2NuY.cache +0 -1
  80. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ju/juWsFPPdDAbfJ4X3-dknffITj4HcW0Fu5U9UiaPn4b4.cache +0 -1
  81. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/kG/kG0KlJGmHu0kwLwZDKon08APGF3Z3GpbRt6BuyKJUf4.cache +0 -0
  82. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/kG/kGyYNYLbPlxoTk3K-8slRw-fuDznBFYnl-0y2jK6_cI.cache +0 -0
  83. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/lS/lStvx9Beg2l4s8L-QdTSKuc5_qQPQAZPnIcRI7JkpPE.cache +0 -5
  84. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/m9/m9S3GxTAovnGptmIbSxuSLVFWJCND5v6jetYN2IsHMQ.cache +0 -1
  85. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/mJ/mJ-X19ke9W8_XFBJqqn9Hd4LZNsntZzZjcGZUyStW3s.cache +0 -1
  86. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/n_/n_xYqQYhwEMQknb3jFQnjlxxBE9TzMNHCdJ-bEyZFIw.cache +0 -0
  87. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/nx/nxTv3sKVUQZADJyM3dPaVmUA78MIsMLD_K279yN_GsI.cache +0 -0
  88. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/pM/pM_tvcMleZAXoskYgAVEJ8IPTDCzNUrpHakxVWTZPNQ.cache +0 -2
  89. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/pt/ptleYqvprORReM2iFj-HW9O98Nhoy5qCF4iUWwtyve0.cache +0 -0
  90. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/q6/q6VE6KTZtyGRe8Cuj9izRDMuieCcGKOKzBUH2niWYpc.cache +0 -2
  91. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/q_/q_IgK4QolU1_5AK7pudGtHR2hiob-XkEZIMUgZY_iFM.cache +0 -1
  92. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/qj/qjq5Ug3S2i5pydfGSIfUa7Y0s8s0FwqXzt0kkFijToI.cache +0 -2
  93. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/rd/rd8rR4dvQJUvFyyzVHdNbHilCTfHWlGn6kEU65JL2Fw.cache +0 -1
  94. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/rx/rxqqFB2TXY1MQjq34u1hkkJgqenfyj2ZbYVtb2wEDvc.cache +0 -1
  95. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/sa/sab7V2jcUIn2nRakbXijIbvYmHyOOf6ShENXDRtYP1w.cache +0 -1
  96. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/sr/sr3hnK_P9HaS68zSw0GLhpPzpgEs9shxEe6J7ktfbcw.cache +0 -1
  97. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/u_/u_y6q_eS56FrB6fbIcFt49Tw9exxHbWGGb9puLTTcnk.cache +0 -3
  98. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ub/ubraBOWW9z9uvIXTsIrgJ3kzPboMmsZcyeNsv7sMCnU.cache +0 -1
  99. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/wi/win_v0ZNu-l7AoRx8w3ls1xcy0mUExLBVMCSr5oaJFc.cache +0 -0
  100. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/xH/xHr1kqSt7XnOPWH1LDZY1-0rIpwoT4OM4g68Ts3A9a4.cache +0 -1
  101. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/yM/yMJd-lz8flnlwt-j5DOGjhykEGnynSCv4I2YKpPfr0Y.cache +0 -1
  102. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/ys/ysn-zAA7CKGovpmCCejFwdSLV3RlH13Nc4cwac7BwL4.cache +0 -0
  103. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/zT/zTQBjN2k1ltsiVOSJb4mqUhl4FvLQDM6cFRUtQLQ6Qw.cache +0 -1
  104. data/spec/dummy/tmp/cache/assets/sprockets/v3.0/zq/zqVwwFUvXqTxyX57DFJh5CY88HR0PEznhr-rLP6A5BQ.cache +0 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ad56727743b843b7b225c6aaf8858c97c62c20dc974e3c776b9fc0fb155bc52f
4
- data.tar.gz: c53a714607c173e9c1e5b96b9c1a2cedfb268b7c4483487f5fd32cfa306e0f10
3
+ metadata.gz: 74e239b1c685ec0b9fc96d1d56575e4a1fb9b699e4745a4f532230791be36607
4
+ data.tar.gz: 629ac3914d88f3ab4ae01c7bad14ce6241fc1e9274b20ba070a1a0edee247d2c
5
5
  SHA512:
6
- metadata.gz: 150658c3b533bc60ebf25ff6660a93389b08b495b17d4efb8e5d6c682a377775fc09c76db34bc65522496002b0f739c1d39bddb6d00ac91c605ff3ffaf817f65
7
- data.tar.gz: 8f091e0a1cd0c7aa4bc5f4c327bf72637a729ca53e073710bd414aa082a7cbc7dcdd46e17cf16c3fde207dc5558f6e741e4ce4cbefd9cee560f1d3fe8dd2a20d
6
+ metadata.gz: 7e8cccb0d3ef757470e78453648b820ec292f9da3b46c9fb16179dd904aa8a669887dceb01371459c2993dcacebb8e294a19e3a5093e0e947d807c45be40d056
7
+ data.tar.gz: 6f770201a5c6847a1fd52967fb33b988745b3b5984ce19e4c01e5b0bfd19824429e3024beda0d1f403cbaae6bd9ec97b9e88ff19f151c10774692a41a9881dc8
data/README.md CHANGED
@@ -2,9 +2,15 @@
2
2
 
3
3
  [![Gem](https://img.shields.io/gem/v/nulogy_sso?label=nulogy_sso)](https://rubygems.org/gems/nulogy_sso "View this project in Rubygems")
4
4
 
5
+ > **NOTE:** The default branch for this repository was changed to `main`. Please read [this Github blog post](https://github.blog/changelog/2020-10-01-the-default-branch-for-newly-created-repositories-is-now-main/) for more information.
6
+
5
7
  ## Auth0
6
8
  For more information on Auth0 see the [Auth0 documentation](https://auth0.com/docs/flows/concepts/auth-code#how-it-works).
7
9
 
10
+ ### Authentication Flow
11
+
12
+ The Auth0 docs can be confusing, so we provide [a more detailed picture of the Authentication Flow](https://drive.google.com/file/d/1fbPZR6FmfetRzyQZVz16Hs2rqepY4XJZ/view?usp=sharing) implemented by this gem.
13
+
8
14
  ## Installation
9
15
 
10
16
  This gem is a Rails Engine. It follows best practices [documented here](https://guides.rubyonrails.org/engines.html).
@@ -111,18 +117,26 @@ docker-compose up -d
111
117
 
112
118
  Tests must be run manually before submitting a PR. This can be done using `rspec spec`.
113
119
 
114
- There are multiple helpers made available via the `NulogySSO::TestUtilities` module. These are helpful for doing things such as grabbing test JWT values and interacting with a [Mockserver](https://github.com/jamesdbloom/mockserver) mock of the Auth0 API.
120
+ Please consult [this documentation](docs/Testing.md) for advice on how to implement tests on an application using nulogy_sso.
115
121
 
116
- It is a common use case for a Rails app to switch from Devise-powered authentication to Auth0. This would also require updates to test helper code, similar to [functionality that Devise provides out of the box](https://github.com/heartcombo/devise/wiki/How-To:-Test-controllers-with-Rails-(and-RSpec)). [See this example](https://github.com/nulogy/Common-Platform-Interface/blob/f9444ded80d6012b9659942481fa2e6b880b54ee/spec/support/controller_integration_spec_macros.rb) of how a test helper could be written for an app using a feature flag (e.g. environment variable) to switch between Devise and NulogySSO authentication.
117
-
118
- ###
122
+ ### Deployment
119
123
 
120
124
  1. Ensure that all tests are passing on the project
121
125
  1. Increment the library version in [version.rb](./lib/nulogy_sso/version.rb), adhering to semver principles
122
126
  1. Add a entry to [the Changelog](./CHANGELOG.md). Move all entries in the _Unreleased_ section into the new version's section. Now is also a good chance to add in any addition bullet points that may have been forgotten in the _Unreleased_ section. Append today's date to the new version.
123
- 1. Run these commands to complete the deployment. Rubygem push rights on this gem is required.
127
+ 1. Run these commands to complete the deployment. Rubygem push rights on this gem is required. Obviously, replace `X.Y.Z` with the version being deployed.
124
128
  ```sh
125
- gem build
129
+ # Commit changes to the files listed above
130
+ git commit -m "Cuts version X.Y.Z"
131
+ git push
132
+
133
+ # Push the gem to Rubygems
134
+ gem build nulogy_sso.gemspec
135
+ gem push nulogy_sso-X.Y.Z.gem
136
+
137
+ # Cut a release on GitHub
138
+ git tag vX.Y.Z
139
+ git push --tags
126
140
  ```
127
141
 
128
142
  ### Contributing
@@ -9,20 +9,24 @@ module NulogySSO
9
9
  class Engine < ::Rails::Engine
10
10
  isolate_namespace NulogySSO
11
11
 
12
+ VERIFY_CONFIG = ENV["ASSETS_PRECOMPILE"].blank?
13
+
12
14
  # Load all gems in the gemspec, as opposed to explicit require calls
13
15
  Bundler.require(*Rails.groups)
14
16
 
15
17
  config.after_initialize do
16
- if NulogySSO.sso_config.blank?
17
- raise "Missing sso_config config object. Consider using config_for() to load a YAML config file."
18
- end
18
+ if VERIFY_CONFIG
19
+ if NulogySSO.sso_config.blank?
20
+ raise "Missing sso_config config object. Consider using config_for() to load a YAML config file."
21
+ end
19
22
 
20
- if NulogySSO.find_user_by_email.blank?
21
- raise "Missing find_user_by_email config lambda."
22
- end
23
+ if NulogySSO.find_user_by_email.blank?
24
+ raise "Missing find_user_by_email config lambda."
25
+ end
23
26
 
24
- if NulogySSO.handle_sso_error.blank?
25
- raise "Missing handle_sso_error config lambda."
27
+ if NulogySSO.handle_sso_error.blank?
28
+ raise "Missing handle_sso_error config lambda."
29
+ end
26
30
  end
27
31
  end
28
32
  end
@@ -7,9 +7,15 @@ module NulogySSO
7
7
 
8
8
  # This provides a simple mock implementation of Auth0 endpoints, via mockserver
9
9
  class Auth0Mock
10
- def initialize(engine_path: "/nulogy_sso")
10
+ def initialize(
11
+ engine_path: "/nulogy_sso",
12
+ mockserver_host: ENV.fetch("NULOGY_SSO_MOCKSERVER_HOST"),
13
+ mockserver_port: ENV.fetch("NULOGY_SSO_MOCKSERVER_PORT")
14
+ )
11
15
  @jwt_test_helper = NulogySSO::TestUtilities::JwtTestHelper.new
12
16
  @engine_path = engine_path
17
+ @mockserver_host = mockserver_host
18
+ @mockserver_port = mockserver_port
13
19
  end
14
20
 
15
21
  def setup_jwks
@@ -80,7 +86,7 @@ module NulogySSO
80
86
  end
81
87
 
82
88
  def mockserver_url(path = "")
83
- "http://#{ENV.fetch("NULOGY_SSO_MOCKSERVER_HOST")}:#{ENV.fetch("NULOGY_SSO_MOCKSERVER_PORT")}/mockserver/#{path}"
89
+ "http://#{@mockserver_host}:#{@mockserver_port}/mockserver/#{path}"
84
90
  end
85
91
 
86
92
  def signed_jwt_response(email, overrides = {})
@@ -1,3 +1,3 @@
1
1
  module NulogySSO
2
- VERSION = "2.1.3"
2
+ VERSION = "2.4.0"
3
3
  end
File without changes
Binary file
@@ -0,0 +1,21 @@
1
+  (1.8ms) SELECT sqlite_version(*)
2
+  (0.1ms) SELECT sqlite_version(*)
3
+  (0.1ms) SELECT sqlite_version(*)
4
+  (0.1ms) DROP TABLE IF EXISTS "users"
5
+  (9.2ms) CREATE TABLE "users" ("id" integer PRIMARY KEY AUTOINCREMENT NOT NULL, "email" varchar, "active" boolean DEFAULT 0 NOT NULL, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
6
+  (1.2ms) CREATE TABLE "schema_migrations" ("version" varchar NOT NULL PRIMARY KEY)
7
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
8
+  (16.6ms) INSERT INTO "schema_migrations" (version) VALUES (20190912211120)
9
+  (1.1ms) CREATE TABLE "ar_internal_metadata" ("key" varchar NOT NULL PRIMARY KEY, "value" varchar, "created_at" datetime(6) NOT NULL, "updated_at" datetime(6) NOT NULL)
10
+ ActiveRecord::InternalMetadata Load (0.2ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ? [["key", "environment"], ["LIMIT", 1]]
11
+  (0.0ms) begin transaction
12
+ ActiveRecord::InternalMetadata Create (0.4ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["key", "environment"], ["value", "development"], ["created_at", "2021-04-08 21:50:30.614672"], ["updated_at", "2021-04-08 21:50:30.614672"]]
13
+  (0.7ms) commit transaction
14
+ ActiveRecord::InternalMetadata Load (0.1ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ? [["key", "environment"], ["LIMIT", 1]]
15
+  (0.0ms) begin transaction
16
+ ActiveRecord::InternalMetadata Update (0.4ms) UPDATE "ar_internal_metadata" SET "value" = ?, "updated_at" = ? WHERE "ar_internal_metadata"."key" = ? [["value", "test"], ["updated_at", "2021-04-08 21:50:30.620037"], ["key", "environment"]]
17
+  (0.7ms) commit transaction
18
+ ActiveRecord::InternalMetadata Load (0.1ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ? [["key", "schema_sha1"], ["LIMIT", 1]]
19
+  (0.0ms) begin transaction
20
+ ActiveRecord::InternalMetadata Create (0.6ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["key", "schema_sha1"], ["value", "2b01fa59c4c74162736a2cb624389712cfa71fdb"], ["created_at", "2021-04-08 21:50:30.625088"], ["updated_at", "2021-04-08 21:50:30.625088"]]
21
+  (0.8ms) commit transaction