diff --git a/ui/components/__test__/__snapshots__/discord-button.test.js.snap b/ui/components/__test__/__snapshots__/discord-button.test.js.snap
new file mode 100644
index 0000000..63a648e
--- /dev/null
+++ b/ui/components/__test__/__snapshots__/discord-button.test.js.snap
@@ -0,0 +1,11 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[` renders correctly 1`] = `
+
+
+
+ Hello!
+
+`;
diff --git a/ui/components/__test__/__snapshots__/discord-guild-pic.test.js.snap b/ui/components/__test__/__snapshots__/discord-guild-pic.test.js.snap
new file mode 100644
index 0000000..5ac5bd9
--- /dev/null
+++ b/ui/components/__test__/__snapshots__/discord-guild-pic.test.js.snap
@@ -0,0 +1,91 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[` falls-back to a default when things go bad. 1`] = `
+.c0 {
+ display: -webkit-box;
+ display: -webkit-flex;
+ display: -ms-flexbox;
+ display: flex;
+ -webkit-box-pack: center;
+ -webkit-justify-content: center;
+ -ms-flex-pack: center;
+ justify-content: center;
+ -webkit-align-items: center;
+ -webkit-box-align: center;
+ -ms-flex-align: center;
+ align-items: center;
+ background-color: var(--fallback-color);
+}
+
+
+
+
+
+ M
+
+
+
+
+`;
+
+exports[` renders a snapshot 1`] = `
+
+
+
+`;
diff --git a/ui/components/__test__/discord-button.test.js b/ui/components/__test__/discord-button.test.js
new file mode 100644
index 0000000..4694908
--- /dev/null
+++ b/ui/components/__test__/discord-button.test.js
@@ -0,0 +1,14 @@
+/* eslint-env jest */
+import * as React from 'react'
+// import renderer from 'react-test-renderer'
+import { shallow } from 'enzyme'
+import DiscordButton from '../discord-button'
+import 'jest-styled-components'
+
+describe('', () => {
+ it('renders correctly', () => {
+ const button = shallow(Hello!)
+ expect(button).toMatchSnapshot()
+ expect(button.text().trim()).toEqual('Hello!')
+ })
+})
diff --git a/ui/components/__test__/discord-guild-pic.test.js b/ui/components/__test__/discord-guild-pic.test.js
new file mode 100644
index 0000000..adaa5ac
--- /dev/null
+++ b/ui/components/__test__/discord-guild-pic.test.js
@@ -0,0 +1,33 @@
+/* eslint-env jest */
+import * as React from 'react'
+// import renderer from 'react-test-renderer'
+import { shallow, mount } from 'enzyme'
+import DiscordGuildPic from '../discord-guild-pic'
+import 'jest-styled-components'
+
+describe('', () => {
+ const mockServer = {
+ id: '0000',
+ icon: 'aaa',
+ name: 'Mock'
+ }
+
+ it('renders a snapshot', () => {
+ const pic = mount()
+ expect(pic).toMatchSnapshot()
+ })
+
+ it('renders a well-formatted guild pic correctly', () => {
+ const pic = shallow()
+ const expectedSrc = `https://cdn.discordapp.com/icons/${mockServer.id}/${mockServer.icon}.png`
+ expect(pic.find('img').prop('src')).toEqual(expectedSrc)
+ })
+
+ it('falls-back to a default when things go bad.', () => {
+ const pic = mount()
+ pic.find('img').simulate('error')
+ expect(pic).toMatchSnapshot()
+
+ expect(pic.text()).toEqual(mockServer.name[0])
+ })
+})
diff --git a/ui/components/role/__snapshots__/Role.test.js.snap b/ui/components/role/__snapshots__/Role.test.js.snap
deleted file mode 100644
index 8ca7588..0000000
--- a/ui/components/role/__snapshots__/Role.test.js.snap
+++ /dev/null
@@ -1,25 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[` renders correctly 1`] = `
-
- Test Role
-
-`;
-
-exports[` when disabled, does not trigger onToggle on click 1`] = `"Test Role
"`;
-
-exports[` when disabled, handles touch hover events 1`] = `"unsafe role
This role has unsafe permissions.
"`;
diff --git a/ui/components/role/__snapshots__/demo.test.js.snap b/ui/components/role/__snapshots__/demo.test.js.snap
deleted file mode 100644
index 52ce11c..0000000
--- a/ui/components/role/__snapshots__/demo.test.js.snap
+++ /dev/null
@@ -1,3 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[` renders 1`] = `"test demo role
"`;
diff --git a/ui/components/role/Role.test.js b/ui/components/role/__test__/Role.test.js
similarity index 87%
rename from ui/components/role/Role.test.js
rename to ui/components/role/__test__/Role.test.js
index 29c4d00..4e1def6 100644
--- a/ui/components/role/Role.test.js
+++ b/ui/components/role/__test__/Role.test.js
@@ -1,13 +1,14 @@
/* eslint-env jest */
import * as React from 'react'
-import renderer from 'react-test-renderer'
+// import renderer from 'react-test-renderer'
import { shallow } from 'enzyme'
-import Role from './index'
+import Role from '../index'
+import 'jest-styled-components'
describe('', () => {
it('renders correctly', () => {
- const role = renderer.create()
+ const role = shallow()
expect(role).toMatchSnapshot()
})
@@ -50,7 +51,7 @@ describe('', () => {
role.simulate('touchstart')
expect(role.state().hovering).toEqual(true)
- expect(role.html()).toMatchSnapshot() // expecting tooltip
+ expect(role).toMatchSnapshot() // expecting tooltip
expect(role.exists('tooltip')).toEqual(true)
role.simulate('touchend')
@@ -67,7 +68,7 @@ describe('', () => {
disabled
/>
)
- expect(role.html()).toMatchSnapshot()
+ expect(role).toMatchSnapshot()
role.simulate('click')
expect(role.html()).toBe(role.html())
diff --git a/ui/components/role/__test__/__snapshots__/Role.test.js.snap b/ui/components/role/__test__/__snapshots__/Role.test.js.snap
new file mode 100644
index 0000000..ffaaa12
--- /dev/null
+++ b/ui/components/role/__test__/__snapshots__/Role.test.js.snap
@@ -0,0 +1,64 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[` renders correctly 1`] = `
+
+ Test Role
+
+`;
+
+exports[` when disabled, does not trigger onToggle on click 1`] = `
+
+ Test Role
+
+`;
+
+exports[` when disabled, handles touch hover events 1`] = `
+
+ unsafe role
+
+ This role has unsafe permissions.
+
+
+`;
diff --git a/ui/components/role/__test__/__snapshots__/demo.test.js.snap b/ui/components/role/__test__/__snapshots__/demo.test.js.snap
new file mode 100644
index 0000000..e716e20
--- /dev/null
+++ b/ui/components/role/__test__/__snapshots__/demo.test.js.snap
@@ -0,0 +1,14 @@
+// Jest Snapshot v1, https://goo.gl/fbAQLP
+
+exports[` renders 1`] = `
+
+`;
diff --git a/ui/components/role/demo.test.js b/ui/components/role/__test__/demo.test.js
similarity index 83%
rename from ui/components/role/demo.test.js
rename to ui/components/role/__test__/demo.test.js
index d49a8fb..31b4390 100644
--- a/ui/components/role/demo.test.js
+++ b/ui/components/role/__test__/demo.test.js
@@ -1,12 +1,13 @@
/* eslint-env jest */
import * as React from 'react'
import { shallow } from 'enzyme'
-import RoleDemo from './demo'
+import RoleDemo from '../demo'
+import 'jest-styled-components'
describe('', () => {
it('renders', () => {
const demo = shallow()
- expect(demo.html()).toMatchSnapshot()
+ expect(demo).toMatchSnapshot()
})
it('changes state when clicked', () => {
diff --git a/ui/components/role/index.js b/ui/components/role/index.js
index d5a312f..c3cd861 100644
--- a/ui/components/role/index.js
+++ b/ui/components/role/index.js
@@ -4,6 +4,8 @@ import { colors } from '../global-colors'
import Color from 'color'
import RoleStyled from './role.styled'
import Tooltip from '../tooltip'
+import logger from '../../../logger'
+const log = logger(__filename)
const fromColors = (colors) => Object.entries(colors).reduce(
(acc, [v, val]) => ({ ...acc, [`--role-color-${v}`]: val })
@@ -43,15 +45,15 @@ export default class Role extends React.Component {
}
onMouseOver = () => {
- console.log('caught hovering')
+ log.debug('caught hovering')
if (this.props.disabled && this.state.hovering === false) {
- console.log('set hovering')
+ log.debug('set hovering')
this.setState({ hovering: true })
}
}
onMouseOut = () => {
- console.log('out hovering')
+ log.debug('out hovering')
this.setState({ hovering: false })
}