redis_web_manager 0.2.1 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +3 -3
- data/README.md +45 -3
- data/app/controllers/redis_web_manager/application_controller.rb +24 -4
- data/app/views/redis_web_manager/shared/_header.html.erb +15 -2
- data/config/routes.rb +22 -16
- data/lib/redis_web_manager.rb +10 -5
- data/lib/redis_web_manager/base.rb +11 -1
- data/lib/redis_web_manager/data.rb +2 -2
- data/lib/redis_web_manager/version.rb +1 -1
- data/spec/controllers/redis_web_manager/actions_controller_spec.rb +7 -3
- data/spec/controllers/redis_web_manager/clients_controller_spec.rb +5 -1
- data/spec/controllers/redis_web_manager/configuration_controller_spec.rb +5 -1
- data/spec/controllers/redis_web_manager/dashboard_controller_spec.rb +5 -1
- data/spec/controllers/redis_web_manager/information_controller_spec.rb +5 -1
- data/spec/controllers/redis_web_manager/keys_controller_spec.rb +14 -10
- data/spec/dummy/log/development.log +538 -3066
- data/spec/dummy/log/test.log +2631 -1786
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/0a/0aw6oxsZZHXRv9irvErtzrc_ISsZvGHxqPbzIQiR31M.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/0e/0e2y-7a6bH7Tw30oO9TFTatErL6MewQs80X5zdd5KPw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/1K/1KkFYO18z8udZMLFnNyQDVwkaCWRN-yt__HsOGzLpJM.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{4K/4Kco1idBWOkgNCOBZE_yyc88yG2IgHTmnk_wvEaFaZw.cache → 1Q/1QakPDiFP4ucN7fGVPSaT9R8eHeTMqMeiXRTmn8WP4o.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{ap/apDnMcs4GyqtxhfB71Q4EdWGKhNUdQvc5TBe6GF9O8g.cache → 1j/1j2dk5NLOv4uoEWkoyHD1cJCPV67PxRGiIZUpBp-Hhw.cache} +1 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{YU/YUmgzWZ4uIhet0IwYz5GSSLLaGIuTxUY7RmZxoMwsYw.cache → 26/26EGEYTGUh5NaBGmficD_Ar4JmcW1fRQUlmXrWT6_tE.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/2H/2HKvmbKuM6JpieSVlHD6oQGRdbFD8YL1pCkmuPA2DuI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/2X/2XnCrPt322k_zgI3_Qg2FQgCL-ro3XPJe72i7zWV7-M.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/2X/2xg9nUhfCssWmUSFC2iaFrNLchfgzOqVyI_eGZ3EGeE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/2p/2pqPmpwfDTAd3zRGf74h6eciy-N7t9NdHSPCYzXpRyg.cache +2 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/2z/2zoGNgPFAbAhorIZhlgp-Q2PGdCqKoJd_bguujVJ2kI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/3H/3Hoa8GUWEvIdGrFe-J4mbPk2FeQs7Y9FXdBY7998rxI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/3H/3h2XZeUckVtdTxGXcYToMMRG7WYVf3ohzlL-UnD1AV4.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{y1/y1EydlWIWkAjJrdH1mYroCE-szRCxGpaWDZ1ccoALQ4.cache → 3R/3R08ZXK2F2C_rdXIKSvYzfWF8VoGPHimZ2r8Hnu8oUk.cache} +1 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/3n/3n1FzZg5E87HwfCBfXDl6TD0SBeTrEo9PWB195HOhFI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/3n/3nddjzC8vFFL8XE_Yyc0H0STZ0R9_gDNBHeUqAl9Ggg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/4K/4KH-o07t6qWVt-cBix593oKV0s_SAJc-EyeLvEEpLVU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Hz/HzouVfzgIpd8JfYS_QHN6hKmTvnS0Mck10aUVl2saxc.cache → 4j/4jtp--ANTmDo8NXQ8Lpo7Ztjf-jpAnOv4vBNYBDn-yA.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/55/556OjFXhI4WOeeocSCY32PZvySt1TppbmgKkOz1PX6M.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/5H/5HlLU1XycJcfWfgtigt4I2NhgyMDtKf9Ev1fjv5HL_g.cache +5 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/5H/5Husy6C3Irn_gX3-inCinifg6BZDq13dfrKk1NZ1-jA.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/5t/5tkglFVpxupKhTlk6ChkL3jBoEAsOa_58HtfBwjJKt4.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/6S/6Sz8jYiJxqIdf2IeIWpw9usDCMzMM5fH0h_L0wXCqZg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/6U/6UJPdMB0PkxRKKttVHS3ukNocIugTXotgcPlPdavppc.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/6d/6dttoh65t2AWTetN3pvAZ8X00Jew-_lDmhOx4Skzeww.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/75/75XUSY6S-p5vYslHZ7topSxMKJnDf8u8qsetOd5xjeQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/79/792QG2P0RMXbvVG9nxMebrAJAwpxxQ55ITsH45JMGa8.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{u-/u-RWyk7bOAGZ3ZpDJQfi7jiu-056lBiZsWR1wwCbdqQ.cache → 7E/7Ezt2q1eyEaUFmU_aLXInCAE7kFgnW4bL_1J6nQe6BU.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/7E/7eeWH_tKhBN_yWZrAHsFb1kpc8XdDdfr1FUc5rQNzjo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/7N/7N35-kxELkO0IpGADrsrzucmTYcjzyW0qgonAMqt4w0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/7U/7UzAN8n-sDK2muO7Ho65nIaJnAi3pyna-J5ry6Cb-2w.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{7n/7nlCmB957JDuPm041xhHVE5xlZtvsQ4bNWFlqoB63sA.cache → 7a/7a_GgZVfwULAO5yDXjPyFxFZtlObioq7e2jgttgILl4.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/7l/7lJTydFY8VV1vIr-HJtpxW499wAIvakS8A5Y1krZ6Mo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/7s/7s6K1aZ2cSkIbdeaXVyvll09iEOFnr6c1OTL1OUFo4A.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/7y/7yq_7g2HWS619m5C7NSqXALMTkhRV-wfiHjLNaqAwOo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/7z/7z6-SVvNX8pziIR5sBQ99HlPrjZFRwI3fukGyPPDh4A.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8-/8-us4hG_5CbPayEBNIj_kOCK4Xo5rewFcVqyBh_AB4g.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8D/8DRC5udTjG9kiHhIQRhD3LXDqVGGVtnUkZcwZo5q7A0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8D/8Db7v2LyaS8j_1h5J-88VbqJGWb6xIIPwaA2LT22BqE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8H/8H3hp7rB-XjV_XnB5fPjsJFoQA_C5szYDIXC9bMn3sQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8J/8J6xaH6EOaMna8JE_L7M2eZY62PKiO9_Dp3sq1mCCtU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8U/8UDIUHOUPcLLWCXzn1Wwx1s6xwiASo4c38wGFn047vI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{-T/-T_9QKUoW8S5CVhV9_z4cTTs2zhRBKmBPQx_cWUhHmg.cache → 8Z/8ZjB748d8WfABez-Mo5fRZ6RoDa8wPR-UfnCCZcD6Yg.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8n/8niv9HY2q1ipKvhUIOMA1t-vvVqEk5GTS2ECOwiFpgc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8p/8pF1xUEx7f1V9QrZQS27Qm_T3eD4X_Gh0cO1lAy9umw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/8t/8tP_EcJofP_lFfqmxwPdpomtPzYi4SbonkR9VI5zXFc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/A2/A2UXxP-uNL5UE3shPwQzjyoo9VtDB9GikUZu3fmsL9g.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/A5/A5mMpLtnNADJBsPdI7mts1lf-M7VK0uosiEKWjicLW4.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{AL/ALq7iSkAktc89zX_es-9flQgp9uzZM70EDx1xWT6oZA.cache → AN/ANEPHdUmq_iMJZmEyF_YmQ2tAYsTIpvdfAI7npNYKUg.cache} +1 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/AW/AWGiXd1BIe4djoOUqaKBZBuV4W8iapBSkZ4B2ij9Pvs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Af/Af2bI2GkW9ZL4IzEa0mZAF3uOI4TWhJ2gH5Yy2hdK-8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ap/ApsZ2y-1yeOHocBP9qRQNjzs2MmlTT1EvsxbAL6iN5A.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Au/AuPiR8V_lV2_aEy4K_0vlhVc7_p6gtPUVsbtm8RIXio.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ax/AxPITPeLqmyNdOQJFdSP9hzX4FesnTYB7SCwkJEdsPA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/B3/B3RuxZdDDB_w45I_ljUxw-ALA8vQLEtooK8SzbrBlLs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Bi/BiUovD89hLu53MxNSwbdTtOesFCGXw_RYRA3YiQdwZY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Bi/bi61759YoHiNpL9Xmn67LEwhCy9yfIyfw-bzPdAgneA.cache +2 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{qk/qkgwc98y_xo3ymSYzKdl7XCCxzIwzswDHv4QA1WSpyI.cache → Bl/BlLjBMZMnvGjOcJ35Kx1_7PlEdHzWtJvwr9Is4bIhj8.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Bu/Bu0JyFRgF7NQnkABd8Rhq9tMtKhmvBAbDRt_pNFhJeg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Bz/Bz8sbF8dcRubSmO1mCRbQPbQliAkgFbe77MR_b12kyo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/C6/C6eAU65u_HvnkvfB9kpk9l_McaQpcPnJORTOr1LrNok.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/CR/CRjeVRLaA83ZcTe1dZ-53cwccOmAFHUCkhPXzOtqggk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/CX/CXYY5x0r8g4PYN7_D2L65hZDzgx_Vr70iGT_nIBC-U0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ca/CaPKbPNmGz9F7YCK4xrmSfNiMpeJeBEL-BoB0db-clU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Cz/Cz-E1WWnkI-B_hd9BJ2kfdbi9pxl46zFGPXSOCAy0zk.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/DI/DIJFyauoUIJhyEVqiRoxOwgqNepO3rTPLMHmJppZq4Q.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Hs/HsoLENG_18NQpV_rHDiBWOvlbvqtf61f3djlv1B5nBA.cache → Dc/Dci4pd7M8Ne_WmDT-uEbAGLllMKv9n9xFEkvxOel_6k.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Er/ErCdzLEAsiQhHgtKR6U5AyeeZ9YojMlO-gDP_Tycc18.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Fn/Fnj6VSky0lMGdJOtIkufeGRpwuXowh9A0lKwKSu93hw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Fs/FsUNX_nNrCleOvGKRhbfz8K5Wa_xpbBrtMKuX6iANzI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{H_/H_z0F1x6JPtUiC7raq0CBeFy9cPTaV0IdKh-UyMjDSw.cache → Gd/GdsO_sM_7CfY58ABSxpdwu3mz30vSgjiOegUfCK8AGs.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Gs/Gso6rVFXo5n7X-pxPZ0Ty9Gm5C0IyCJLZRGacJMYrJY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Gz/GzcSE25ZCEQWg8XviUa9_XTLIPABbfIldo_A4eV7cPo.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/HO/HOdIEH5gx4vI3aRATmKr_75TJJREk64plCAIesEorDk.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/HT/HT_-2705P2jdZ8j1hpBfFrKEgUssIxGaKBJ58gAJSkw.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/HU/HUuLDCf-4aeMxUF7Lp4LUPz0K51O36G5Vo1dz8FpCS4.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ig/Igib235Bl1zJNkulLvK6o6zZDSXmjYQX7vHPTjyyZ_k.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ix/Ix1Ve0rEgPj7S2u0WPAZijyNKPh0Go_K6Ahn9nGpSUY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/J0/J0dQ2KZ6nkWhqYyj1_9bfroshiYR8Go3O4_NqIUSJe0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/JK/JK-jHrHOe1VwQjWAIDplEh5j5qZGHDHtaoLovl6CSmw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/JQ/JQDBl5fsVsQc49SeauaBMIoULYEFVSdtUD64sZ4rW4Q.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/JU/JUfw0PqMio6AqvzfRU601UBm09Ck7GaaY_Bk7z9axfo.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/JV/JVfgqwR_XeM_pzFFL7REiYD-0U485LOL0pdeiKHApXU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{5g/5gQ_cZAnDfeMuoyRucPFD1LmTlQEOd8KYx3FFQoSgAs.cache → JW/JW1LmALV_FHPRJqy_BOEIMvU-UTDQgChuUfhLwZwIFU.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/K3/K37xAqj8CYDbzGf7zxAF-76eu9TA1rj2togziWfp72w.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/KE/KEkmrkOYUdoWuuAKnw29ezV5wmIG7OCewWZGUWt302Q.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Bm/BmGivS77bA1oOgqlPYGJUFtrs6CkHXI68h16dsJpzRo.cache → KZ/KZwmLpfp68LockSXrdgJ67Zu5YuJEVgg6PFiiTazncI.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ki/Kimsq_-4BdYO_WDDA14GnN5NNUEGeR23HCj1dbhfu3k.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/L1/L1beA4loiQpv1E7PajXHLLKrWpc7UI-k0Jcc9RTKuN8.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/LD/LDvhAhaT5J54nhzqiw9QMOCnJI6WkwxwZmXRbBJ1Frc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/LH/LHuJE7upKlJqJMfeHQYk-N_PWdaP6t5YiDt1Rmen_es.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/LR/LR8ErVOmWASKjBxQFVDu1m1Lh-Wh_0XO0JVWODDCvJU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{pm/pmjkGsgqbSLNlQVCehba1fMHSlgTy-JbJBDNilrULa0.cache → La/La5GSEJ7b3RDmRaCAWHWz-XSWL4Sr8b9FNNMFhLay_s.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/M3/M3li6RZ_Oh8yVoVROWio3Yv4aX4gEy4tcz6P5h4FozA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Mn/MnyCQfOkO-txbPYjTz8HxGXxggC1559dysKEGSpr-v8.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/N2/N2lJ85B2FacgHQC8p5uI0ak6Vpt8erD-xz6Atvl3i1c.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/NN/NNv--2-uTUVO5NAbRv9-1mRj626dcF4YA1d1Zbs4QNU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/NV/NV2U-nbRiTlsH3mhHp2qBCryTKgG1iOPWXi-sQYy7uQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/O6/O6tTsLZQz5_27BX0Qp6br7hmcT4ylY2MfdhjtX4g4vM.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/OG/OGDnFnjDQJU_F4HYhGk6mNC57s4LZmF1ptn2MJhRRUU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Xp/XpkxNORvH4VjCp-UKZT7EihG7YaG1ZbVktpOzJFoHHo.cache → OS/OSgMoaBS2oJtIcrWKUAIae2hVrPp02lQDPBfRVnNdV8.cache} +1 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/PB/PBGAFSkzGR9UlKP5wmfPRzS1vcdxK5m5qNCQec2NFx8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/PI/PIiZIXdOjusbDYQKIkTyUJKCKZjM5PTso3ZK0YfWYmc.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/PN/PNDD04IOoO4rC-8UXAQMqpSgM2uALVrl3bC4D4FxAWY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Pc/PchmBVX0WR55SOVqMcyCU-rxLpoCOVyC4fXV8g7eg5M.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Pj/Pj_L1z_uftZZTbIFd-50Z7ZelnhII1734VRKB8eycUc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Pt/Pt0RbkWcwbZk9xo0VlbTnUTd6uAiCeJoiHPEZSDx8w4.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/QB/QBOOCATZcB3L2bMKl8Ib4x0j0vBdTTJcbvpWDi41WVw.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/QD/QDP4gz3hHQMhqTDRYmb3VIiU6eXCbtxkAAmeyCSLTP8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/R1/R1590cqOCHN0XtbO4r6-dAeISjdEo5UlQmbjsKNj37w.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{_8/_8eiro2QHZnJcCcSUICXsOAA7wiXXOunHxt9UpchWQQ.cache → R2/R2zEYtN3pu_VMbXdRbpxrNPmo_jpd7xgL-0HavYQPtQ.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/RT/RTV9LjQIoARSCFMtpsgmZ0Csa5870Xe_7YTQbFYsrMQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Rl/RlS7HDF_fLI1B2gLvB7lIVC_S90uzjEI_f6a8MMH8SU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ry/RyerqfB9MWC6t53Fw2i-P2kpmdh-UIuUEeGMOSyMpjM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/SF/SF2OybN55hoZK2visMkQ3vdigCqLIGYE1w3w5c7-6E0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Sg/SgsZmlmduLdGbZpKj_IouBPKLhDVN8C5X2q4DPgiUGk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Td/TdAO3S3_ujavljt1S8e8mtOkxvdMjwwgkTwNQGXjYK4.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ud/UdBJtOdz1YJ0jsvBQGIW-p1ldIzGHuGixc_NnvZJOWA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/VF/VF6hN-8vXKq-wdwTJHm-DUX0iROMA_9vCCIySALtcts.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Vc/Vcp1acYz4Os7oQN_VDUl4Y6eaTw6vpDCJDaH7fG6xko.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Vc/VcvRYUXV7rJy7O2MsLxcFwZtRaJzupZ3Xm5CKdR3BM4.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{DU/DUSNxOUC3DSHJUAoDZRVCN3CBemXHA1f-KwMnUeiREc.cache → Vw/VwMndrSacgaRoc23QWL9TG0tBodUHPr-aAHhbrIcS9c.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/W6/W64hnVqpv7YHpzcgT4TAmYh4WjzlrxdhYvH6TBJUFdM.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{gL/gLNlFVqZKtNiRsw7YYLovHJqj9Hw7aRltTiaMbDFz4E.cache → WE/WEGC7UEPa9qkEG09abPEbSB0skzV_sKqdCawEvolEm4.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/WF/WF1AtWbBbfgmahNyXbUUY5gyNp-hTVAFfQPYUvNGXpE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/WF/WFuGP81Jbd-Zyt10ISBx2cx4UfCKXZGMcHieQH8Td2Y.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{ZK/ZKVfTM4gfFVS0ODUsfXeBiRFNlBZNlx83DaIvZD5u9E.cache → WZ/WZoWADpkZNLa-bf6uZUF9b4x4yoPGcXxWPVRzS9FynQ.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Wa/WaIs0Av9vwoKw63v_UuddW1bUqMIZt0HRwq0YLTWBd0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/XC/XCDoi2zXmaLy0fk9eLpujt4M8q12Qkb67lJBBwklb9A.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{nN/nNUeEJakV7XN3p58IMUky_YcMqNH-Isyxz92S4g-r4w.cache → Xb/XbPh1r579sgttgyUKnCufClgQMNCkzh0pwXAztbpQ8M.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Xt/XtbURqHlbpcqe-qOLKuS08rComMTu34WiZHayyCcikI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/YE/YELZ9n3HnPoEhyES3yqiiAYpInO8MoEUscGVjrnqOtM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/YP/YPHZp_c3AVq1vvmAUc2pqV_bB7VNoJ4terGLvuFr05w.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Ks/KsEIC10hBc54WdJSuBqpP3SS0qfQ2oovcTo_s2rw5Ww.cache → Yn/Yn9xcIZg-fdpF0eznmxxnqg4RmKs_D5WZxuSD1ZSsr8.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ZG/ZGL8lLx8ywKvplkr-B70M_fUldG3VDWylMuzwgScoag.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ZR/ZRM_qDJvvnZJ1HCTTs3qqTC8SsAJ2y7yFlZ7k_wKvik.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Zl/Zl9oO1-nicVi1uOcsYletloRhaxpolWFtOMOX6XLR5U.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/_6/_6VbpFfsrzGyzVmfeIDkhDXgqJoDdwKCDjsIfbXAV6c.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/_G/_GdGK8aekIx17-vYlVAfliGbyXCyudXDjiOH88V6044.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/_U/_U8wgzUB9DpOa-5dnU2SQqXE1q1qXwhWQc2GEyDQ3YI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/_W/_Wc9qlowwcFY34rQRWTfXzdaEvkInNTc4Dr8uONVshs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{qW/qWgD7sgETd_CJaDTE12RCSu31lz4jlv5yZYbwUrGWG4.cache → _r/_rcIzIkfcfSrmnZ_IGlIugRnvBf46h5R-7w7IGf4Guk.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/aa/aarcHudFs_Dh5u2FEa5-Hoc4L5BVbF-6mGJnAh0OOeY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Lv/Lvh_nIQm8e4PQ4smcyfsUS6r2sg8gGuxwlF9OXOnslU.cache → ar/arWeA6NSVcSq1hmCOmky3RA6jSD6d5o4HJhIRAelzlk.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/b7/b73y1Q1Mg22vOM0Zsm2SSnV_x3upeYjE69w_FUNkdSQ.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/b_/b_umTeSMdHq21vjHnNDfQ4uVxQN7YFX-qFKn6XFEzE8.cache +2 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/bn/bnWKda0-TI8mLac-rrKVkGVIC9jtxTr5XdIPx0bJPJo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/cS/cSrunJsasyS1KvN_vpz9maV7Qdy_V6rFkIGCNKH5O-Q.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{qN/qNm5v4k4Q2omYt83V37WeTUd0csuCJ9FFYfTvUjWITE.cache → dW/dWboBq4nJC3h3BeMT5SgcFroXnz9sQP2hQoUbhfPC98.cache} +1 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/dq/dqdAHCkzh6ai57glHA3MX4aTgCiHQ4--Wzm63onHg6w.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/e-/e-P0mJUIOdDXL2VYcgmwvBiNHgUb_vEYyv9f0LI_QfU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{O8/O8QovN5oaIJtcVNqRYU4zdOWTyvg8vxndkgSo9k8r1w.cache → e1/e1fRFw23w4LTZ978mciRelNPWIO0yDVY0yCbPVOYZX0.cache} +1 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/eH/eHQij4w94_CE79cLSoU0BZ64J4MrtoRbsuXzZdK_R-g.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/eT/eTqa-gsuM6ROd8QcDSDgzlDEUfsFSURdOb8rNjcBrRc.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/eZ/eZy5PkHIejHwwJ5_Cohr9FPIUe_W_FMpmYo3sBFN_MM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/eg/egAVgSMe55TYbcPAkHCWXHsS6YWENTIwwYpxjaiNzSo.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ey/eyzdrv5PhSAdiqgQl0jOfppCaGYquSGZ5MdwCrySbAU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/fM/fM04dlec2zGbYdRU89lQDcHwxnC-ngMKfj4nyYk2YU0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/fQ/fQwP9Vk_ZXeOttVX93C2GUlGVsnjhd5Qov6uLpQ6BeY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/fT/fTQQH1rmnzRj3TDsOasouG9Qrauuq2yxAq89XTRwrkU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/fY/fYBJu5w2GbgRsdVTnIHy1J4kIXr4OlbSeQTtVnF_Dhw.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/f_/f_MsTjoMC8mtvRW1b3M6l-T657YhuE5UGdHUW7d1tPU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/fw/fwr4OHjn77ISYzTosCUPd9gAVLkvrM47olieo7Fm2oA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ga/gacIb14ShUszP1f64zb5UR92z8jLIqCYezjNbo9NTm8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/h6/h6Y9rjzrej2aPHFLz1fyatbBLInxdBGK1dvHPvNzN5M.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/hV/HvIrQib2UHjjkPUp_jn0ExwaYfCVSRA7p7LodY9CKXU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/hV/hVYwR882xvionpz0lD9LaF4to-rb8xn7WUEHHLVc7M8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/h_/h_gP27Qi2DF_2ojTO6YxfUp-sfbzSog0WfTusHW-sFs.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/hh/hh9_HyTE7VFvH0aqOWejpAjTMf0M5h827G2ITkfY1Fk.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{F7/F7IkRDFFo8cOET3vULDBLLacn5ihlchT2DZQNxncS4U.cache → hk/hkVmIkeB7pyI5zadCxIa9ewhTnzNBe-9rkypCdZYsW4.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/hq/hqNSrfN498sbMdq1AkL-1kGKWFLd7Mhm7fgGU-_V-U8.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/i1/i1t9pJxEMoWBvXzmZ4GrfHgK-HPhUBlZiTQ6-XdBvvY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/iA/iAtmKxYS3G3xxFnoq8zKShEjryh4gr9hT6jLEWD3F_8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/iN/iNqvaze5MchM3uwcjK5PIn3ZEfC6YumNpxK_l4k9j0I.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/iW/iWInzJYtvZgb8RL3TpLikGtbdpPG762lFDiq5MeLzAs.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ip/ipqYg9-gFBJGeLmnVMoBJUeuVdodylx8NKkohv6UTBA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/iy/iyJjpcbRNbVNKVQY_ilsn2QLIDwPFT_VzzbmAcGcQyE.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/je/jEY1_Ja12f0j5MlctJL8I8I4MAtnbig_Nuzpy2S03Vw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/je/jeTqB-EpQJ6XeRKRDtKI7WzBLFHF_Xj5prMk1uk_8aE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/jo/joAnSkwSb88-8ggnduTv2_ZOUHBJhCuy3xSKZ9SaECw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{m4/m4Jwf1i5VG-EHPtNhI8Yoi_z6yASkrjhcao_49rtV6Q.cache → kB/Kb1F1CH5FzDifllrWhl5DIlCL5Lf4gQ0FVKJG8xzJAA.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{im/imN-p0bmcsuXhuS82MogWf4MJS8jhawj1tyj87Wh7w4.cache → kB/kB-VpOUPmfE1eMs46eZ5zEeNQ4j6uO6PWqgbtUsAf94.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/kU/kUcCGYVAtbvf-zOn91r5ESgM-55KQ1q0c6s5-RRMpfQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/kk/kk1ok33rX_D4vmhH4b5d5ISIxyiyDgEA91zKzSfJHK8.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/kr/krGzN8SrJ50uurn1vYyrf9JXNsYGl5ss8OqQj4Ba7xY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/lJ/lJpAD9g_PWVbtoOtkBjm3xhptNhBKhdPqrj6sUEzqqo.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/lL/lL28OuCDnz731Jfx-mIbN-2brsXERyfj38LeFEXlq88.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/mU/MUGyvPRkoBl2NvdgCyy4fYnWfh7hYwIpEZ6x3RCpnXI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/mU/mU7SZRZaFsHI95oabaFBdWLw9tUlA_dR4rpgUk5HXmU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/mq/mqtdAB_9wuZfDqs7kN71ESasZYD57X0jQ3wKvM1oUog.cache +2 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/n-/n-UngwWa4FBotfMh_OimPaDHOqPW1HaiQmvbWe87A9I.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/nU/nUDBS2C4evL6NpRtT0fhGGkCoYlsq9OUuSHr0OXkR40.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/n_/n_xYqQYhwEMQknb3jFQnjlxxBE9TzMNHCdJ-bEyZFIw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ne/nevnBndTrvcsUn05zNNw_iKkR49fk7rL846-hLXzLKA.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/nj/njtfz-zfIaNz7b0H3Ov2PIQegunwQLIkJ-vXTcTInHg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/nx/nxTv3sKVUQZADJyM3dPaVmUA78MIsMLD_K279yN_GsI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/o0/o0EgzHxCStDCgElNrEszvetCP_eBTwXXZukTCkPWY_8.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/oE/oEjOSlhvUB-Jn6m5vkLu_rKDkOA68TUT4clSTKuJtZ0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/oF/oF8zthjRwHO21y5MBnNAnn3_dFAOoPJs05S7VByNjZc.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/oM/oMjTf5uzoY3MFr-17etg0pjCu_THEdOGPpfF1HJs5oE.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ol/olwb2ysAE13eX5jiUB-vpTovUYQlZ_G9AyI845BLAgk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{d4/d4pAkZjiFS8y6JEOYaSOmIeq2WXZL9uTEoAnJ_MAQ5g.cache → p2/p2MZN5-6xQm9q9y7DdV0v0LIHUT4y_BUtKic0Fde7us.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/p6/p6vCExeLAgiNzDd5wn6oGm7RHzdINtY-iQmSQENxhSE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{fi/fih3ll9ThxxIBvl5TCzOgXIK_r9koq915TILOZVYs7Q.cache → p9/P9FnEn-i_KNgumeC3cLjYOshw2p_o8AyHKJWChTZjLI.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/p9/p9_yeAgrhxQwx7MVByVX9wM72t322_8Lfoy0u8X8YQE.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{L9/L94C_YNuGgZnHuFPbrhVxbFGELb9EJnHRPpyGA1kkR4.cache → pF/pF-1Zv1PgDmiYVLDB2thWJcRGMIGV4qly1fVo-PQvUM.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/pG/pGvMcIrGB372V7gRcKE9mK3h_oIjGgh_1_9qQfN8n_w.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/py/pY920Z5O-nfQPiPIUWA7-6ApCZVbaFvpzyTQTsEbLsw.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/py/py3jIufVWsxcCQaYcgB1Lwdko7ZkpC3n97h5b46VuvQ.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/pz/pzZkbfvO4y9l_IM_juA3pzNzq9C1B0mk_syazAVeHQg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Na/NaeYk2LRfou0RaBOcBr3VGORx5HcB5yuOBr_Qzm1TYo.cache → qK/qKHCNocNC6XYLXA1UyMf0WRcEc2TeTcjuBaefwfKMcI.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/rG/rGIO4f4NG6xEQnYBGPbpF4n8yk1W7ZfO3hqa0dEHmLo.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/rH/rHs612ez3doXZ8WBDeNRRSUtfuvTG0Ho6D6GwgZv5tw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/rU/rUlNmhHpp4y6Jhf8Q_ha_JsQdshzczk5bUGup85zpTI.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{5g/5GdeGYB1uP6c5I5Kstk9gTvdg6cyewEv-4JmbqPgEtA.cache → rd/rdIaI3rkF0lnWrNmvReJijv7Q-xSSln0PLqtrpylfuE.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/rp/RpzDLhwRegZdJf4npP6YNfZxC5ambzjG7cRUuwgMxJM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/rp/rpQI_nY_vdDBc8k6PBMcou8Ri8cakZEv7eM0PUD9Ubg.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/sW/sWOWhjlR2D9AbeGciPX1Y-uy8l9utiXQNJ6MtXCW_nk.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/sY/sYegBCVPlqCh6X_fm0rbqk3nTllYY4xblUQZ0fA7N0o.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/sZ/sZKaOceUIVFSRRWv0yXdGUSxIa142uIq6jaOVQW590I.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/t0/t0JH-FWfseN5ZjDwQ45g2sPBnfhlgqe9GDPlx1sK0Xo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/t9/t9Ar4uruNGmfmlCDLByCjzuwQXj-76uX9i-ScfVVkWA.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/tK/tKzz1mNPhHtxW4dy6AqOSt7ifov9v4ykwLlbpxHU-iA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/tX/tXb0SQhFH0v0tI7woXm9Ct9V416Thm3aj3MmAI3NW9w.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/tX/txzK5kQL3q0A7oulxglv8jH09EiLPkyF-9FyRPYWYG0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/tp/tpZaIW6Ih1pnXctwZaLgpCwsJ4kY7M9UJHGmLi7hinQ.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ty/ty9Fu-9m1W-mmDDLM0QsKGpuFqj-QY9_qIkWSklZNbU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/tz/TZ-Py_VxEDGM2E03VH3flvYhVfUW6xVaeXjbwef8_0U.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Sj/SjeOAKHEorC6kpUFQfWnACUZJ9YDF1LnzhEbKRC4waE.cache → tz/tZou1Stdl7keg6OD4kYBNMEyQgYJ1pBlUPywrwbJZjc.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/tz/tz3He_xX-9OLyeJgaPEOMHZIz5_QCKj3qJTCX-t_9u0.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/uQ/uQKlqxcWVQaJJcRUhu9S_eqtrGvn66HgWFnk8s1UOQU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/uz/uzBrkGXl4bwF72GZz5dHl_Nrzd5irAaXYY_koga2qco.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/v8/v80GQvmTpHABcUPWlvBv_BjJ0qJIGbSsYIE89C4GWVk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/vN/vNbbvokITS4NhARer-ZfjY2kHXWKaNXiNsgzZqtTTyw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/v_/v_ZnrKtSkRevki3NTHMv4zRwFLilNMtCCcDcGU6CdfQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/wD/wDH0ecNRxPSq3AZ4E7cFR3toUD-Sh__LdDzO7P4-VWM.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/wG/wG00ISKls9xr1NkFPsTmgI0aTtBEdntAP825VBsph5c.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/wH/wHciDZObgJWKee0096pyHijl35RqoM0rNZpTeflggqo.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ww/wwDW3gmSd4DjB0nJTFJmqcEySfCpMb3PI3i8ELK8vS4.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/xG/xGJAVHPpwrvc1Rdz-uTHlTh1AIHVxavAbTdSegFpzPI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/xO/xOOoYH5qILp7ImsqdRA-117lB_i97ItWxkO4asOibbk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/xi/xik1Bc0dN3JJCURgegN-NcdT_XSk3pH3mN1I-qPC5sU.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/yF/yFipXLZ9XUoh48oqvsSyVxhQ5F-uLZ7nfokHXYp7G-I.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{HV/HVZV8JQY36A0PHkgtG4MrMTRG4uVurRzf9cjz1knRqo.cache → yo/yoCsC0HedTan3mPwvMWfQamV8uyncrkKfMkorLUiwxw.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/zN/zNEwdSVT6HkEJqb4QzFcHp0Oycp_YODM9lqzLtftjhc.cache +1 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/{Pa/PaIjQjZY0mezKK66bf6YwHHo2HsJn8hoFBh3E8hmgzU.cache → zV/zVz9P9TDbL7ZJ4W_X_9a3FM4MkjuoOElnjH0wzrmcL8.cache} +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/zZ/zZpuaUWDFAy891of6fdlATwd6ub_du1TOwIzow_5r6s.cache +0 -0
- data/spec/dummy/tmp/development_secret.txt +1 -1
- data/spec/redis_web_manager_action_spec.rb +1 -1
- data/spec/redis_web_manager_connection_spec.rb +1 -1
- data/spec/redis_web_manager_data_spec.rb +1 -1
- data/spec/redis_web_manager_info_spec.rb +1 -1
- data/spec/redis_web_manager_spec.rb +15 -10
- data/spec/routing/actions_controller_spec.rb +10 -6
- data/spec/routing/clients_controller_spec.rb +6 -2
- data/spec/routing/configuration_controller_spec.rb +6 -2
- data/spec/routing/dashboard_controller_spec.rb +6 -2
- data/spec/routing/keys_controller_spec.rb +14 -10
- data/spec/spec_helper.rb +1 -1
- metadata +484 -242
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/0S/0S9S32Fw7-QdZoSmBqPHz-Z4ecN6I_L93wEVvX6HycI.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/0_/0_YBRWXH5oiyIqtDNpRTeojqfk0-wD9uIfvL4_mDDsM.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/0o/0oxmd1ppgprdBQf6YWLIpw4nyxDLdJDyuYFbN92HMmM.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/1G/1GTRfJJJtOSgIFFmCOEmRJt3JcC7Md-J9vxvsmMSI0E.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/1O/1O7yJExgkaYRAYL_RpyjqJ_3EZifQbeEsIUnEEwU9fs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/1w/1wAFs1zH2GCSsR6v9tbaLgWO4mBymE7VvHO90m8Bx0s.cache +0 -3
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/2v/2vP1z0fhL4AMdjv19xqbZYIz-pAK2TyOUJYLKDR_cto.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/6h/6hE3qxUGEMXpsdfnUdkZrPD5sGS15vhb2nQAvFYP9QY.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/7e/7eeWH_tKhBN_yWZrAHsFb1kpc8XdDdfr1FUc5rQNzjo.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/9q/9qsKfcEFPjg2iunvDTMHV3wvvTaCAxGddTXYl598SYY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/BY/BYO6tCMPJ2vgCwmidYdGBiUabMhHSmpWCuTkKw1vhds.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Cv/Cvb-GdlCzj8SzsrpKYgY3fZxNRfsuPiecPZuvmXRZXU.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/D2/D2HMvbLxK-XGS_U7UyfBz9ByPtjBrSrmZVCnsNBkOmY.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Dh/DhN8S1LwG1IgbcgsiWObB2wpcP-CUgxkKn_SePGw8AI.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Do/DoKxMir75-bMuag3jw_VVRGeVTZmgrb7QczdfNeYpP4.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/E6/E6BofV6tbfJuWElbm-212vq-nDZfAqf1I7t0Tppn1t8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/EB/EBTP_pHOp2rZkHo8UXTRTJbgRMbbWWAamL0B24og0Ao.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/EC/ECHT0u3dUQ4UxM_3yosBdMUoWyQD-rJIBC2LNM7F7mo.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ew/Ewi43qbgI3gdSD-NoHYTxLMFJApni04Z2fkRIqL-OVw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/FG/FGfuFH7Sr7ixLhhtL1lASFBVRVOOVP61TYuc_1r8a9Y.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/GB/GB-HBlwZfC_etWI2E3X9TK2rDclNEXHvlwvdLeAQ18M.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/GJ/GJZrwqwiQ6s7RzQb7OHkWZXMWjWxO2MnlEdChKzm0qQ.cache +0 -3
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/H5/H542z--rBbpI6qpJ0FFaKMW6RLpaKExY5scpOI8mnK0.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/HD/HDWwNS2WhJyMTwRMWoMB-jGhShAu9kbSgRd7bf34-B0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Hm/Hmzsu5uLrvf4bSJiRQ43H0StXA-l0CHlddJ3iffvH1w.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/IF/IFr3WF0nIRf0uhfWuLyMan7ZEk-2AeSUMYv6Xzk2gd8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/J1/J1DFrnuiOuZk9nZKBZ3QGr_uf-Ap5QBMaxsQ8pzS-Pk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Lv/lvkDqd44amTKZ1X60yERq0Dk696w2FKoixmWpbYaGdE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Mq/Mqjgap3zY1Jw-08ZQ-aYJ0zCSfnzFvtC517Ba7IUB8Q.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Nc/NcW_hUhpnz9mU2C8iZ-FAFyn9uQ1eZLt_Fin7Lkj_hc.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Nu/Nu4PWycQBuJty51RE6hMsCDxfoEK0oXiLxxMVoXrxBk.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/OU/OULQg3jL6IuFg61oaHv6llXVLd05KMJ0iwvGABNCDUc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Qs/QsbD7M0Zxweb_q3m94X_l13mJj2jOzFe6WGghZtsevk.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/RJ/RJHy20mpyfv0cgvju4KExPU2JwKYNBR54rfGcAM_Yi8.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/RR/RRWxs65mHhne0BbQ7S16DFFv2PPJScmDdwK6CiWt0Fo.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Ro/Ro_lYbjhQH_dwCkDiDYOYqViY3uTU3muXg3eNptwQOw.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Rq/RqAElyxAkwXeghaGXFrTaWJa-3TgrNUTPMqgiSGiz58.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Rw/Rwoa1O92ek_CiZeWN2fEhw5QTyjdM8gKVJbV-aQS2wc.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/SH/SHFj15T4Sc9m6rdHBzbkVr5sRZqh9c8Kb-OQoU4Vfbc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/TW/TWMHVGHDOfE2jf6BA7CFPjpZUTTh7zwEaahDcq2UqHI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/UR/URt1vfvS_-zgNoyOTXann0MEauS4KBLP_3POXLr1CJA.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Uo/Uorr-rfn1Et6lS5zxA5h-WM8Rghz1-8TBzpkuA6Sod0.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/WL/WL_gjOOD56GysPVYKQbve3ud0RflSvlQN-k15uyRsBQ.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/XM/XM6MmmhEhDrNxDxgByWwAVBAn4JxkFEavPY-zrhRLGs.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Y4/Y42Ku_X2d8w7-c4qQbO0RWqLIrF92H3bStzPu3sYGO8.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/Yz/YzXvpmE9Ka9mFgplasa5njZ1TOVbCv0ttAiBgRMsrgI.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ZJ/ZJC18DQ3P90lga7JoCFuwcAXk86XJuRY5W1rMo2adP4.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/_R/_RDkJXUh_h2bxi1GtquRZO5TV_dR2AkrbCl8LwKeYZQ.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/_u/_ua-Dwq0BYBO_XvBV8p19_NXwV1Tmbhxc26Y-zMM6e8.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/a4/a4quthUAhg89YCsP7vvEgPVUX5W2CbwMR9iaZHSVwtA.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/aM/aMyeQMup7zIZVSBWp0IibDwtHbQ5rSbds7VqfeKGLos.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/bp/bplSyZa3eMBpzHaH0r-LCL8WIrOaiGYrL8O9O6VWqRQ.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/c2/c2lm3MBo-qFmn1j8VYCj1d19RFSbWJAqwQI2gCNNW78.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/c8/c8FCa9hBajsyC1EaLREGdc8-Sbd5kc1JXFNbG-jbHlI.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/d3/d3vwj-sIPILn4SIgLivR8AO2z8XTjoGBDdQZerZamO0.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/dD/dDq6eq_dej7DSwUNGSosv2wA5k4jVt2bvg5AwmN3PGM.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/dK/dKqZfAWIrsbo7kTTnZhRLRnWwaHh3-6Sayn5C5j-Sc0.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/eJ/eJDcHiaKw-EGqAVhD7SeIvXRMInPQX9ax_StQpcMlZI.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/eu/euG-GCObIbpivXPiarOu8TNJ4UATU0C4vAnqDlYshnU.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/hI/hIC275ffXuQ09i5-MxgaxrpwFaCd7Iea-XySVQ9SCxo.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/i-/i-f6nWMFV-Kj9oCcmk0TA4C97OoS9bfuVzMD_BcPqcw.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/i0/i0lJYzjx3QAKYSr63U6q62fH13uptxw-g5o4goI9jGM.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/i6/i6UciFvZsXvpdDwsrtTO9bDaicut7WD7N7l7_kNToRM.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/iY/iYWglOhRcQsIGcDgy0lVp3OkMeBZvRLW4RrSC8YCUvg.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/jo/joqrXPTZ77Kttfg6jCLQ1AaWlrpCQhEFNrp1j5VGOZo.cache +0 -3
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/kX/kXM43j9M1Np_gBQ_JTuOQ-ouwzllb-1hdA2ZCDF9P2A.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/pW/pWTL769TgmQALSGoW0NVIUc1pnpShFziH54vgCJCfrk.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/pq/pqBoBVFoTy-MKb5DwEKPvOcCthoRX_VvLHUJGEYae_A.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/ps/psadNQUG21sv5yxMZaPoTwQag3LZoiVXlbZiOCFKf3k.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/qz/qzsc4ncJtGSRKKNmWlLrrcWHJAo6tKsLqGgfjINN5Z0.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/tB/tBQnQTdNL5rv0EjiLP-Qs8Uk_eminNHeLFqCDpL2Vvk.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/tM/tMxr0MmCgtIcTqlw0QoK1loRFOjBLU7W7oaftRCu4dA.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/u7/u734Z0S9rUqAqKA1U28bonSjr4Um60dUSViFzPMcEzE.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/vX/vXvIA0ABggiI7i_R34DuqOmusU3Tbpnj1ttEXCU7feA.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/vo/voj4ELiBu6fQQovl3Tx8xE1KOD_XXbfKFEOZ3PXLE2Q.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/vw/vwFN15yJrS0eSjeWb-8ISshgZ27sQfZenZJLQeDxskk.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/wS/wS59wgWHAsNICs7U0VxdRyupFtzOPBr_bYYMWnXLZuw.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/wS/wSwCoG0oiDRAE24bIBYszjMVcK71lTnfTdEB85icYho.cache +0 -1
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/wi/wizBtaWpz_iDHqDu9C4yv9FusCfKFIO1xIBPAx_1EEc.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/yA/yA__sMqRvEYOU_PSr1vBlb6Zzd0dDOl1TA-G-ycUTyc.cache +0 -2
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/yg/yg5i0W0skD4VlWbdTxXTrdXlY_IWMjyRWD8I654aKRU.cache +0 -0
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/z8/z8ghD_aI0C2FbDNEbfELNq6ysp1Gqp3y9GdAUNOUhI4.cache +0 -3
- data/spec/dummy/tmp/cache/assets/sprockets/v4.0.0/zL/zLenHVAlNaTa69993_FT_3LTO5U_wN0ZRxtl0xYc1YA.cache +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a2c1a155b9755c60298027f28029841cdcf6e347fb6b4be7a959c62922a5ccf6
|
4
|
+
data.tar.gz: 203f63d9ce3d1284825cc55d428bf82430076e3858078849768651b21ab99ad8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c9ba53415f30c8374fb7bbdaa2a0f3ee6437dda8ecfc7986584613b61603eb1a87bd0c742e9bfa47b524b798ec239cf524c0f0769d70af091417fd26838d892c
|
7
|
+
data.tar.gz: c224c72c7e3b3d5b006a6009de3e5ee4a2f02914da2059376a58bae3e0b1a8e112a85a74f8d6e1262abb465973c7b54161bc1f616e8fc48e8bd4201a2ea5b55e
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
redis_web_manager (0.1
|
4
|
+
redis_web_manager (0.2.1)
|
5
5
|
pagy (~> 3.7)
|
6
6
|
rails (>= 5.2, < 7)
|
7
7
|
redis (~> 4.1.0)
|
@@ -94,7 +94,7 @@ GEM
|
|
94
94
|
mini_portile2 (2.4.0)
|
95
95
|
minitest (5.14.0)
|
96
96
|
nio4r (2.5.2)
|
97
|
-
nokogiri (1.10.
|
97
|
+
nokogiri (1.10.9)
|
98
98
|
mini_portile2 (~> 2.4.0)
|
99
99
|
pagy (3.7.3)
|
100
100
|
rack (2.2.2)
|
@@ -169,7 +169,7 @@ GEM
|
|
169
169
|
websocket-driver (0.7.1)
|
170
170
|
websocket-extensions (>= 0.1.0)
|
171
171
|
websocket-extensions (0.1.4)
|
172
|
-
zeitwerk (2.
|
172
|
+
zeitwerk (2.3.0)
|
173
173
|
|
174
174
|
PLATFORMS
|
175
175
|
ruby
|
data/README.md
CHANGED
@@ -56,7 +56,10 @@ You can configure RedisWebManager:
|
|
56
56
|
# initializers/redis_web_manager.rb
|
57
57
|
|
58
58
|
RedisWebManager.configure do |config|
|
59
|
-
config.
|
59
|
+
config.redises = {
|
60
|
+
default: Redis.new(db: 1),
|
61
|
+
production: Redis.new(url: 'XXX')
|
62
|
+
} # Default { default: Redis.new } (Hash with instance(s) of Redis)
|
60
63
|
config.lifespan = 2.days # Default 15.days (Lifespan of each keys for dashboard)
|
61
64
|
config.authenticate = proc {
|
62
65
|
authenticate_or_request_with_http_basic do |username, password|
|
@@ -70,10 +73,19 @@ end
|
|
70
73
|
|
71
74
|
In order to have data on your dashboard you must collect the data like this:
|
72
75
|
```ruby
|
73
|
-
data = RedisWebManager::Data.new
|
76
|
+
data = RedisWebManager::Data.new(:default)
|
74
77
|
data.perform
|
75
78
|
```
|
76
79
|
|
80
|
+
or
|
81
|
+
|
82
|
+
```ruby
|
83
|
+
RedisWebManager.redises.keys.each do |instance|
|
84
|
+
data = RedisWebManager::Data.new(instance)
|
85
|
+
data.perform
|
86
|
+
end
|
87
|
+
```
|
88
|
+
|
77
89
|
If you are using a system to run background tasks in your application (like Sidekiq, Sucker Punch or ActiveJob), you can write your own background task to update the dashboard statistics.
|
78
90
|
|
79
91
|
Sidekiq exemple:
|
@@ -88,6 +100,21 @@ class DashboardWorker
|
|
88
100
|
end
|
89
101
|
```
|
90
102
|
|
103
|
+
or
|
104
|
+
|
105
|
+
```ruby
|
106
|
+
class DashboardWorker
|
107
|
+
include Sidekiq::Worker
|
108
|
+
|
109
|
+
def perform
|
110
|
+
RedisWebManager.redises.keys.each do |instance|
|
111
|
+
data = RedisWebManager::Data.new(instance)
|
112
|
+
data.perform
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
116
|
+
```
|
117
|
+
|
91
118
|
Sucker Punch exemple:
|
92
119
|
```ruby
|
93
120
|
class DashboardJob
|
@@ -100,11 +127,26 @@ class DashboardJob
|
|
100
127
|
end
|
101
128
|
```
|
102
129
|
|
130
|
+
or
|
131
|
+
|
132
|
+
```ruby
|
133
|
+
class DashboardJob
|
134
|
+
include SuckerPunch::Job
|
135
|
+
|
136
|
+
def perform
|
137
|
+
RedisWebManager.redises.keys.each do |instance|
|
138
|
+
data = RedisWebManager::Data.new(instance)
|
139
|
+
data.perform
|
140
|
+
end
|
141
|
+
end
|
142
|
+
end
|
143
|
+
```
|
144
|
+
|
145
|
+
|
103
146
|
|
104
147
|
|
105
148
|
## Todo
|
106
149
|
* [ ] Add graph for most used commands
|
107
|
-
* [ ] Manage multiple redis instances
|
108
150
|
* [ ] Real time chart update
|
109
151
|
* [ ] Alert system (ex: triggered when memory is peaking)
|
110
152
|
* [ ] Command line interface to manage your redis database
|
@@ -5,6 +5,9 @@ module RedisWebManager
|
|
5
5
|
protect_from_forgery with: :exception
|
6
6
|
|
7
7
|
before_action :authenticated?, if: :authenticate
|
8
|
+
before_action :valid_instance?
|
9
|
+
helper_method :redises
|
10
|
+
helper_method :instance
|
8
11
|
|
9
12
|
private
|
10
13
|
|
@@ -17,19 +20,36 @@ module RedisWebManager
|
|
17
20
|
end
|
18
21
|
|
19
22
|
def info
|
20
|
-
@info ||= RedisWebManager::Info.new
|
23
|
+
@info ||= RedisWebManager::Info.new(instance)
|
21
24
|
end
|
22
25
|
|
23
26
|
def connection
|
24
|
-
@connection ||= RedisWebManager::Connection.new
|
27
|
+
@connection ||= RedisWebManager::Connection.new(instance)
|
25
28
|
end
|
26
29
|
|
27
30
|
def action
|
28
|
-
@action ||= RedisWebManager::Action.new
|
31
|
+
@action ||= RedisWebManager::Action.new(instance)
|
29
32
|
end
|
30
33
|
|
31
34
|
def data
|
32
|
-
@data ||= RedisWebManager::Data.new
|
35
|
+
@data ||= RedisWebManager::Data.new(instance)
|
36
|
+
end
|
37
|
+
|
38
|
+
def default_url_options(options = {})
|
39
|
+
options.merge(instance: instance)
|
40
|
+
end
|
41
|
+
|
42
|
+
def valid_instance?
|
43
|
+
default_instance = redises.keys[0]
|
44
|
+
redirect_to dashboard_url(instance: default_instance) if instance.nil?
|
45
|
+
end
|
46
|
+
|
47
|
+
def instance
|
48
|
+
@instance ||= params[:instance].presence
|
49
|
+
end
|
50
|
+
|
51
|
+
def redises
|
52
|
+
@redises ||= RedisWebManager.redises
|
33
53
|
end
|
34
54
|
end
|
35
55
|
end
|
@@ -1,13 +1,26 @@
|
|
1
1
|
<nav class="navbar navbar-expand-lg navbar-light bg-light shadow-sm">
|
2
2
|
<div class="container">
|
3
|
-
<%= link_to 'Redis Web Manager',
|
3
|
+
<%= link_to 'Redis Web Manager', dashboard_path, title: 'Redis Web Manager', class: 'navbar-brand' %>
|
4
4
|
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Redis Web Manager">
|
5
5
|
<span class="navbar-toggler-icon"></span>
|
6
6
|
</button>
|
7
7
|
<div class="collapse navbar-collapse" id="navbarSupportedContent">
|
8
8
|
<ul class="navbar-nav mr-auto">
|
9
|
+
<li class="nav-item dropdown mr-3">
|
10
|
+
<a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
11
|
+
<%= instance.humanize.capitalize %>
|
12
|
+
</a>
|
13
|
+
<div class="dropdown-menu" aria-labelledby="navbarDropdown">
|
14
|
+
<% redises.each do |k, v| %>
|
15
|
+
<%= link_to v.connection[:id],
|
16
|
+
dashboard_path(instance: k),
|
17
|
+
title: k,
|
18
|
+
class: instance == k.to_s ? 'dropdown-item active' : 'dropdown-item' %>
|
19
|
+
<% end %>
|
20
|
+
</div>
|
21
|
+
</li>
|
9
22
|
<li class="nav-item">
|
10
|
-
<%= link_to 'Dashboard',
|
23
|
+
<%= link_to 'Dashboard', dashboard_path, title: 'Dashboard', class: 'nav-link' %>
|
11
24
|
</li>
|
12
25
|
<li class="nav-item">
|
13
26
|
<%= link_to 'Clients', clients_path, title: 'Clients', class: 'nav-link' %>
|
data/config/routes.rb
CHANGED
@@ -1,26 +1,32 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
RedisWebManager::Engine.routes.draw do
|
4
|
-
|
5
|
-
|
4
|
+
redises_keys = RedisWebManager.redises.keys
|
5
|
+
scope ':instance', instance: /#{redises_keys.join('|')}/ do
|
6
|
+
# Configuration
|
7
|
+
get :configuration, to: 'configuration#index'
|
6
8
|
|
7
|
-
|
8
|
-
|
9
|
+
# Information
|
10
|
+
get :information, to: 'information#index'
|
9
11
|
|
10
|
-
|
11
|
-
|
12
|
-
get 'key' => 'keys#show'
|
13
|
-
get 'key/edit' => 'keys#edit', as: :edit_key
|
14
|
-
put 'keys' => 'keys#update', as: :update_key
|
15
|
-
delete 'keys' => 'keys#destroy', as: :destroy_key
|
12
|
+
# Dashboard
|
13
|
+
get :dashboard, to: 'dashboard#index'
|
16
14
|
|
17
|
-
|
18
|
-
|
15
|
+
# Keys
|
16
|
+
get 'keys' => 'keys#index'
|
17
|
+
get 'key' => 'keys#show'
|
18
|
+
get 'key/edit' => 'keys#edit', as: :edit_key
|
19
|
+
put 'keys' => 'keys#update', as: :update_key
|
20
|
+
delete 'keys' => 'keys#destroy', as: :destroy_key
|
19
21
|
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
22
|
+
# Clients
|
23
|
+
get :clients, to: 'clients#index'
|
24
|
+
|
25
|
+
# Actions
|
26
|
+
delete :reset, to: 'actions#reset'
|
27
|
+
delete :flushdb, to: 'actions#flushdb'
|
28
|
+
delete :flushall, to: 'actions#flushall'
|
29
|
+
end
|
24
30
|
|
25
31
|
# Root
|
26
32
|
root 'dashboard#index'
|
data/lib/redis_web_manager.rb
CHANGED
@@ -9,7 +9,7 @@ require 'redis_web_manager/data'
|
|
9
9
|
require 'redis'
|
10
10
|
|
11
11
|
module RedisWebManager
|
12
|
-
mattr_accessor :
|
12
|
+
mattr_accessor :redises, default: { default: ::Redis.new }
|
13
13
|
mattr_accessor :lifespan, default: 15.days
|
14
14
|
mattr_accessor :authenticate, default: nil
|
15
15
|
|
@@ -22,14 +22,19 @@ module RedisWebManager
|
|
22
22
|
private
|
23
23
|
|
24
24
|
def check_attrs
|
25
|
-
unless
|
26
|
-
raise
|
25
|
+
unless redises.is_a?(::Hash)
|
26
|
+
raise(ArgumentError, 'Invalid redises hash, use like that { test: Redis.new }')
|
27
|
+
end
|
28
|
+
redises.each do |k, v|
|
29
|
+
unless v.is_a?(::Redis)
|
30
|
+
raise(ArgumentError, "Invalid Redis instance for #{k}, use like that Redis.new")
|
31
|
+
end
|
27
32
|
end
|
28
33
|
unless lifespan.is_a?(::ActiveSupport::Duration)
|
29
|
-
raise
|
34
|
+
raise(ArgumentError, 'Invalid lifespan, use like that 15.days, 15.minutes etc')
|
30
35
|
end
|
31
36
|
valid = lifespan.to_i.positive?
|
32
|
-
raise
|
37
|
+
raise(ArgumentError, 'Invalid lifespan, value must be greater than 0') unless valid
|
33
38
|
end
|
34
39
|
end
|
35
40
|
end
|
@@ -2,10 +2,20 @@
|
|
2
2
|
|
3
3
|
module RedisWebManager
|
4
4
|
class Base
|
5
|
+
attr_accessor :instance
|
6
|
+
|
7
|
+
def initialize(instance)
|
8
|
+
@instance = instance || redises.keys[0]
|
9
|
+
end
|
10
|
+
|
5
11
|
private
|
6
12
|
|
7
13
|
def redis
|
8
|
-
@redis ||=
|
14
|
+
@redis ||= redises[instance.to_sym]
|
15
|
+
end
|
16
|
+
|
17
|
+
def redises
|
18
|
+
@redises ||= RedisWebManager.redises
|
9
19
|
end
|
10
20
|
end
|
11
21
|
end
|
@@ -11,7 +11,7 @@ module RedisWebManager
|
|
11
11
|
def perform
|
12
12
|
now = Time.now.to_i
|
13
13
|
seconds = (now + lifespan.to_i) - now
|
14
|
-
redis.setex("#{BASE}_#{now}", seconds, serialize.to_json)
|
14
|
+
redis.setex("#{instance}_#{BASE}_#{now}", seconds, serialize.to_json)
|
15
15
|
end
|
16
16
|
|
17
17
|
def flush
|
@@ -21,7 +21,7 @@ module RedisWebManager
|
|
21
21
|
private
|
22
22
|
|
23
23
|
def data
|
24
|
-
@data ||= redis.scan_each(match: "#{BASE}_*").to_a
|
24
|
+
@data ||= redis.scan_each(match: "#{instance}_#{BASE}_*").to_a
|
25
25
|
end
|
26
26
|
|
27
27
|
def lifespan
|
@@ -5,23 +5,27 @@ require 'rails_helper'
|
|
5
5
|
RSpec.describe RedisWebManager::ActionsController, type: :controller do
|
6
6
|
routes { RedisWebManager::Engine.routes }
|
7
7
|
|
8
|
+
let(:default) do
|
9
|
+
RedisWebManager.redises.keys[0]
|
10
|
+
end
|
11
|
+
|
8
12
|
describe 'DELETE #reset' do
|
9
13
|
it 'returns a success response' do
|
10
|
-
delete :reset
|
14
|
+
delete :reset, params: { instance: default.to_s }
|
11
15
|
expect(response).to be_redirect
|
12
16
|
end
|
13
17
|
end
|
14
18
|
|
15
19
|
describe 'DELETE #flushdb' do
|
16
20
|
it 'returns a success response' do
|
17
|
-
delete :flushdb
|
21
|
+
delete :flushdb, params: { instance: default.to_s }
|
18
22
|
expect(response).to be_redirect
|
19
23
|
end
|
20
24
|
end
|
21
25
|
|
22
26
|
describe 'DELETE #flushall' do
|
23
27
|
it 'returns a success response' do
|
24
|
-
delete :flushall
|
28
|
+
delete :flushall, params: { instance: default.to_s }
|
25
29
|
expect(response).to be_redirect
|
26
30
|
end
|
27
31
|
end
|
@@ -5,9 +5,13 @@ require 'rails_helper'
|
|
5
5
|
RSpec.describe RedisWebManager::ClientsController, type: :controller do
|
6
6
|
routes { RedisWebManager::Engine.routes }
|
7
7
|
|
8
|
+
let(:default) do
|
9
|
+
RedisWebManager.redises.keys[0]
|
10
|
+
end
|
11
|
+
|
8
12
|
describe 'GET #index' do
|
9
13
|
it 'returns a success response' do
|
10
|
-
get :index
|
14
|
+
get :index, params: { instance: default.to_s }
|
11
15
|
expect(response).to be_successful
|
12
16
|
end
|
13
17
|
end
|
@@ -5,9 +5,13 @@ require 'rails_helper'
|
|
5
5
|
RSpec.describe RedisWebManager::ConfigurationController, type: :controller do
|
6
6
|
routes { RedisWebManager::Engine.routes }
|
7
7
|
|
8
|
+
let(:default) do
|
9
|
+
RedisWebManager.redises.keys[0]
|
10
|
+
end
|
11
|
+
|
8
12
|
describe 'GET #index' do
|
9
13
|
it 'returns a success response' do
|
10
|
-
get :index
|
14
|
+
get :index, params: { instance: default.to_s }
|
11
15
|
expect(response).to be_successful
|
12
16
|
end
|
13
17
|
end
|
@@ -5,9 +5,13 @@ require 'rails_helper'
|
|
5
5
|
RSpec.describe RedisWebManager::DashboardController, type: :controller do
|
6
6
|
routes { RedisWebManager::Engine.routes }
|
7
7
|
|
8
|
+
let(:default) do
|
9
|
+
RedisWebManager.redises.keys[0]
|
10
|
+
end
|
11
|
+
|
8
12
|
describe 'GET #index' do
|
9
13
|
it 'returns a success response' do
|
10
|
-
get :index
|
14
|
+
get :index, params: { instance: default.to_s }
|
11
15
|
expect(response).to be_successful
|
12
16
|
end
|
13
17
|
end
|
@@ -5,9 +5,13 @@ require 'rails_helper'
|
|
5
5
|
RSpec.describe RedisWebManager::InformationController, type: :controller do
|
6
6
|
routes { RedisWebManager::Engine.routes }
|
7
7
|
|
8
|
+
let(:default) do
|
9
|
+
RedisWebManager.redises.keys[0]
|
10
|
+
end
|
11
|
+
|
8
12
|
describe 'GET #index' do
|
9
13
|
it 'returns a success response' do
|
10
|
-
get :index
|
14
|
+
get :index, params: { instance: default.to_s }
|
11
15
|
expect(response).to be_successful
|
12
16
|
end
|
13
17
|
end
|
@@ -8,19 +8,23 @@ RSpec.describe RedisWebManager::KeysController, type: :controller do
|
|
8
8
|
::Redis.new
|
9
9
|
end
|
10
10
|
|
11
|
+
let(:default) do
|
12
|
+
RedisWebManager.redises.keys[0]
|
13
|
+
end
|
14
|
+
|
11
15
|
describe 'GET #index' do
|
12
16
|
it 'returns a success response' do
|
13
|
-
get :index
|
17
|
+
get :index, params: { instance: default.to_s }
|
14
18
|
expect(response).to be_successful
|
15
|
-
get :index, params: { query: 'test' }
|
19
|
+
get :index, params: { query: 'test', instance: default.to_s }
|
16
20
|
expect(response).to be_successful
|
17
|
-
get :index, params: { type: 'string' }
|
21
|
+
get :index, params: { type: 'string', instance: default.to_s }
|
18
22
|
expect(response).to be_successful
|
19
|
-
get :index, params: { expiry: '-1' }
|
23
|
+
get :index, params: { expiry: '-1', instance: default.to_s }
|
20
24
|
expect(response).to be_successful
|
21
|
-
get :index, params: { expiry: '3600' }
|
25
|
+
get :index, params: { expiry: '3600', instance: default.to_s }
|
22
26
|
expect(response).to be_successful
|
23
|
-
get :index, params: { memory: '1000' }
|
27
|
+
get :index, params: { memory: '1000', instance: default.to_s }
|
24
28
|
expect(response).to be_successful
|
25
29
|
end
|
26
30
|
end
|
@@ -28,7 +32,7 @@ RSpec.describe RedisWebManager::KeysController, type: :controller do
|
|
28
32
|
describe 'GET #show' do
|
29
33
|
it 'returns a success response' do
|
30
34
|
redis.set('test', 'test')
|
31
|
-
get :show, params: { key: 'test' }
|
35
|
+
get :show, params: { key: 'test', instance: default.to_s }
|
32
36
|
expect(response).to be_successful
|
33
37
|
end
|
34
38
|
end
|
@@ -36,7 +40,7 @@ RSpec.describe RedisWebManager::KeysController, type: :controller do
|
|
36
40
|
describe 'GET #edit' do
|
37
41
|
it 'returns a success response' do
|
38
42
|
redis.set('test', 'test')
|
39
|
-
get :edit, params: { key: 'test' }
|
43
|
+
get :edit, params: { key: 'test', instance: default.to_s }
|
40
44
|
expect(response).to be_successful
|
41
45
|
end
|
42
46
|
end
|
@@ -44,7 +48,7 @@ RSpec.describe RedisWebManager::KeysController, type: :controller do
|
|
44
48
|
describe 'GET #update' do
|
45
49
|
it 'returns a success response' do
|
46
50
|
redis.set('test', 'test')
|
47
|
-
put :update, params: { old_name: 'test', new_name: 'testtest' }
|
51
|
+
put :update, params: { old_name: 'test', new_name: 'testtest', instance: default.to_s }
|
48
52
|
expect(response).to be_redirect
|
49
53
|
end
|
50
54
|
end
|
@@ -52,7 +56,7 @@ RSpec.describe RedisWebManager::KeysController, type: :controller do
|
|
52
56
|
describe 'GET #destroy' do
|
53
57
|
it 'returns a success response' do
|
54
58
|
redis.set('test', 'test')
|
55
|
-
delete :destroy, params: { key: 'test' }
|
59
|
+
delete :destroy, params: { key: 'test', instance: default.to_s }
|
56
60
|
expect(response).to be_redirect
|
57
61
|
end
|
58
62
|
end
|