Skip to content

Commit

Permalink
fixed test
Browse files Browse the repository at this point in the history
  • Loading branch information
Max Einstein committed Jun 24, 2017
1 parent 20ba975 commit 81c521c
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 15 deletions.
7 changes: 4 additions & 3 deletions src/TooltipContainer/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ class TooltipContainer extends React.Component {
}

static defaultProps = {
offset: 8,
padding: 16,
caretSize: 5
offset: enums.offset,
padding: enums.padding,
caretSize: enums.caretSize
}

componentDidMount() {
Expand Down Expand Up @@ -56,6 +56,7 @@ class TooltipContainer extends React.Component {
<div
className={`react-autotip-${isEmpty(rest) ? 'hidden' : 'active'}`}
style={{ ...styles.container[type], ...rest, ...tooltipStyles }}
onTransitionEnd={() => console.log('done')}
ref={tooltip => this.tooltip = tooltip}
>
<div style={styles.content[type]}>
Expand Down
16 changes: 13 additions & 3 deletions src/TooltipContainer/styles.css
Original file line number Diff line number Diff line change
@@ -1,10 +1,20 @@
.react-autotip-hidden {
visibility: hidden;
opacity: 0;
transition-property: opacity;
transition-duration: 1s;
transition-timing-function: ease-in-out;
}

.react-autotip-active {
visibility: visible;
opacity: 1;
transition: opacity 0.25s ease-in 0.35s;
}

@keyframes in {
0% { opacity: 0; }
100% { opacity: 1; }
}

@keyframes out {
0% { opacity: 1; }
100% { opacity: 0; }
}
19 changes: 11 additions & 8 deletions src/utils/calc-position.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
// local imports
import calcPosition, { offset, padding } from './calc-position'
import calcPosition from './calc-position'

import enums from './enums'
const { offset, padding } = enums

// dims of container that spawns tooltip
const container = { height: 25, width: 25 }
Expand All @@ -20,43 +23,43 @@ describe('utils', () => {
test('can position to the top of container (default)', () => {
// the dims of the container that spawns the tooltip
const containerDims = { ...container, top: 100, left: 100 }
const res = calcPosition({ containerDims, tooltipDims })
const res = calcPosition({ containerDims, tooltipDims, offset, padding })
expect(res.pos).toEqual('top')
})

test('can position to the right of container', () => {
const left = padding + (tooltipDims.width / 2) - (container.width / 2)

const containerDims = { ...container, top: 100, left }
let res = calcPosition({ containerDims, tooltipDims })
let res = calcPosition({ containerDims, tooltipDims, offset, padding })
expect(res.pos).toEqual('top')

containerDims.left = left - 1
res = calcPosition({ containerDims, tooltipDims })
res = calcPosition({ containerDims, tooltipDims, offset, padding })
expect(res.pos).toEqual('right')
})

test('can position to the left of container', () => {
const left = window.innerWidth - (tooltipDims.width / 2) - padding - (container.width / 2)

const containerDims = { ...container, top: 100, left }
let res = calcPosition({ containerDims, tooltipDims })
let res = calcPosition({ containerDims, tooltipDims, offset, padding })
expect(res.pos).toEqual('top')

containerDims.left = left + 1
res = calcPosition({ containerDims, tooltipDims })
res = calcPosition({ containerDims, tooltipDims, offset, padding })
expect(res.pos).toEqual('left')
})

test('can position to the bottom of container', () => {
const top = padding + tooltipDims.height + offset

const containerDims = { ...container, left: 100, top }
let res = calcPosition({ containerDims, tooltipDims })
let res = calcPosition({ containerDims, tooltipDims, offset, padding })
expect(res.pos).toEqual('top')

containerDims.top = top - 1
res = calcPosition({ containerDims, tooltipDims })
res = calcPosition({ containerDims, tooltipDims, offset, padding })
expect(res.pos).toEqual('bottom')
})
})
Expand Down
5 changes: 4 additions & 1 deletion src/utils/enums.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
export default {
ON_TOOLTIP: 'onreactautotip'
ON_TOOLTIP: 'onreactautotip',
offset: 8,
padding: 16,
caretSize: 5
}

0 comments on commit 81c521c

Please sign in to comment.