diff --git a/webapp/locales/de.json b/webapp/locales/de.json
index f1ddff599..e17b57502 100644
--- a/webapp/locales/de.json
+++ b/webapp/locales/de.json
@@ -320,7 +320,7 @@
"how-to": "Du kannst andere Benutzer auf deren Profilseite über das Inhaltsmenü blockieren.",
"block": "Nutzer blockieren",
"unblock": "Nutzer entblocken",
- "unblocked": "ist wieder entblockt"
+ "unblocked": "{name} ist wieder entblockt"
}
},
"admin": {
diff --git a/webapp/locales/en.json b/webapp/locales/en.json
index 70592b2fd..f0bc1115d 100644
--- a/webapp/locales/en.json
+++ b/webapp/locales/en.json
@@ -321,7 +321,7 @@
"how-to": "You can block other users on their profile page via the content menu.",
"block": "Block user",
"unblock": "Unblock user",
- "unblocked": "is unblocked again"
+ "unblocked": "{name} is unblocked again"
}
},
"admin": {
diff --git a/webapp/pages/settings/blocked-users.spec.js b/webapp/pages/settings/blocked-users.spec.js
new file mode 100644
index 000000000..c78de5dc7
--- /dev/null
+++ b/webapp/pages/settings/blocked-users.spec.js
@@ -0,0 +1,69 @@
+import { config, mount, createLocalVue } from '@vue/test-utils'
+import BlockedUsers from './blocked-users.vue'
+import Styleguide from '@human-connection/styleguide'
+import Filters from '~/plugins/vue-filters'
+import { Unblock } from '~/graphql/settings/BlockedUsers'
+
+const localVue = createLocalVue()
+
+localVue.use(Styleguide)
+localVue.use(Filters)
+
+config.stubs['nuxt-link'] = ''
+
+describe('blocked-users.vue', () => {
+ let wrapper
+ let mocks
+
+ beforeEach(() => {
+ mocks = {
+ $t: jest.fn(),
+ $apollo: {
+ mutate: jest.fn(),
+ queries: {
+ blockedUsers: {
+ refetch: jest.fn(),
+ },
+ },
+ },
+ $toast: {
+ error: jest.fn(),
+ success: jest.fn(),
+ },
+ }
+ })
+
+ describe('mount', () => {
+ const Wrapper = () => {
+ return mount(BlockedUsers, { mocks, localVue })
+ }
+
+ beforeEach(() => {
+ wrapper = Wrapper()
+ })
+
+ it('renders', () => {
+ expect(wrapper.is('div')).toBe(true)
+ })
+
+ describe('given a list of blocked users', () => {
+ beforeEach(() => {
+ const blockedUsers = [{ id: 'u1', name: 'John Doe', slug: 'john-doe', avatar: '' }]
+ wrapper.setData({ blockedUsers })
+ })
+
+ describe('click unblock', () => {
+ beforeEach(() => {
+ wrapper.find('button').trigger('click')
+ })
+
+ it('calls unblock mutation with given user', () => {
+ expect(mocks.$apollo.mutate).toHaveBeenCalledWith({
+ mutation: Unblock(),
+ variables: { id: 'u1' },
+ })
+ })
+ })
+ })
+ })
+})
diff --git a/webapp/pages/settings/blocked-users.vue b/webapp/pages/settings/blocked-users.vue
index 6a0b828fe..acbd253aa 100644
--- a/webapp/pages/settings/blocked-users.vue
+++ b/webapp/pages/settings/blocked-users.vue
@@ -58,7 +58,7 @@
-
+
@@ -107,7 +107,8 @@ export default {
async unblock(user) {
await this.$apollo.mutate({ mutation: Unblock(), variables: { id: user.row.id } })
this.$apollo.queries.blockedUsers.refetch()
- this.$toast.success(user.row.slug + ' ' + this.$t('settings.blocked-users.unblocked'))
+ const { name } = user.row
+ this.$toast.success(this.$t('settings.blocked-users.unblocked', { name }))
},
},
}