+ return more attributes in post factory for convenience
This commit is contained in:
Robert Schäfer 2019-03-05 18:15:05 +01:00
parent 592f25b978
commit 2b7576521c
4 changed files with 19 additions and 19 deletions

View File

@ -64,7 +64,7 @@ const permissions = shield({
DeleteBadge: isAdmin,
AddPostDisabledBy: and(isModerator, fromUserMatchesCurrentUser),
RemovePostDisabledBy: and(isModerator, fromUserMatchesCurrentUser),
RemovePostDisabledBy: and(isModerator, fromUserMatchesCurrentUser)
// addFruitToBasket: isAuthenticated
// CreateUser: allow,
},

View File

@ -19,8 +19,8 @@ beforeEach(async () => {
factory.create('Post', { title: 'Publicly visible post', deleted: false })
])
const moderatorFactory = Factory()
await moderatorFactory.authenticateAs({ email: 'moderator@example.org', password: '1234'})
await moderatorFactory.relate('Post', 'DisabledBy', { from: 'm1', to: 'p2'})
await moderatorFactory.authenticateAs({ email: 'moderator@example.org', password: '1234' })
await moderatorFactory.relate('Post', 'DisabledBy', { from: 'm1', to: 'p2' })
})
afterEach(async () => {

View File

@ -201,13 +201,10 @@ describe('DeletePost', () => {
})
})
describe('AddPostDisabledBy', () => {
const setup = async (params = {}) => {
await factory.create('User', {email: 'author@example.org', password: '1234'})
await factory.authenticateAs({email: 'author@example.org', password: '1234'})
await factory.create('User', { email: 'author@example.org', password: '1234' })
await factory.authenticateAs({ email: 'author@example.org', password: '1234' })
await factory.create('Post', {
id: 'p9' // that's the ID we will look for
})
@ -215,8 +212,8 @@ describe('AddPostDisabledBy', () => {
let headers = {}
const { email, password } = params
if (email && password) {
const user = await factory.create('User', params)
headers = await login({email, password})
await factory.create('User', params)
headers = await login({ email, password })
}
client = new GraphQLClient(host, { headers })
}
@ -280,7 +277,7 @@ describe('AddPostDisabledBy', () => {
it('sets current user', async () => {
await client.request(mutation)
const query = `{ Post(disabled: true) { id, disabledBy { id } } }`
const query = '{ Post(disabled: true) { id, disabledBy { id } } }'
const expected = { Post: [{ id: 'p9', disabledBy: { id: 'u7' } }] }
await expect(client.request(query)).resolves.toEqual(expected)
})
@ -290,11 +287,11 @@ describe('AddPostDisabledBy', () => {
const expected = { Post: [ { id: 'p9', disabled: true } ] }
await expect(client.request(
`{ Post { id disabled } }`
'{ Post { id disabled } }'
)).resolves.toEqual(before)
await client.request(mutation) // this updates .disabled
await expect(client.request(
`{ Post(disabled: true) { id disabled } }`
'{ Post(disabled: true) { id disabled } }'
)).resolves.toEqual(expected)
})
})
@ -304,8 +301,8 @@ describe('AddPostDisabledBy', () => {
describe('RemovePostDisabledBy', () => {
const setup = async (params = {}) => {
await factory.create('User', {email: 'anotherModerator@example.org', password: '1234', id: 'u123', role: 'moderator'})
await factory.authenticateAs({email: 'anotherModerator@example.org', password: '1234'})
await factory.create('User', { email: 'anotherModerator@example.org', password: '1234', id: 'u123', role: 'moderator' })
await factory.authenticateAs({ email: 'anotherModerator@example.org', password: '1234' })
await factory.create('Post', {
id: 'p9' // that's the ID we will look for
})
@ -317,8 +314,8 @@ describe('RemovePostDisabledBy', () => {
let headers = {}
const { email, password } = params
if (email && password) {
const user = await factory.create('User', params)
headers = await login({email, password})
await factory.create('User', params)
headers = await login({ email, password })
}
client = new GraphQLClient(host, { headers })
}
@ -385,11 +382,11 @@ describe('RemovePostDisabledBy', () => {
const expected = { Post: [ { id: 'p9', disabled: false } ] }
await expect(client.request(
`{ Post(disabled: true) { id disabled } }`
'{ Post(disabled: true) { id disabled } }'
)).resolves.toEqual(before)
await client.request(mutation) // this updates .disabled
await expect(client.request(
`{ Post { id disabled } }`
'{ Post { id disabled } }'
)).resolves.toEqual(expected)
})
})

View File

@ -25,10 +25,13 @@ export default function create (params) {
disabled: ${disabled},
deleted: ${deleted}
) {
id
name
email
avatar
role
deleted
disabled
}
}
`