ruby_jwt 1.0.6 → 1.0.7

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: 594162e0a29e64ae407b939ab29be98866b68a47
4
- data.tar.gz: 4880030ad1b6f69882fd7e8b77984b45fb70f227
3
+ metadata.gz: a35fbfd1f6a8578d44a2f9e0b9da563f8efbf397
4
+ data.tar.gz: c9e1694cf9f99c0181f34d52d7e89ef3107eb5e1
5
5
  SHA512:
6
- metadata.gz: fcd83d7f68e79e8cd387b6b66683b8772de18ea59f3bf6cfc1f8bbd678348c6470f52e3538bf260574ba6cd0a04067eede78e4899cdee087916ac42abb8dab66
7
- data.tar.gz: 6aff846d6a54966d8bc00a045e7f79dab60d71ec68d7a0200c6e9dfc5423f2a5ec0ab65f4b236de042f4480f2e9476c9bef532dea965d0ba8ba4a7d82bfb468c
6
+ metadata.gz: 437117ca4d94645600462f933d9fba248bbfc25619e37bab928c3a492b18499f9a8bd151a56b597f6a4ebde80bd886b48698b8ba8aad1f7fd056ea9f29f456a6
7
+ data.tar.gz: ad1ebcd48ed95c8d52fe5f5dd53d8b3f41ef5198dcfa43921cd31449902226b9c96c3a1dc95814801611d7abb3b5e6eb51cca24ad9f6c466f0980da0ce8a6259
data/lib/ruby_jwt.rb CHANGED
@@ -46,6 +46,10 @@ module JWT
46
46
  if(payload_options[:exp])
47
47
  payload_options [:exp] += payload[:iat]
48
48
  end
49
+
50
+ if(payload_options[:nbf])
51
+ payload_options[:nbf] += payload[:iat]
52
+ end
49
53
  payload.merge!(payload_options)
50
54
  jwt_parts << encode_header(header_options)
51
55
  jwt_parts << encode_payload(payload)
@@ -72,6 +76,10 @@ module JWT
72
76
  return VerificationResponse.new(false,"JWT is expired.")
73
77
  end
74
78
 
79
+ if(payload[:nbf] and Time.now.to_i < payload[:nbf])
80
+ return VerificationResponse.new(false, "JWT nbf has not passed yet.")
81
+ end
82
+
75
83
  if(options[:iss])
76
84
  return VerificationResponse.new(false,"JWT issuer is invalid.") if options[:iss] != payload[:iss]
77
85
  end
@@ -1,3 +1,3 @@
1
1
  module RubyJwt
2
- VERSION = "1.0.6"
2
+ VERSION = "1.0.7"
3
3
  end
@@ -2798,3 +2798,688 @@ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
2798
2798
  RubyJwtTest: test_should_encode_and_decode_none
2799
2799
  -----------------------------------------------
2800
2800
   (0.0ms) rollback transaction
