Sha256: ee0c80ea0be994391ec777c6658d1595eaa013cb01c298ac5acc95c1bf795942
Contents?: true
Size: 1.83 KB
Versions: 11
Compression:
Stored size: 1.83 KB
Contents
require 'rails_helper' module Mks module Auth RSpec.describe MenusController, type: :controller do routes { Mks::Auth::Engine.routes } before(:each) do u = create(:user) token = Mks::Auth::TokenAuth.issue(name: u.full_name, email: u.email, id: u.id) request.headers['Authorization'] = "Bearer #{token}" end describe 'GET #menus' do it 'gets menus for user' do m = create(:application_module) ur = create(:user_role, application_module: m) user = create(:user, roles: [ur]) p1 = create(:menu, roles: [ur]) p2 = create(:menu, roles: [ur]) p3 = create(:menu) 3.times { create(:menu, parent: p1, roles: [ur]) } 3.times { create(:menu, parent: p2, roles: [ur]) } 3.times { create(:menu, parent: p3) } get :menus, params: { id: user.id, app_module: m.code } result = JSON(response.body) expect(result['data'].count).to eq 2 end it 'gets menus only for the current application module' do m1 = create(:application_module) m2 = create(:application_module) ur1 = create(:user_role, application_module: m1) ur2 = create(:user_role, application_module: m2) menu1 = create(:menu, application_module: m1, roles: [ur1]) menu2 = create(:menu, application_module: m1, roles: [ur1]) menu3 = create(:menu, application_module: m2, roles: [ur2]) menu4 = create(:menu, application_module: m2, roles: [ur2]) u = create(:user, roles: [ur1, ur2], application_modules: [m1, m2]) get :menus, params: { id: u.id, app_module: m1.code } result = JSON(response.body) expect(result['data'].count).to eq 2 # expect(result['data']) end end end end end
Version data entries
11 entries across 11 versions & 1 rubygems