diff --git a/webapp/locales/de.json b/webapp/locales/de.json
index a9cf7ce2c..e17b57502 100644
--- a/webapp/locales/de.json
+++ b/webapp/locales/de.json
@@ -313,12 +313,14 @@
},
"columns": {
"name": "Name",
- "slug": "Alias"
+ "slug": "Alias",
+ "unblock": "Entblocken"
},
"empty": "Bislang hast du niemanden blockiert.",
"how-to": "Du kannst andere Benutzer auf deren Profilseite über das Inhaltsmenü blockieren.",
"block": "Nutzer blockieren",
- "unblock": "Nutzer entblocken"
+ "unblock": "Nutzer entblocken",
+ "unblocked": "{name} ist wieder entblockt"
}
},
"admin": {
diff --git a/webapp/locales/en.json b/webapp/locales/en.json
index 15ef63a95..f0bc1115d 100644
--- a/webapp/locales/en.json
+++ b/webapp/locales/en.json
@@ -314,12 +314,14 @@
},
"columns": {
"name": "Name",
- "slug": "Slug"
+ "slug": "Slug",
+ "unblock": "Unblock"
},
"empty": "So far, you have not blocked anybody.",
"how-to": "You can block other users on their profile page via the content menu.",
"block": "Block user",
- "unblock": "Unblock user"
+ "unblock": "Unblock user",
+ "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 19e24c994..acbd253aa 100644
--- a/webapp/pages/settings/blocked-users.vue
+++ b/webapp/pages/settings/blocked-users.vue
@@ -56,6 +56,10 @@
{{ scope.row.slug | truncate(20) }}
+
+
+
+
@@ -74,7 +78,7 @@