2801
+  (0.1ms) begin transaction
2802
+ -----------------------------------------------------
2803
+ RubyJwtTest: test_decodes_and_verifies_existing_token
2804
+ -----------------------------------------------------
2805
+  (0.0ms) rollback transaction
2806
+  (0.0ms) begin transaction
2807
+ ---------------------------------------------------------
2808
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
2809
+ ---------------------------------------------------------
2810
+  (0.0ms) rollback transaction
2811
+  (0.0ms) begin transaction
2812
+ ------------------------------------------
2813
+ RubyJwtTest: test_returns_false_if_expired
2814
+ ------------------------------------------
2815
+  (0.0ms) rollback transaction
2816
+  (0.1ms) begin transaction
2817
+ ----------------------------------------------------
2818
+ RubyJwtTest: test_returns_false_if_invalid_signature
2819
+ ----------------------------------------------------
2820
+  (0.0ms) rollback transaction
2821
+  (0.0ms) begin transaction
2822
+ -------------------------------------------------
2823
+ RubyJwtTest: test_returns_false_if_wrong_audience
2824
+ -------------------------------------------------
2825
+  (0.1ms) rollback transaction
2826
+  (0.1ms) begin transaction
2827
+ -----------------------------------------------
2828
+ RubyJwtTest: test_returns_false_if_wrong_issuer
2829
+ -----------------------------------------------
2830
+  (0.0ms) rollback transaction
2831
+  (0.0ms) begin transaction
2832
+ -------------------------------------------------------------------------
2833
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
2834
+ -------------------------------------------------------------------------
2835
+  (0.0ms) rollback transaction
2836
+  (0.0ms) begin transaction
2837
+ -----------------------------------------------
2838
+ RubyJwtTest: test_returns_sign_error_for_no_key
2839
+ -----------------------------------------------
2840
+  (0.0ms) rollback transaction
2841
+  (0.0ms) begin transaction
2842
+ ------------------------------------------------
2843
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
2844
+ ------------------------------------------------
2845
+  (0.0ms) rollback transaction
2846
+  (0.0ms) begin transaction
2847
+ ----------------------------------------------
2848
+ RubyJwtTest: test_should_encode_and_decode_RSA
2849
+ ----------------------------------------------
2850
+  (0.0ms) rollback transaction
2851
+  (0.0ms) begin transaction
2852
+ ----------------------------------------------------------
2853
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
2854
+ ----------------------------------------------------------
2855
+  (0.0ms) rollback transaction
2856
+  (0.0ms) begin transaction
2857
+ -----------------------------------------------
2858
+ RubyJwtTest: test_should_encode_and_decode_none
2859
+ -----------------------------------------------
2860
+  (0.0ms) rollback transaction
2861
+  (0.1ms) begin transaction
2862
+ -----------------------------------------------------
2863
+ RubyJwtTest: test_decodes_and_verifies_existing_token
2864
+ -----------------------------------------------------
2865
+  (0.0ms) rollback transaction
2866
+  (0.0ms) begin transaction
2867
+ ---------------------------------------------------------
2868
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
2869
+ ---------------------------------------------------------
2870
+  (0.0ms) rollback transaction
2871
+  (0.0ms) begin transaction
2872
+ ------------------------------------------
2873
+ RubyJwtTest: test_returns_false_if_expired
2874
+ ------------------------------------------
2875
+  (0.0ms) rollback transaction
2876
+  (0.0ms) begin transaction
2877
+ ----------------------------------------------------
2878
+ RubyJwtTest: test_returns_false_if_invalid_signature
2879
+ ----------------------------------------------------
2880
+  (0.0ms) rollback transaction
2881
+  (0.0ms) begin transaction
2882
+ -------------------------------------------------
2883
+ RubyJwtTest: test_returns_false_if_wrong_audience
2884
+ -------------------------------------------------
2885
+  (0.0ms) rollback transaction
2886
+  (0.0ms) begin transaction
2887
+ -----------------------------------------------
2888
+ RubyJwtTest: test_returns_false_if_wrong_issuer
2889
+ -----------------------------------------------
2890
+  (0.0ms) rollback transaction
2891
+  (0.0ms) begin transaction
2892
+ -------------------------------------------------------------------------
2893
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
2894
+ -------------------------------------------------------------------------
2895
+  (0.0ms) rollback transaction
2896
+  (0.1ms) begin transaction
2897
+ -----------------------------------------------
2898
+ RubyJwtTest: test_returns_sign_error_for_no_key
2899
+ -----------------------------------------------
2900
+  (0.2ms) rollback transaction
2901
+  (0.0ms) begin transaction
2902
+ ------------------------------------------------
2903
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
2904
+ ------------------------------------------------
2905
+  (0.0ms) rollback transaction
2906
+  (0.0ms) begin transaction
2907
+ ----------------------------------------------
2908
+ RubyJwtTest: test_should_encode_and_decode_RSA
2909
+ ----------------------------------------------
2910
+  (0.0ms) rollback transaction
2911
+  (0.0ms) begin transaction
2912
+ ----------------------------------------------------------
2913
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
2914
+ ----------------------------------------------------------
2915
+  (0.0ms) rollback transaction
2916
+  (0.0ms) begin transaction
2917
+ -----------------------------------------------
2918
+ RubyJwtTest: test_should_encode_and_decode_none
2919
+ -----------------------------------------------
2920
+  (0.0ms) rollback transaction
2921
+  (0.1ms) begin transaction
2922
+ -----------------------------------------------------
2923
+ RubyJwtTest: test_decodes_and_verifies_existing_token
2924
+ -----------------------------------------------------
2925
+  (0.1ms) rollback transaction
2926
+  (0.0ms) begin transaction
2927
+ ---------------------------------------------------------
2928
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
2929
+ ---------------------------------------------------------
2930
+  (0.1ms) rollback transaction
2931
+  (0.0ms) begin transaction
2932
+ ------------------------------------------
2933
+ RubyJwtTest: test_returns_false_if_expired
2934
+ ------------------------------------------
2935
+  (0.0ms) rollback transaction
2936
+  (0.0ms) begin transaction
2937
+ ----------------------------------------------------
2938
+ RubyJwtTest: test_returns_false_if_invalid_signature
2939
+ ----------------------------------------------------
2940
+  (0.0ms) rollback transaction
2941
+  (0.0ms) begin transaction
2942
+ -------------------------------------------------
2943
+ RubyJwtTest: test_returns_false_if_wrong_audience
2944
+ -------------------------------------------------
2945
+  (0.0ms) rollback transaction
2946
+  (0.0ms) begin transaction
2947
+ -----------------------------------------------
2948
+ RubyJwtTest: test_returns_false_if_wrong_issuer
2949
+ -----------------------------------------------
2950
+  (0.0ms) rollback transaction
2951
+  (0.1ms) begin transaction
2952
+ -------------------------------------------------------------------------
2953
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
2954
+ -------------------------------------------------------------------------
2955
+  (0.0ms) rollback transaction
2956
+  (0.1ms) begin transaction
2957
+ -----------------------------------------------
2958
+ RubyJwtTest: test_returns_sign_error_for_no_key
2959
+ -----------------------------------------------
2960
+  (0.0ms) rollback transaction
2961
+  (0.0ms) begin transaction
2962
+ ------------------------------------------------
2963
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
2964
+ ------------------------------------------------
2965
+  (0.0ms) rollback transaction
2966
+  (0.0ms) begin transaction
2967
+ ----------------------------------------------
2968
+ RubyJwtTest: test_should_encode_and_decode_RSA
2969
+ ----------------------------------------------
2970
+  (0.0ms) rollback transaction
2971
+  (0.0ms) begin transaction
2972
+ ----------------------------------------------------------
2973
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
2974
+ ----------------------------------------------------------
2975
+  (0.0ms) rollback transaction
2976
+  (0.0ms) begin transaction
2977
+ -----------------------------------------------
2978
+ RubyJwtTest: test_should_encode_and_decode_none
2979
+ -----------------------------------------------
2980
+  (0.0ms) rollback transaction
2981
+  (0.1ms) begin transaction
2982
+ -----------------------------------------------------
2983
+ RubyJwtTest: test_decodes_and_verifies_existing_token
2984
+ -----------------------------------------------------
2985
+  (0.0ms) rollback transaction
2986
+  (0.0ms) begin transaction
2987
+ ---------------------------------------------------------
2988
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
2989
+ ---------------------------------------------------------
2990
+  (0.0ms) rollback transaction
2991
+  (0.0ms) begin transaction
2992
+ ------------------------------------------
2993
+ RubyJwtTest: test_returns_false_if_expired
2994
+ ------------------------------------------
2995
+  (0.0ms) rollback transaction
2996
+  (0.0ms) begin transaction
2997
+ ----------------------------------------------------
2998
+ RubyJwtTest: test_returns_false_if_invalid_signature
2999
+ ----------------------------------------------------
3000
+  (0.0ms) rollback transaction
3001
+  (0.0ms) begin transaction
3002
+ -------------------------------------------------
3003
+ RubyJwtTest: test_returns_false_if_wrong_audience
3004
+ -------------------------------------------------
3005
+  (0.0ms) rollback transaction
3006
+  (0.0ms) begin transaction
3007
+ -----------------------------------------------
3008
+ RubyJwtTest: test_returns_false_if_wrong_issuer
3009
+ -----------------------------------------------
3010
+  (0.0ms) rollback transaction
3011
+  (0.0ms) begin transaction
3012
+ -------------------------------------------------------------------------
3013
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
3014
+ -------------------------------------------------------------------------
3015
+  (0.0ms) rollback transaction
3016
+  (0.0ms) begin transaction
3017
+ -----------------------------------------------
3018
+ RubyJwtTest: test_returns_sign_error_for_no_key
3019
+ -----------------------------------------------
3020
+  (0.0ms) rollback transaction
3021
+  (0.0ms) begin transaction
3022
+ ------------------------------------------------
3023
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
3024
+ ------------------------------------------------
3025
+  (0.0ms) rollback transaction
3026
+  (0.0ms) begin transaction
3027
+ ----------------------------------------------
3028
+ RubyJwtTest: test_should_encode_and_decode_RSA
3029
+ ----------------------------------------------
3030
+  (0.0ms) rollback transaction
3031
+  (0.0ms) begin transaction
3032
+ ----------------------------------------------------------
3033
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
3034
+ ----------------------------------------------------------
3035
+  (0.0ms) rollback transaction
3036
+  (0.0ms) begin transaction
3037
+ -----------------------------------------------
3038
+ RubyJwtTest: test_should_encode_and_decode_none
3039
+ -----------------------------------------------
3040
+  (0.0ms) rollback transaction
3041
+  (0.1ms) begin transaction
3042
+ -----------------------------------------------------
3043
+ RubyJwtTest: test_decodes_and_verifies_existing_token
3044
+ -----------------------------------------------------
3045
+  (0.0ms) rollback transaction
3046
+  (0.0ms) begin transaction
3047
+ ---------------------------------------------------------
3048
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
3049
+ ---------------------------------------------------------
3050
+  (0.0ms) rollback transaction
3051
+  (0.0ms) begin transaction
3052
+ ------------------------------------------
3053
+ RubyJwtTest: test_returns_false_if_expired
3054
+ ------------------------------------------
3055
+  (0.0ms) rollback transaction
3056
+  (0.1ms) begin transaction
3057
+ ----------------------------------------------------
3058
+ RubyJwtTest: test_returns_false_if_invalid_signature
3059
+ ----------------------------------------------------
3060
+  (0.0ms) rollback transaction
3061
+  (0.0ms) begin transaction
3062
+ -------------------------------------------------
3063
+ RubyJwtTest: test_returns_false_if_wrong_audience
3064
+ -------------------------------------------------
3065
+  (0.0ms) rollback transaction
3066
+  (0.0ms) begin transaction
3067
+ -----------------------------------------------
3068
+ RubyJwtTest: test_returns_false_if_wrong_issuer
3069
+ -----------------------------------------------
3070
+  (0.0ms) rollback transaction
3071
+  (0.0ms) begin transaction
3072
+ -------------------------------------------------------------------------
3073
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
3074
+ -------------------------------------------------------------------------
3075
+  (0.0ms) rollback transaction
3076
+  (0.0ms) begin transaction
3077
+ -----------------------------------------------
3078
+ RubyJwtTest: test_returns_sign_error_for_no_key
3079
+ -----------------------------------------------
3080
+  (0.0ms) rollback transaction
3081
+  (0.0ms) begin transaction
3082
+ ------------------------------------------------
3083
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
3084
+ ------------------------------------------------
3085
+  (0.0ms) rollback transaction
3086
+  (0.0ms) begin transaction
3087
+ ----------------------------------------------
3088
+ RubyJwtTest: test_should_encode_and_decode_RSA
3089
+ ----------------------------------------------
3090
+  (0.0ms) rollback transaction
3091
+  (0.0ms) begin transaction
3092
+ ----------------------------------------------------------
3093
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
3094
+ ----------------------------------------------------------
3095
+  (0.0ms) rollback transaction
3096
+  (0.0ms) begin transaction
3097
+ -----------------------------------------------
3098
+ RubyJwtTest: test_should_encode_and_decode_none
3099
+ -----------------------------------------------
3100
+  (0.0ms) rollback transaction
3101
+  (0.1ms) begin transaction
3102
+ -----------------------------------------------------
3103
+ RubyJwtTest: test_decodes_and_verifies_existing_token
3104
+ -----------------------------------------------------
3105
+  (0.0ms) rollback transaction
3106
+  (0.1ms) begin transaction
3107
+ ---------------------------------------------------------
3108
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
3109
+ ---------------------------------------------------------
3110
+  (0.0ms) rollback transaction
3111
+  (0.0ms) begin transaction
3112
+ ------------------------------------------
3113
+ RubyJwtTest: test_returns_false_if_expired
3114
+ ------------------------------------------
3115
+  (0.0ms) rollback transaction
3116
+  (0.0ms) begin transaction
3117
+ ----------------------------------------------------
3118
+ RubyJwtTest: test_returns_false_if_invalid_signature
3119
+ ----------------------------------------------------
3120
+  (0.0ms) rollback transaction
3121
+  (0.1ms) begin transaction
3122
+ -------------------------------------------------
3123
+ RubyJwtTest: test_returns_false_if_wrong_audience
3124
+ -------------------------------------------------
3125
+  (0.0ms) rollback transaction
3126
+  (0.0ms) begin transaction
3127
+ -----------------------------------------------
3128
+ RubyJwtTest: test_returns_false_if_wrong_issuer
3129
+ -----------------------------------------------
3130
+  (0.0ms) rollback transaction
3131
+  (0.1ms) begin transaction
3132
+ -------------------------------------------------------------------------
3133
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
3134
+ -------------------------------------------------------------------------
3135
+  (0.0ms) rollback transaction
3136
+  (0.1ms) begin transaction
3137
+ -----------------------------------------------
3138
+ RubyJwtTest: test_returns_sign_error_for_no_key
3139
+ -----------------------------------------------
3140
+  (0.0ms) rollback transaction
3141
+  (0.1ms) begin transaction
3142
+ ------------------------------------------------
3143
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
3144
+ ------------------------------------------------
3145
+  (0.0ms) rollback transaction
3146
+  (0.1ms) begin transaction
3147
+ ----------------------------------------------
3148
+ RubyJwtTest: test_should_encode_and_decode_RSA
3149
+ ----------------------------------------------
3150
+  (0.0ms) rollback transaction
3151
+  (0.1ms) begin transaction
3152
+ ----------------------------------------------------------
3153
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
3154
+ ----------------------------------------------------------
3155
+  (0.0ms) rollback transaction
3156
+  (0.0ms) begin transaction
3157
+ -----------------------------------------------
3158
+ RubyJwtTest: test_should_encode_and_decode_none
3159
+ -----------------------------------------------
3160
+  (0.0ms) rollback transaction
3161
+  (0.1ms) begin transaction
3162
+ -----------------------------------------------------
3163
+ RubyJwtTest: test_decodes_and_verifies_existing_token
3164
+ -----------------------------------------------------
3165
+  (0.0ms) rollback transaction
3166
+  (0.0ms) begin transaction
3167
+ ---------------------------------------------------------
3168
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
3169
+ ---------------------------------------------------------
3170
+  (0.0ms) rollback transaction
3171
+  (0.0ms) begin transaction
3172
+ ---------------------------------------------
3173
+ RubyJwtTest: test_returns_false_if_before_nbf
3174
+ ---------------------------------------------
3175
+  (0.0ms) rollback transaction
3176
+  (0.0ms) begin transaction
3177
+ ------------------------------------------
3178
+ RubyJwtTest: test_returns_false_if_expired
3179
+ ------------------------------------------
3180
+  (0.0ms) rollback transaction
3181
+  (0.1ms) begin transaction
3182
+ ----------------------------------------------------
3183
+ RubyJwtTest: test_returns_false_if_invalid_signature
3184
+ ----------------------------------------------------
3185
+  (0.0ms) rollback transaction
3186
+  (0.0ms) begin transaction
3187
+ -------------------------------------------------
3188
+ RubyJwtTest: test_returns_false_if_wrong_audience
3189
+ -------------------------------------------------
3190
+  (0.0ms) rollback transaction
3191
+  (0.0ms) begin transaction
3192
+ -----------------------------------------------
3193
+ RubyJwtTest: test_returns_false_if_wrong_issuer
3194
+ -----------------------------------------------
3195
+  (0.1ms) rollback transaction
3196
+  (0.0ms) begin transaction
3197
+ -------------------------------------------------------------------------
3198
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
3199
+ -------------------------------------------------------------------------
3200
+  (0.0ms) rollback transaction
3201
+  (0.0ms) begin transaction
3202
+ -----------------------------------------------
3203
+ RubyJwtTest: test_returns_sign_error_for_no_key
3204
+ -----------------------------------------------
3205
+  (0.0ms) rollback transaction
3206
+  (0.0ms) begin transaction
3207
+ ------------------------------------------------
3208
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
3209
+ ------------------------------------------------
3210
+  (0.0ms) rollback transaction
3211
+  (0.0ms) begin transaction
3212
+ ----------------------------------------------
3213
+ RubyJwtTest: test_should_encode_and_decode_RSA
3214
+ ----------------------------------------------
3215
+  (0.0ms) rollback transaction
3216
+  (0.0ms) begin transaction
3217
+ ----------------------------------------------------------
3218
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
3219
+ ----------------------------------------------------------
3220
+  (0.0ms) rollback transaction
3221
+  (0.0ms) begin transaction
3222
+ -----------------------------------------------
3223
+ RubyJwtTest: test_should_encode_and_decode_none
3224
+ -----------------------------------------------
3225
+  (0.0ms) rollback transaction
3226
+  (0.1ms) begin transaction
3227
+ -----------------------------------------------------
3228
+ RubyJwtTest: test_decodes_and_verifies_existing_token
3229
+ -----------------------------------------------------
3230
+  (0.0ms) rollback transaction
3231
+  (0.0ms) begin transaction
3232
+ ---------------------------------------------------------
3233
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
3234
+ ---------------------------------------------------------
3235
+  (0.0ms) rollback transaction
3236
+  (0.0ms) begin transaction
3237
+ ---------------------------------------------
3238
+ RubyJwtTest: test_returns_false_if_before_nbf
3239
+ ---------------------------------------------
3240
+  (0.0ms) rollback transaction
3241
+  (0.0ms) begin transaction
3242
+ ------------------------------------------
3243
+ RubyJwtTest: test_returns_false_if_expired
3244
+ ------------------------------------------
3245
+  (0.0ms) rollback transaction
3246
+  (0.0ms) begin transaction
3247
+ ----------------------------------------------------
3248
+ RubyJwtTest: test_returns_false_if_invalid_signature
3249
+ ----------------------------------------------------
3250
+  (0.0ms) rollback transaction
3251
+  (0.0ms) begin transaction
3252
+ -------------------------------------------------
3253
+ RubyJwtTest: test_returns_false_if_wrong_audience
3254
+ -------------------------------------------------
3255
+  (0.0ms) rollback transaction
3256
+  (0.0ms) begin transaction
3257
+ -----------------------------------------------
3258
+ RubyJwtTest: test_returns_false_if_wrong_issuer
3259
+ -----------------------------------------------
3260
+  (0.0ms) rollback transaction
3261
+  (0.0ms) begin transaction
3262
+ -------------------------------------------------------------------------
3263
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
3264
+ -------------------------------------------------------------------------
3265
+  (0.0ms) rollback transaction
3266
+  (0.0ms) begin transaction
3267
+ -----------------------------------------------
3268
+ RubyJwtTest: test_returns_sign_error_for_no_key
3269
+ -----------------------------------------------
3270
+  (0.0ms) rollback transaction
3271
+  (0.0ms) begin transaction
3272
+ ------------------------------------------------
3273
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
3274
+ ------------------------------------------------
3275
+  (0.0ms) rollback transaction
3276
+  (0.0ms) begin transaction
3277
+ ----------------------------------------------
3278
+ RubyJwtTest: test_should_encode_and_decode_RSA
3279
+ ----------------------------------------------
3280
+  (0.0ms) rollback transaction
3281
+  (0.0ms) begin transaction
3282
+ ----------------------------------------------------------
3283
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
3284
+ ----------------------------------------------------------
3285
+  (0.0ms) rollback transaction
3286
+  (0.0ms) begin transaction
3287
+ -----------------------------------------------
3288
+ RubyJwtTest: test_should_encode_and_decode_none
3289
+ -----------------------------------------------
3290
+  (0.0ms) rollback transaction
3291
+  (0.1ms) begin transaction
3292
+ -----------------------------------------------------
3293
+ RubyJwtTest: test_decodes_and_verifies_existing_token
3294
+ -----------------------------------------------------
3295
+  (0.1ms) rollback transaction
3296
+  (0.0ms) begin transaction
3297
+ ---------------------------------------------------------
3298
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
3299
+ ---------------------------------------------------------
3300
+  (0.0ms) rollback transaction
3301
+  (0.0ms) begin transaction
3302
+ ---------------------------------------------
3303
+ RubyJwtTest: test_returns_false_if_before_nbf
3304
+ ---------------------------------------------
3305
+  (0.1ms) rollback transaction
3306
+  (0.0ms) begin transaction
3307
+ ------------------------------------------
3308
+ RubyJwtTest: test_returns_false_if_expired
3309
+ ------------------------------------------
3310
+  (0.0ms) rollback transaction
3311
+  (0.0ms) begin transaction
3312
+ ----------------------------------------------------
3313
+ RubyJwtTest: test_returns_false_if_invalid_signature
3314
+ ----------------------------------------------------
3315
+  (0.0ms) rollback transaction
3316
+  (0.1ms) begin transaction
3317
+ -------------------------------------------------
3318
+ RubyJwtTest: test_returns_false_if_wrong_audience
3319
+ -------------------------------------------------
3320
+  (0.0ms) rollback transaction
3321
+  (0.1ms) begin transaction
3322
+ -----------------------------------------------
3323
+ RubyJwtTest: test_returns_false_if_wrong_issuer
3324
+ -----------------------------------------------
3325
+  (0.0ms) rollback transaction
3326
+  (0.1ms) begin transaction
3327
+ -------------------------------------------------------------------------
3328
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
3329
+ -------------------------------------------------------------------------
3330
+  (0.0ms) rollback transaction
3331
+  (0.1ms) begin transaction
3332
+ -----------------------------------------------
3333
+ RubyJwtTest: test_returns_sign_error_for_no_key
3334
+ -----------------------------------------------
3335
+  (0.0ms) rollback transaction
3336
+  (0.1ms) begin transaction
3337
+ ------------------------------------------------
3338
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
3339
+ ------------------------------------------------
3340
+  (0.0ms) rollback transaction
3341
+  (0.0ms) begin transaction
3342
+ ----------------------------------------------
3343
+ RubyJwtTest: test_should_encode_and_decode_RSA
3344
+ ----------------------------------------------
3345
+  (0.1ms) rollback transaction
3346
+  (0.1ms) begin transaction
3347
+ ----------------------------------------------------------
3348
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
3349
+ ----------------------------------------------------------
3350
+  (0.0ms) rollback transaction
3351
+  (0.0ms) begin transaction
3352
+ -----------------------------------------------
3353
+ RubyJwtTest: test_should_encode_and_decode_none
3354
+ -----------------------------------------------
3355
+  (0.0ms) rollback transaction
3356
+  (0.1ms) begin transaction
3357
+ -----------------------------------------------------
3358
+ RubyJwtTest: test_decodes_and_verifies_existing_token
3359
+ -----------------------------------------------------
3360
+  (0.0ms) rollback transaction
3361
+  (0.0ms) begin transaction
3362
+ ---------------------------------------------------------
3363
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
3364
+ ---------------------------------------------------------
3365
+  (0.0ms) rollback transaction
3366
+  (0.0ms) begin transaction
3367
+ ---------------------------------------------
3368
+ RubyJwtTest: test_returns_false_if_before_nbf
3369
+ ---------------------------------------------
3370
+  (0.0ms) rollback transaction
3371
+  (0.0ms) begin transaction
3372
+ ------------------------------------------
3373
+ RubyJwtTest: test_returns_false_if_expired
3374
+ ------------------------------------------
3375
+  (0.0ms) rollback transaction
3376
+  (0.1ms) begin transaction
3377
+ ----------------------------------------------------
3378
+ RubyJwtTest: test_returns_false_if_invalid_signature
3379
+ ----------------------------------------------------
3380
+  (0.0ms) rollback transaction
3381
+  (0.0ms) begin transaction
3382
+ -------------------------------------------------
3383
+ RubyJwtTest: test_returns_false_if_wrong_audience
3384
+ -------------------------------------------------
3385
+  (0.0ms) rollback transaction
3386
+  (0.0ms) begin transaction
3387
+ -----------------------------------------------
3388
+ RubyJwtTest: test_returns_false_if_wrong_issuer
3389
+ -----------------------------------------------
3390
+  (0.1ms) rollback transaction
3391
+  (0.0ms) begin transaction
3392
+ -------------------------------------------------------------------------
3393
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
3394
+ -------------------------------------------------------------------------
3395
+  (0.0ms) rollback transaction
3396
+  (0.0ms) begin transaction
3397
+ -----------------------------------------------
3398
+ RubyJwtTest: test_returns_sign_error_for_no_key
3399
+ -----------------------------------------------
3400
+  (0.0ms) rollback transaction
3401
+  (0.0ms) begin transaction
3402
+ ------------------------------------------------
3403
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
3404
+ ------------------------------------------------
3405
+  (0.0ms) rollback transaction
3406
+  (0.0ms) begin transaction
3407
+ ----------------------------------------------
3408
+ RubyJwtTest: test_should_encode_and_decode_RSA
3409
+ ----------------------------------------------
3410
+  (0.0ms) rollback transaction
3411
+  (0.0ms) begin transaction
3412
+ ----------------------------------------------------------
3413
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
3414
+ ----------------------------------------------------------
3415
+  (0.0ms) rollback transaction
3416
+  (0.0ms) begin transaction
3417
+ -----------------------------------------------
3418
+ RubyJwtTest: test_should_encode_and_decode_none
3419
+ -----------------------------------------------
3420
+  (0.0ms) rollback transaction
3421
+  (0.1ms) begin transaction
3422
+ -----------------------------------------------------
3423
+ RubyJwtTest: test_decodes_and_verifies_existing_token
3424
+ -----------------------------------------------------
3425
+  (0.0ms) rollback transaction
3426
+  (0.0ms) begin transaction
3427
+ ---------------------------------------------------------
3428
+ RubyJwtTest: test_returns_decode_error_for_invalid_base64
3429
+ ---------------------------------------------------------
3430
+  (0.0ms) rollback transaction
3431
+  (0.0ms) begin transaction
3432
+ ---------------------------------------------
3433
+ RubyJwtTest: test_returns_false_if_before_nbf
3434
+ ---------------------------------------------
3435
+  (0.0ms) rollback transaction
3436
+  (0.0ms) begin transaction
3437
+ ------------------------------------------
3438
+ RubyJwtTest: test_returns_false_if_expired
3439
+ ------------------------------------------
3440
+  (0.0ms) rollback transaction
3441
+  (0.0ms) begin transaction
3442
+ ----------------------------------------------------
3443
+ RubyJwtTest: test_returns_false_if_invalid_signature
3444
+ ----------------------------------------------------
3445
+  (0.0ms) rollback transaction
3446
+  (0.0ms) begin transaction
3447
+ -------------------------------------------------
3448
+ RubyJwtTest: test_returns_false_if_wrong_audience
3449
+ -------------------------------------------------
3450
+  (0.0ms) rollback transaction
3451
+  (0.0ms) begin transaction
3452
+ -----------------------------------------------
3453
+ RubyJwtTest: test_returns_false_if_wrong_issuer
3454
+ -----------------------------------------------
3455
+  (0.0ms) rollback transaction
3456
+  (0.0ms) begin transaction
3457
+ -------------------------------------------------------------------------
3458
+ RubyJwtTest: test_returns_not_implemented_error_for_unsupported_algorithm
3459
+ -------------------------------------------------------------------------
3460
+  (0.0ms) rollback transaction
3461
+  (0.0ms) begin transaction
3462
+ -----------------------------------------------
3463
+ RubyJwtTest: test_returns_sign_error_for_no_key
3464
+ -----------------------------------------------
3465
+  (0.0ms) rollback transaction
3466
+  (0.0ms) begin transaction
3467
+ ------------------------------------------------
3468
+ RubyJwtTest: test_should_encode_and_decode_ECDSA
3469
+ ------------------------------------------------
3470
+  (0.0ms) rollback transaction
3471
+  (0.0ms) begin transaction
3472
+ ----------------------------------------------
3473
+ RubyJwtTest: test_should_encode_and_decode_RSA
3474
+ ----------------------------------------------
3475
+  (0.0ms) rollback transaction
3476
+  (0.0ms) begin transaction
3477
+ ----------------------------------------------------------
3478
+ RubyJwtTest: test_should_encode_and_decode_and_verify_hmac
3479
+ ----------------------------------------------------------
3480
+  (0.0ms) rollback transaction
3481
+  (0.1ms) begin transaction
3482
+ -----------------------------------------------
3483
+ RubyJwtTest: test_should_encode_and_decode_none
3484
+ -----------------------------------------------
3485
+  (0.1ms) rollback transaction
@@ -58,6 +58,13 @@ class RubyJwtTest < ActiveSupport::TestCase
58
58
  assert_equal(false, verified_jwt.success) and assert_equal("JWT is expired.",verified_jwt.message)
59
59
  end
60
60
 
61
+ test "returns false if before nbf" do
62
+ @payload_options[:nbf] = 50
63
+ jwt = JWT.sign(@payload,@secret,@payload_options,@header)
64
+ verified_jwt = JWT.verify(jwt,@secret,@payload_options)
65
+ assert_equal(false, verified_jwt.success) and assert_equal("JWT nbf has not passed yet.",verified_jwt.message)
66
+ end
67
+
61
68
  test "returns false if wrong audience" do
62
69
  jwt = JWT.sign(@payload,@secret,@payload_options,@header)
63
70
  verified_jwt = JWT.verify(jwt,@secret,{:aud => "not_your_app"})
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_jwt
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.6
4
+ version: 1.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Weston
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-09-15 00:00:00.000000000 Z
11
+ date: 2014-09-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails