Use member.role_name in template and JS

change name of data from roles to rolesCategory to make less confusing
This commit is contained in:
leigh-mil
2019-05-13 11:30:14 -04:00
parent 546e04555d
commit 4206aa8a59
4 changed files with 49 additions and 44 deletions

View File

@@ -2,20 +2,20 @@ import { shallowMount } from '@vue/test-utils'
import EditEnvironmentRole from '../forms/edit_environment_role'
describe('EditEnvironmentRole', () => {
var initialRoles, wrapper
var initialRoleCategories, wrapper
beforeEach(() => {
initialRoles = [
initialRoleCategories = [
{
role: 'no_access',
members: [
{ role: null, user_id: '123' },
{ role: null, user_id: '456' },
{ role_name: null, user_id: '123' },
{ role_name: null, user_id: '456' },
],
},
{
role: 'Basic Access',
members: [{ role: 'Basic Access', user_id: '789' }],
members: [{ role_name: 'Basic Access', user_id: '789' }],
},
{
role: 'Network Admin',
@@ -24,36 +24,41 @@ describe('EditEnvironmentRole', () => {
{
role: 'Business Read-only',
members: [
{ role: 'Business Read-only', user_id: '012' },
{ role: 'Business Read-only', user_id: '345' },
{ role_name: 'Business Read-only', user_id: '012' },
{ role_name: 'Business Read-only', user_id: '345' },
],
},
{
role: 'Technical Read-only',
members: [{ role: 'Technical Read-only', user_id: '678' }],
members: [{ role_name: 'Technical Read-only', user_id: '678' }],
},
]
wrapper = shallowMount(EditEnvironmentRole, { propsData: { initialRoles } })
wrapper = shallowMount(EditEnvironmentRole, {
propsData: { initialRoleCategories },
})
})
it('removes null roles to no_access', () => {
let roles = wrapper.vm.sanitizeValues([
{ role: 'no_access', members: [{ role: null }] },
{ role: 'no_access', members: [{ role_name: null }] },
])
expect(roles).toEqual([
{ role: 'no_access', members: [{ role: 'no_access' }] },
{ role: 'no_access', members: [{ role_name: 'no_access' }] },
])
})
it('gets the data for a user', () => {
let member_data = wrapper.vm.getUserInfo('678')
expect(member_data).toEqual({ role: 'Technical Read-only', user_id: '678' })
expect(member_data).toEqual({
role_name: 'Technical Read-only',
user_id: '678',
})
})
it('removes a user from role', () => {
let techRole = wrapper.vm.roles.find(role => {
let techRole = wrapper.vm.roleCategories.find(role => {
return role.role === 'Technical Read-only'
})
@@ -63,7 +68,7 @@ describe('EditEnvironmentRole', () => {
})
it('adds user to a role', () => {
let techRole = wrapper.vm.roles.find(role => {
let techRole = wrapper.vm.roleCategories.find(role => {
return role.role === 'Technical Read-only'
})
@@ -73,10 +78,10 @@ describe('EditEnvironmentRole', () => {
})
it('updates users role', () => {
let techRole = wrapper.vm.roles.find(role => {
let techRole = wrapper.vm.roleCategories.find(role => {
return role.role === 'Technical Read-only'
})
let businessRole = wrapper.vm.roles.find(role => {
let businessRole = wrapper.vm.roleCategories.find(role => {
return role.role === 'Business Read-only'
})

View File

@@ -11,13 +11,13 @@ export default {
mixins: [FormMixin],
props: {
initialRoles: Array,
initialRoleCategories: Array,
},
data: function() {
return {
selectedSection: null,
roles: this.sanitizeValues(this.initialRoles),
roleCategories: this.sanitizeValues(this.initialRoleCategories),
}
},
@@ -25,8 +25,8 @@ export default {
sanitizeValues: function(roles) {
roles.forEach(role => {
role.members.forEach(member => {
if (member.role === null) {
member.role = 'no_access'
if (member.role_name === null) {
member.role_name = 'no_access'
}
})
})
@@ -53,7 +53,7 @@ export default {
},
getUserInfo: function(userId) {
for (let role of this.roles) {
for (let role of this.roleCategories) {
for (let member of role.members) {
if (member.user_id === userId) {
return member
@@ -63,7 +63,7 @@ export default {
},
removeUser: function(userId) {
for (let role of this.roles) {
for (let role of this.roleCategories) {
role.members = role.members.filter(member => {
return member.user_id !== userId
})
@@ -74,9 +74,9 @@ export default {
},
addUser: function(userInfo, newRole) {
this.roles.forEach(role => {
this.roleCategories.forEach(role => {
if (role.role === newRole) {
userInfo.role = newRole
userInfo.role_name = newRole
role.members.push(userInfo)
}
})