test(js): remove snapshots (#15705)

* test(js): remove snapshots

* test: disallow snapshots and only

* fix: stray variable
pull/15682/head
Andrew Watkins 2019-10-31 15:39:57 -07:00 committed by GitHub
parent 08d0fc2fae
commit 97edc7aec6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
49 changed files with 34 additions and 1840 deletions

View File

@ -7,7 +7,7 @@ module.exports = {
jsx: true,
},
},
plugins: ['@typescript-eslint', 'react', 'no-only-tests'],
plugins: ['@typescript-eslint', 'react', 'jest'],
env: {
browser: true,
es6: true,
@ -33,7 +33,6 @@ module.exports = {
'getter-return': 'off',
'no-extra-boolean-cast': 'off',
'no-case-declarations': 'off',
'no-only-tests/no-only-tests': 'error',
'no-useless-escape': 'off',
'no-undef': 'off',
'no-fallthrough': 'off',
@ -67,5 +66,7 @@ module.exports = {
'react/no-unescaped-entities': 'off',
'react/prop-types': 'off',
'react/no-find-dom-node': 'off',
'jest/no-large-snapshots': ['error', {maxSize: 0}], // no shapshots please
'jest/no-focused-tests': ['error'],
},
}

View File

@ -91,7 +91,7 @@
"enzyme-to-json": "^3.3.4",
"eslint": "^6.6.0",
"eslint-config-prettier": "^6.5.0",
"eslint-plugin-no-only-tests": "^2.3.1",
"eslint-plugin-jest": "^23.0.2",
"eslint-plugin-react": "^7.16.0",
"express": "^4.14.0",
"file-loader": "^4.1.0",

View File

@ -24,7 +24,6 @@ describe('Account', () => {
const wrapper = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})

View File

@ -1,281 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`Account rendering renders! 1`] = `
<OverlayContainer>
<OverlayHeader
onDismiss={[Function]}
title="My token"
/>
<OverlayBody>
<CodeSnippet
copyText="RcW2uWiD-vfxujKyJCirK8un3lJsWPfiA6ulmWY_SlSITUal7Z180OwExiKKfrO98X8W6qGrd5hSGdag-hEpWw=="
label="Code Snippet"
/>
<PermissionsWidget
heightPixels={500}
mode="read"
>
<PermissionsWidgetSection
id="orgs-a"
key="orgs-a"
mode="read"
title="orgs-a"
>
<PermissionsWidgetItem
id="orgs-a-read-orgs-a-orgs-a"
key="0"
label="read"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="authorizations"
key="authorizations"
mode="read"
title="authorizations"
>
<PermissionsWidgetItem
id="authorizations-read-authorizations-authorizations"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="authorizations-write-authorizations-authorizations"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="buckets"
key="buckets"
mode="read"
title="buckets"
>
<PermissionsWidgetItem
id="buckets-read-buckets-buckets"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="buckets-write-buckets-buckets"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="dashboards"
key="dashboards"
mode="read"
title="dashboards"
>
<PermissionsWidgetItem
id="dashboards-read-dashboards-dashboards"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="dashboards-write-dashboards-dashboards"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="sources"
key="sources"
mode="read"
title="sources"
>
<PermissionsWidgetItem
id="sources-read-sources-sources"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="sources-write-sources-sources"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="tasks"
key="tasks"
mode="read"
title="tasks"
>
<PermissionsWidgetItem
id="tasks-read-tasks-tasks"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="tasks-write-tasks-tasks"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="telegrafs"
key="telegrafs"
mode="read"
title="telegrafs"
>
<PermissionsWidgetItem
id="telegrafs-read-telegrafs-telegrafs"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="telegrafs-write-telegrafs-telegrafs"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="users"
key="users"
mode="read"
title="users"
>
<PermissionsWidgetItem
id="users-read-users-users"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="users-write-users-users"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="variables"
key="variables"
mode="read"
title="variables"
>
<PermissionsWidgetItem
id="variables-read-variables-variables"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="variables-write-variables-variables"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="scrapers"
key="scrapers"
mode="read"
title="scrapers"
>
<PermissionsWidgetItem
id="scrapers-read-scrapers-scrapers"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="scrapers-write-scrapers-scrapers"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="secrets"
key="secrets"
mode="read"
title="secrets"
>
<PermissionsWidgetItem
id="secrets-read-secrets-secrets"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="secrets-write-secrets-secrets"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="labels"
key="labels"
mode="read"
title="labels"
>
<PermissionsWidgetItem
id="labels-read-labels-labels"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="labels-write-labels-labels"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="views"
key="views"
mode="read"
title="views"
>
<PermissionsWidgetItem
id="views-read-views-views"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="views-write-views-views"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
<PermissionsWidgetSection
id="documents"
key="documents"
mode="read"
title="documents"
>
<PermissionsWidgetItem
id="documents-read-documents-documents"
key="0"
label="read"
selected="selected"
/>
<PermissionsWidgetItem
id="documents-write-documents-documents"
key="1"
label="write"
selected="selected"
/>
</PermissionsWidgetSection>
</PermissionsWidget>
</OverlayBody>
</OverlayContainer>
`;

View File

@ -16,7 +16,6 @@ describe('SaveAsButton', () => {
describe('rendering', () => {
it('renders', () => {
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,3 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`SaveAsButton rendering renders 1`] = `<SaveAsButton />`;

View File

@ -33,7 +33,6 @@ describe('PluginsSideBar', () => {
})
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})

View File

@ -1,25 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`PluginsSideBar rendering renders! wee! 1`] = `
<SideBar
title="title"
visible={true}
>
<SideBarTab
active={false}
id="cpu"
key="cpu"
label="cpu"
onClick={[MockFunction]}
status="success"
/>
<SideBarTab
active={false}
id="disk"
key="disk"
label="disk"
onClick={[MockFunction]}
status="success"
/>
</SideBar>
`;

View File

@ -32,8 +32,6 @@ describe('LineProtocol', () => {
it('renders!', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -29,8 +29,6 @@ describe('LineProtocolTabs', () => {
it('renders!', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,59 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`LineProtocol rendering renders! 1`] = `
<div
className="onboarding-step"
>
<Form
onSubmit={[Function]}
>
<FancyScrollbar
autoHeight={false}
autoHide={true}
className="wizard-step--scroll-content"
hideTracksWhenNotNeeded={true}
maxHeight={null}
setScrollTop={[Function]}
style={Object {}}
>
<div>
<h3
className="wizard-step--title"
>
Add Data via Line Protocol
</h3>
<h5
className="wizard-step--lp-sub-title"
>
Need help writing InfluxDB Line Protocol?
<a
href="https://v2.docs.influxdata.com/v2.0/write-data/#write-data-in-the-influxdb-ui"
target="_blank"
>
See Documentation
</a>
</h5>
<Connect(LineProtocolTabs)
bucket="a"
org="a"
tabs={
Array [
"Upload File",
"Enter Manually",
]
}
/>
</div>
</FancyScrollbar>
<OnboardingButtons
autoFocusNext={true}
backButtonText="Previous"
nextButtonStatus="default"
nextButtonText="Continue"
showSkip={false}
skipButtonText="Skip"
/>
</Form>
</div>
`;

View File

@ -1,42 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`LineProtocolTabs rendering renders! 1`] = `
<div>
<default_1
onClick={[Function]}
tabs={
Array [
"Upload File",
"Enter Manually",
"Enter URL",
]
}
/>
<Grid>
<GridRow>
<GridColumn
offsetLG={2}
offsetMD={1}
offsetXS={1}
widthLG={8}
widthMD={10}
widthXS={10}
>
<div
className="onboarding--admin-user-form"
>
<div
className="wizard-step--lp-body"
>
<PrecisionDropdown />
<default_1
onURLChange={[Function]}
urlInput=""
/>
</div>
</div>
</GridColumn>
</GridRow>
</Grid>
</div>
`;

View File

@ -24,8 +24,6 @@ describe('StatusIndicator', () => {
it('renders!', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,25 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`StatusIndicator rendering renders! 1`] = `
<Fragment>
<div
className="wizard-step--top-container"
>
<div
className="wizard-step--sparkle-container"
>
<SparkleSpinner
loading="NotStarted"
/>
</div>
</div>
<div
className="wizard-step--footer"
>
<div
className="wizard-step--text-state"
/>
</div>
<br />
</Fragment>
`;

View File

@ -46,14 +46,13 @@ describe('SideBar', () => {
it('renders with no children', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
}),
it('renders with children, and renders its children', () => {
const {wrapper} = setup(null, childrenArray)
expect(wrapper.exists()).toBe(true)
expect(wrapper.contains(childrenArray[0])).toBe(true)
expect(wrapper.find(SideBar.Tab)).toHaveLength(2)
expect(wrapper).toMatchSnapshot()
})
})
it('renders with children, and renders its children', () => {
const {wrapper} = setup(null, childrenArray)
expect(wrapper.exists()).toBe(true)
expect(wrapper.contains(childrenArray[0])).toBe(true)
expect(wrapper.find(SideBar.Tab)).toHaveLength(2)
})
})
})

View File

@ -28,7 +28,6 @@ describe('SideBarButton', () => {
it('renders! wee!', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -34,12 +34,12 @@ describe('SideBarTab', () => {
it('renders! wee!', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
}),
it('renders a checkmark if status success', () => {
const {wrapper} = setup({status: TabStatus.Success})
expect(wrapper.exists()).toBe(true)
expect(wrapper.find(`.${IconFont.Checkmark}`)).toHaveLength(1)
})
})
it('renders a checkmark if status success', () => {
const {wrapper} = setup({status: TabStatus.Success})
expect(wrapper.exists()).toBe(true)
expect(wrapper.find(`.${IconFont.Checkmark}`)).toHaveLength(1)
})
})
})

View File

@ -1,76 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`SideBar rendering renders with children, and renders its children 1`] = `
<div
className="side-bar show"
>
<div
className="side-bar--container"
>
<h3
className="side-bar--title"
>
titleString
</h3>
<FancyScrollbar
autoHeight={false}
autoHide={false}
className=""
hideTracksWhenNotNeeded={true}
maxHeight={null}
setScrollTop={[Function]}
style={Object {}}
>
<div
className="side-bar--tabs"
>
<SideBarTab
active={true}
id="a"
key=".0:$a"
label="a"
onClick={[MockFunction]}
status="default"
/>
<SideBarTab
active={false}
id="b"
key=".0:$b"
label="b"
onClick={[MockFunction]}
status="default"
/>
</div>
</FancyScrollbar>
</div>
</div>
`;
exports[`SideBar rendering renders with no children 1`] = `
<div
className="side-bar show"
>
<div
className="side-bar--container"
>
<h3
className="side-bar--title"
>
titleString
</h3>
<FancyScrollbar
autoHeight={false}
autoHide={false}
className=""
hideTracksWhenNotNeeded={true}
maxHeight={null}
setScrollTop={[Function]}
style={Object {}}
>
<div
className="side-bar--tabs"
/>
</FancyScrollbar>
</div>
</div>
`;

View File

@ -1,12 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`SideBarButton rendering renders! wee! 1`] = `
<Button
className="side-bar--button"
color="secondary"
onClick={[MockFunction]}
size="sm"
text="text"
titleText="titleText"
/>
`;

View File

@ -1,13 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`SideBarTab rendering renders! wee! 1`] = `
<div
className="side-bar--tab active"
onClick={[Function]}
>
<span
className="side-bar--icon icon circle-thick"
/>
label
</div>
`;

View File

@ -28,28 +28,4 @@ describe('Onboarding.Components.ConnectionInformation', () => {
expect(wrapper.exists()).toBe(true)
})
it('matches snapshot if loading', () => {
const {wrapper} = setup({loading: LoadingState.Loading})
expect(wrapper).toMatchSnapshot()
})
it('matches snapshot if success', () => {
const {wrapper} = setup({loading: LoadingState.Done})
expect(wrapper).toMatchSnapshot()
})
it('matches snapshot if no data is found', () => {
const {wrapper} = setup({loading: LoadingState.NotFound})
expect(wrapper).toMatchSnapshot()
})
it('matches snapshot if error', () => {
const {wrapper} = setup({loading: LoadingState.Error})
expect(wrapper).toMatchSnapshot()
})
})

View File

@ -3,8 +3,6 @@ import {shallow} from 'enzyme'
import TelegrafInstructions from 'src/dataLoaders/components/verifyStep/TelegrafInstructions'
let wrapper
const setup = (override = {}) => {
const props = {
token: '',
@ -20,9 +18,4 @@ describe('TelegrafInstructions', () => {
const wrapper = setup()
expect(wrapper.exists()).toBe(true)
})
it('matches snapshot', () => {
wrapper = setup()
expect(wrapper).toMatchSnapshot()
})
})

View File

@ -1,53 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`Onboarding.Components.ConnectionInformation matches snapshot if error 1`] = `
<Fragment>
<h4
className="wizard-step--text-state error"
>
Error Listening for Data
</h4>
<p>
Check config and try again
</p>
</Fragment>
`;
exports[`Onboarding.Components.ConnectionInformation matches snapshot if loading 1`] = `
<Fragment>
<h4
className="wizard-step--text-state loading"
>
Awaiting Connection...
</h4>
<p>
Timeout in 60 seconds
</p>
</Fragment>
`;
exports[`Onboarding.Components.ConnectionInformation matches snapshot if no data is found 1`] = `
<Fragment>
<h4
className="wizard-step--text-state error"
>
Data Not Found
</h4>
<p>
Check config and try again
</p>
</Fragment>
`;
exports[`Onboarding.Components.ConnectionInformation matches snapshot if success 1`] = `
<Fragment>
<h4
className="wizard-step--text-state success"
>
Connection Found!
</h4>
<p>
defbuck is receiving data loud and clear!
</p>
</Fragment>
`;

View File

@ -1,44 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`TelegrafInstructions matches snapshot 1`] = `
<div
className="wizard-step--body"
data-testid="setup-instructions"
>
<h6>
1. Install the Latest Telegraf
</h6>
<p>
You can install the latest Telegraf by visiting the
<a
href="https://portal.influxdata.com/downloads/"
rel="noopener noreferrer"
target="_blank"
>
InfluxData Downloads 
</a>
page. If you already have Telegraf installed on your system, make sure it's up to date. You will need version 1.9.2 or higher.
</p>
<h6>
2. Configure your API Token
</h6>
<p>
Your API token is required for pushing data into InfluxDB. You can copy the following command to your terminal window to set an environment variable with your token.
</p>
<CodeSnippet
copyText="export INFLUX_TOKEN="
label="CLI"
/>
<h6>
3. Start Telegraf
</h6>
<p>
Finally, you can run the following command to start the Telegraf agent running on your machine.
</p>
<CodeSnippet
copyText="telegraf --config http://localhost/api/v2/telegrafs/"
label="CLI"
/>
</div>
`;

View File

@ -1,3 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`Onboarding.Utils.PluginConfig if plugin is found in only one bundle isPluginUniqueToBundle returns true 1`] = `true`;

View File

@ -21,9 +21,9 @@ describe('Onboarding.Utils.PluginConfig', () => {
const actual = isPluginUniqueToBundle(telegrafPlugin, bundle, bundles)
expect(actual).toBe(true)
expect(actual).toMatchSnapshot()
})
})
describe('if plugin is not in bundle', () => {
it('isPluginInBundle returns false', () => {
const telegrafPlugin = TelegrafPluginInputSystem.NameEnum.System
@ -34,6 +34,7 @@ describe('Onboarding.Utils.PluginConfig', () => {
expect(actual).toBe(false)
})
})
describe('if plugin is in bundle', () => {
it('isPluginInBundle returns true', () => {
const telegrafPlugin = TelegrafPluginInputSystem.NameEnum.System

View File

@ -23,7 +23,6 @@ describe('Account', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
it('displays the users info by default', () => {

View File

@ -1,212 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`Account rendering renders! 1`] = `
<Settings
me={
Object {
"id": "id-of-groot",
"links": Object {
"log": "/api/v2/users/id-of-groot/log",
"self": "/api/v2/users/id-of-groot",
},
"name": "groot",
}
}
>
<Grid>
<Grid>
<div
className="cf-grid--container"
data-testid="grid"
>
<GridRow>
<div
className="cf-grid--row"
data-testid="grid--row"
>
<GridColumn
widthXS={6}
>
<div
className="cf-grid--column cf-col-xs-6"
data-testid="grid--column"
>
<Panel>
<Panel>
<div
className="cf-panel cf-panel__light-text"
data-testid="panel"
style={
Object {
"backgroundColor": "#292933",
}
}
>
<PanelHeader>
<div
className="cf-panel--header cf-panel--header__sm"
data-testid="panel--header"
>
<FlexBox
alignItems="center"
direction="row"
justifyContent="space-between"
stretchToFitWidth={true}
>
<FlexBox
alignItems="center"
direction="row"
justifyContent="space-between"
stretchToFitWidth={true}
>
<div
className="cf-flex-box cf-flex-box__row cf-flex-box__justify-space-between cf-flex-box__align-center cf-flex-box__stretch-w"
data-testid="flex-box"
>
<PanelTitle>
<div
className="cf-panel--title cf-panel--title__sm"
data-testid="panel--title"
>
About Me
</div>
</PanelTitle>
<Button
text="Edit About Me"
>
<ButtonBase
active={false}
color="default"
shape="none"
size="sm"
status="default"
tabIndex={0}
testID="button"
titleText="Edit About Me"
type="button"
>
<button
className="cf-button cf-button-sm cf-button-default"
data-testid="button"
disabled={false}
tabIndex={0}
title="Edit About Me"
type="button"
>
<G
icon=""
placeIconAfterText={false}
text="Edit About Me"
>
<span
className="cf-button--label"
>
Edit About Me
</span>
</G>
</button>
</ButtonBase>
</Button>
</div>
</FlexBox>
</FlexBox>
</div>
</PanelHeader>
<PanelBody>
<div
className="cf-panel--body cf-panel--body__sm"
data-testid="panel--body"
>
<Form>
<Form>
<form
className="cf-form--wrapper"
data-testid="form-container"
onSubmit={[Function]}
>
<FormElement
label="Username"
>
<div
className="cf-form--element"
data-testid="form--element"
>
<FormLabel
label="Username"
>
<label
className="cf-form--label"
data-testid="form--label"
>
<span>
Username
</span>
</label>
</FormLabel>
<Input
onChange={[Function]}
size="sm"
status="disabled"
testID="nameInput"
titleText="Username"
value="groot"
>
<div
className="cf-input cf-input-sm cf-input__disabled"
style={
Object {
"width": "100%",
}
}
>
<StatusIndicator
shadow={true}
size="sm"
status="disabled"
testID="nameInput"
>
<div
className="cf-status-indicator cf-status-indicator__disabled cf-status-indicator__sm"
data-testid="nameInput--disabled"
>
<div
className="cf-status-indicator--shadow"
/>
</div>
</StatusIndicator>
<input
autoComplete="off"
autoFocus={false}
className="cf-input-field"
data-testid="nameInput"
disabled={true}
name=""
onChange={[Function]}
placeholder=""
required={false}
spellCheck={false}
title="This input is disabled"
type="text"
value="groot"
/>
</div>
</Input>
</div>
</FormElement>
</form>
</Form>
</Form>
</div>
</PanelBody>
</div>
</Panel>
</Panel>
</div>
</GridColumn>
</div>
</GridRow>
</div>
</Grid>
</Grid>
</Settings>
`;

View File

@ -25,7 +25,6 @@ describe('MemberList', () => {
it('renders', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,65 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`MemberList rendering renders 1`] = `
<ResourceList>
<ResourceListHeader>
<ResourceListSorter
name="Username"
sort="none"
sortKey="name"
/>
<ResourceListSorter
name="Role"
sort="none"
sortKey="role"
/>
</ResourceListHeader>
<ResourceListBody
data-testid="members-list"
emptyState={<React.Fragment />}
>
<MemberCard
key="1"
member={
Object {
"id": "1",
"links": Object {
"self": "/api/v2/users/1",
},
"name": "John",
"role": "owner",
"status": "active",
}
}
/>
<MemberCard
key="2"
member={
Object {
"id": "2",
"links": Object {
"self": "/api/v2/users/2",
},
"name": "Jane",
"role": "owner",
"status": "active",
}
}
/>
<MemberCard
key="3"
member={
Object {
"id": "3",
"links": Object {
"self": "/api/v2/users/3",
},
"name": "Smith",
"role": "owner",
"status": "active",
}
}
/>
</ResourceListBody>
</ResourceList>
`;

View File

@ -23,6 +23,5 @@ describe('Onboarding.Components.AdminStep', () => {
const wrapper = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})

View File

@ -24,6 +24,5 @@ describe('Onboarding.Components.CompletionStep', () => {
const wrapper = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})

View File

@ -1,153 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`Onboarding.Components.AdminStep renders 1`] = `
<div
className="onboarding-step"
>
<Form
onSubmit={[Function]}
>
<div
className="wizard-step--scroll-area"
>
<div
className="wizard-step--scroll-content"
>
<h3
className="wizard-step--title"
data-testid="admin-step--head-main"
>
Setup Initial User
</h3>
<h5
className="wizard-step--sub-title"
data-testid="admin-step--head-sub"
>
You will be able to create additional Users, Buckets and Organizations later
</h5>
<Grid>
<GridRow>
<GridColumn
offsetMD={1}
widthMD={10}
widthXS={12}
>
<FormElement
label="Username"
>
<Input
autoFocus={true}
disabledTitleText="Username has been set"
icon={null}
onChange={[Function]}
size="md"
status="default"
testID="input-field--username"
titleText="Username"
value=""
/>
</FormElement>
</GridColumn>
<GridColumn
offsetMD={1}
widthMD={5}
widthXS={6}
>
<FormElement
label="Password"
>
<Input
disabledTitleText="Password has been set"
icon={null}
onChange={[Function]}
size="md"
status="default"
testID="input-field--password"
titleText="Password"
type="password"
value=""
/>
</FormElement>
</GridColumn>
<GridColumn
widthMD={5}
widthXS={6}
>
<FormElement
errorMessage={false}
label="Confirm Password"
>
<Input
disabledTitleText="password has been set"
icon={null}
onChange={[Function]}
size="md"
status="default"
testID="input-field--password-chk"
titleText="Confirm Password"
type="password"
value=""
/>
</FormElement>
</GridColumn>
<GridColumn
offsetMD={1}
widthMD={10}
widthXS={12}
>
<FormElement
label="Initial Organization Name"
labelAddOn={[Function]}
testID="form-elem--orgname"
>
<Input
disabledTitleText="Initial organization name has been set"
icon={null}
onChange={[Function]}
placeholder="An organization is a workspace for a group of users."
size="md"
status="default"
testID="input-field--orgname"
titleText="Initial Organization Name"
value=""
/>
</FormElement>
</GridColumn>
<GridColumn
offsetMD={1}
widthMD={10}
widthXS={12}
>
<FormElement
label="Initial Bucket Name"
labelAddOn={[Function]}
testID="form-elem--bucketname"
>
<Input
disabledTitleText="Initial bucket name has been set"
icon={null}
onChange={[Function]}
placeholder="A bucket is where your time series data is stored with a retention policy."
size="md"
status="default"
testID="input-field--bucketname"
titleText="Initial Bucket Name"
value=""
/>
</FormElement>
</GridColumn>
</GridRow>
</Grid>
</div>
</div>
<OnboardingButtons
autoFocusNext={false}
backButtonText="Previous"
nextButtonStatus="disabled"
nextButtonText="Continue"
showSkip={false}
skipButtonText="Skip"
/>
</Form>
</div>
`;

View File

@ -1,117 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`Onboarding.Components.CompletionStep renders 1`] = `
<div
className="onboarding-step"
>
<div
className="wizard-step--scroll-area"
>
<FancyScrollbar
autoHeight={false}
autoHide={false}
className=""
hideTracksWhenNotNeeded={true}
maxHeight={null}
setScrollTop={[Function]}
style={Object {}}
>
<div
className="wizard-step--scroll-content"
>
<h3
className="wizard-step--title"
>
You are ready to go!
</h3>
<h5
className="wizard-step--sub-title"
>
Your InfluxDB 2.0 has 1 organization, 1 user, and 1 bucket.
</h5>
<div
className="splash-logo secondary"
/>
<h3
className="wizard-step--title"
>
Lets start collecting data!
</h3>
<dl
className="wizard-completion--options"
>
<Grid>
<GridRow>
<GridColumn
widthSM={4}
widthXS={12}
>
<div
className="wizard-completion--option"
>
<ResourceFetcher
fetcher={[Function]}
>
<Component />
</ResourceFetcher>
<dt>
Timing is everything!
</dt>
<dd>
This will set up local metric collection and allow you to explore the features of InfluxDB 2.0 quickly.
</dd>
</div>
</GridColumn>
<GridColumn
widthSM={4}
widthXS={12}
>
<div
className="wizard-completion--option"
>
<ResourceFetcher
fetcher={[Function]}
>
<Component />
</ResourceFetcher>
<dt>
Whoa looks like youre an expert!
</dt>
<dd>
This allows you to set up Telegraf, scrapers, and much more.
</dd>
</div>
</GridColumn>
<GridColumn
widthSM={4}
widthXS={12}
>
<div
className="wizard-completion--option"
>
<Button
color="success"
onClick={[MockFunction]}
size="lg"
testID="button--conf-later"
text="Configure Later"
/>
<dt>
I've got this...
</dt>
<dd>
Jump into InfluxDB 2.0 and set up data collection when youre ready.
</dd>
</div>
</GridColumn>
</GridRow>
</Grid>
</dl>
<h5
className="wizard-step--sub-title"
/>
</div>
</FancyScrollbar>
</div>
</div>
`;

View File

@ -27,7 +27,6 @@ describe('ScraperList', () => {
it('renders', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,63 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`ScraperList rendering renders 1`] = `
<Fragment>
<ResourceList>
<ResourceListHeader>
<ResourceListSorter
name="name"
sort="none"
sortKey="name"
/>
<ResourceListSorter
name="url"
sort="none"
sortKey="url"
/>
<ResourceListSorter
name="bucket"
sort="none"
sortKey="bucket"
/>
</ResourceListHeader>
<ResourceListBody
emptyState={<React.Fragment />}
>
<ScraperRow
key="03636a0bfe351000"
onDeleteScraper={[MockFunction]}
onUpdateScraper={[MockFunction]}
scraper={
Object {
"bucket": "a",
"bucketID": "03636a0aabb51001",
"id": "03636a0bfe351000",
"name": "new target",
"orgID": "03636a0aabb51000",
"organization": "a",
"type": "prometheus",
"url": "http://localhost:9999/metrics",
}
}
/>
<ScraperRow
key="03636a0bfe351001"
onDeleteScraper={[MockFunction]}
onUpdateScraper={[MockFunction]}
scraper={
Object {
"bucket": "a",
"bucketID": "03636a0aabb51001",
"id": "03636a0bfe351001",
"name": "new target",
"orgID": "03636a0aabb51000",
"organization": "a",
"type": "prometheus",
"url": "http://localhost:9999/metrics",
}
}
/>
</ResourceListBody>
</ResourceList>
</Fragment>
`;

View File

@ -20,7 +20,6 @@ describe('VersionInfo', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
describe('when width is specified', () => {
@ -28,7 +27,6 @@ describe('VersionInfo', () => {
const {wrapper} = setup({widthPixels: 300})
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,30 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`VersionInfo renders correctly 1`] = `
<div
className="version-info"
>
<p>
Version
2.0.0
</p>
</div>
`;
exports[`VersionInfo when width is specified renders corectly 1`] = `
<div
className="version-info"
style={
Object {
"width": "300px",
}
}
>
<p>
Version
2.0.0
</p>
</div>
`;

View File

@ -35,7 +35,6 @@ describe('TaskForm', () => {
expect(wrapper.exists()).toBe(true)
expect(form.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -43,7 +43,6 @@ describe('TasksList', () => {
it('renders', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,64 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`TaskForm rendering renders 1`] = `
<Form>
<Grid>
<GridRow>
<GridColumn
widthXS={12}
>
<FormElement
label="Name"
>
<Input
name="name"
onChange={[MockFunction]}
placeholder="Name your task"
testID="task-form-name"
value=""
/>
</FormElement>
</GridColumn>
<GridColumn>
<FormElement
label="Schedule Task"
>
<FlexBox
alignItems="flex-start"
direction="column"
margin="sm"
>
<Radio
shape="stretch"
>
<RadioButton
active={false}
id="every"
onClick={[Function]}
testID="task-card-every-btn"
titleText="Run task at regular intervals"
value="interval"
>
Every
</RadioButton>
<RadioButton
active={false}
id="cron"
onClick={[Function]}
testID="task-card-cron-btn"
titleText="Use cron syntax for more control over scheduling"
value="cron"
>
Cron
</RadioButton>
</Radio>
</FlexBox>
</FormElement>
</GridColumn>
<TaskScheduleFormFields
onChangeInput={[MockFunction]}
/>
</GridRow>
</Grid>
</Form>
`;

View File

@ -1,103 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`TasksList rendering renders 1`] = `
<Fragment>
<ResourceList>
<ResourceListHeader>
<ResourceListSorter
name="Name"
sort="none"
sortKey="name"
/>
<ResourceListSorter
name="Active"
sort="none"
sortKey="status"
/>
<ResourceListSorter
name="Schedule"
sort="none"
sortKey="every"
/>
<ResourceListSorter
name="Last Completed"
sort="none"
sortKey="latestCompleted"
/>
</ResourceListHeader>
<ResourceListBody
emptyState={
<EmptyTasksLists
onCreate={[Function]}
onImportTask={[Function]}
searchTerm=""
/>
}
>
<Connect(withRouter(TaskCard))
key="task-id--02ef9deff2141000"
onActivate={[Function]}
onDelete={[Function]}
onSelect={[Function]}
task={
Object {
"cron": "2 0 * * *",
"flux": "option task = {
name: \\"pasdlak\\",
cron: \\"2 0 * * *\\"
}
from(bucket: \\"inbucket\\")
|> range(start: -1h)",
"id": "02ef9deff2141000",
"labels": Array [],
"name": "pasdlak",
"org": "default",
"orgID": "02ee9e2a29d73000",
"status": "active",
}
}
/>
<Connect(withRouter(TaskCard))
key="task-id--02f12c50dba72000"
onActivate={[Function]}
onDelete={[Function]}
onSelect={[Function]}
task={
Object {
"every": "1m0s",
"flux": "option task = {
name: \\"somename\\",
every: 1m,
}
from(bucket: \\"inbucket\\")
|> range(start: -task.every)",
"id": "02f12c50dba72000",
"labels": Array [
Object {
"id": "0001",
"name": "Trogdor",
"properties": Object {
"color": "#44ffcc",
"description": "Burninating the countryside",
},
},
Object {
"id": "0002",
"name": "Strawberry",
"properties": Object {
"color": "#ff0054",
"description": "It is a great fruit",
},
},
],
"name": "somename",
"org": "default",
"orgID": "02ee9e2a29d73000",
"status": "active",
}
}
/>
</ResourceListBody>
</ResourceList>
</Fragment>
`;

View File

@ -29,7 +29,6 @@ describe('CollectorList', () => {
it('renders', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,52 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`CollectorList rendering renders 1`] = `
<Fragment>
<ResourceList>
<ResourceListHeader>
<ResourceListSorter
name="Name"
sort="none"
sortKey="name"
testID="name-sorter"
/>
<ResourceListSorter
name="Bucket"
sort="none"
sortKey="plugins.0.config.bucket"
testID="bucket-sorter"
/>
</ResourceListHeader>
<ResourceListBody
emptyState={<React.Fragment />}
>
<Connect(withRouter(CollectorRow))
bucket=""
collector={
Object {
"id": "03636a150fb51000",
"name": "Name this Configuration",
"orgID": "03636a0aabb51000",
}
}
key="03636a150fb51000"
onDelete={[MockFunction]}
onUpdate={[MockFunction]}
/>
<Connect(withRouter(CollectorRow))
bucket=""
collector={
Object {
"id": "03636a150fb51001",
"name": "Name this Configuration",
"orgID": "03636a0aabb51000",
}
}
key="03636a150fb51001"
onDelete={[MockFunction]}
onUpdate={[MockFunction]}
/>
</ResourceListBody>
</ResourceList>
</Fragment>
`;

View File

@ -59,7 +59,7 @@ describe('Variables.Components.VariableForm', () => {
const {getByTestId} = wrapper
const root = getByTestId('variable-form--root')
expect(root).toMatchSnapshot()
expect(root).toBeTruthy()
})
})

View File

@ -26,7 +26,6 @@ describe('VariableList', () => {
it('renders', () => {
const {wrapper} = setup()
expect(wrapper.exists()).toBe(true)
expect(wrapper).toMatchSnapshot()
})
})
})

View File

@ -1,191 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`Variables.Components.VariableForm rendering renders 1`] = `
<form
class="cf-form--wrapper"
data-testid="variable-form--root"
>
<div
class="cf-grid--container"
data-testid="grid"
>
<div
class="cf-grid--row"
data-testid="grid--row"
>
<div
class="cf-grid--column cf-col-xs-6"
data-testid="grid--column"
>
<div
class="overlay-flux-editor--spacing"
>
<div
class="cf-form--element"
data-testid="form--validation-element"
>
<label
class="cf-form--label"
data-testid="form--label"
>
<span>
Name
<span
class="cf-form--label-required"
>
*
</span>
</span>
</label>
<div
class="cf-input cf-input-sm"
style="width: 100%;"
>
<div
class="cf-status-indicator cf-status-indicator__default cf-status-indicator__sm"
data-testid="input-field--default"
>
<div
class="cf-status-indicator--shadow"
/>
</div>
<input
autocomplete="off"
class="cf-input-field"
data-testid="input-field"
name="name"
placeholder="Give your variable a name"
spellcheck="false"
title=""
type="text"
value=""
/>
</div>
</div>
</div>
</div>
<div
class="cf-grid--column cf-col-xs-6"
data-testid="grid--column"
>
<div
class="cf-form--element"
data-testid="form--element"
>
<label
class="cf-form--label"
data-testid="form--label"
>
<span>
Type
<span
class="cf-form--label-required"
>
*
</span>
</span>
</label>
<div
class="cf-dropdown cf-dropdown__down"
data-testid="dropdown"
style="width: 100%;"
>
<button
class="cf-button cf-button-sm cf-button-default cf-button-stretch cf-dropdown--button"
data-testid="variable-form--dropdown-button"
tabindex="0"
type="button"
>
<span
class="cf-dropdown--selected"
>
Query
</span>
<span
class="cf-icon caret-down cf-dropdown--caret"
data-testid="icon"
/>
</button>
<div
class="cf-dropdown--menu-container"
/>
</div>
</div>
</div>
</div>
<div
class="cf-grid--row"
data-testid="grid--row"
>
<div
class="cf-grid--column cf-col-xs-12"
data-testid="grid--column"
>
<div
class="cf-form--element"
data-testid="form--element"
>
<label
class="cf-form--label"
data-testid="form--label"
>
<span>
Script
</span>
</label>
<div
class="cf-grid--column cf-col-xs-12"
data-testid="grid--column"
>
<div
class="overlay-flux-editor"
/>
</div>
</div>
</div>
</div>
<div
class="cf-grid--row"
data-testid="grid--row"
>
<div
class="cf-grid--column cf-col-xs-12"
data-testid="grid--column"
>
<div
class="cf-form--element cf-form--footer"
data-testid="form--footer"
>
<button
class="cf-button cf-button-sm cf-button-danger"
data-testid="button"
tabindex="0"
title="Cancel"
type="button"
>
<span
class="cf-button--label"
>
Cancel
</span>
</button>
<button
class="cf-button cf-button-sm cf-button-primary cf-button--disabled"
data-testid="button"
disabled=""
tabindex="0"
title="Create"
type="submit"
>
<span
class="cf-button--label"
>
Create
</span>
</button>
</div>
</div>
</div>
</div>
</form>
`;

View File

@ -1,42 +0,0 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`VariableList rendering renders 1`] = `
<Fragment>
<ResourceList>
<ResourceListHeader>
<ResourceListSorter
name="Name"
sort="none"
sortKey="name"
/>
<ResourceListSorter
name="Type"
sort="none"
sortKey="arguments"
/>
</ResourceListHeader>
<ResourceListBody
emptyState={<React.Fragment />}
>
<Connect(withRouter(VariableCard))
key="variable-0"
onDeleteVariable={[MockFunction]}
onEditVariable={[Function]}
variable={
Object {
"arguments": Object {
"type": "query",
"values": Object {
"language": "flux",
"query": "1 + 1 ",
},
},
"name": "a little variable",
"orgID": "0",
}
}
/>
</ResourceListBody>
</ResourceList>
</Fragment>
`;

View File

@ -908,13 +908,6 @@
dependencies:
regenerator-runtime "^0.12.0"
"@babel/runtime@^7.3.1":
version "7.6.3"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.6.3.tgz#935122c74c73d2240cafd32ddb5fc2a6cd35cf1f"
integrity sha512-kq6anf9JGjW8Nt5rYfEuGRaEAaH1mkv3Bbu6rYvLOpPh/RusSJXuKPEAoZ7L7gybZkchE8+NV5g9vKF4AGAtsA==
dependencies:
regenerator-runtime "^0.13.2"
"@babel/template@^7.1.0", "@babel/template@^7.2.2", "@babel/template@^7.4.0", "@babel/template@^7.4.4":
version "7.4.4"
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.4.4.tgz#f4b88d1225689a08f5bc3a17483545be9e4ed237"
@ -1011,14 +1004,10 @@
debug "^3.1.0"
lodash.once "^4.1.1"
"@influxdata/clockface@1.0.3":
version "1.0.3"
resolved "https://registry.yarnpkg.com/@influxdata/clockface/-/clockface-1.0.3.tgz#a24e5476f9d31c005bf1c2924220723e77e4c597"
integrity sha512-LxCUZ/1E7CZSLFxK/qO/L0m6T6GTCzEO9DoMgLAfGE4vdFpjxs7yMQNkfWxFYpXAUv+DBp/OFPKTqLtaB5bK0w==
dependencies:
"@types/d3-ease" "^1.0.8"
d3-ease "^1.0.5"
react-spring "^8.0.27"
"@influxdata/clockface@1.0.4":
version "1.0.4"
resolved "https://registry.yarnpkg.com/@influxdata/clockface/-/clockface-1.0.4.tgz#ec454ba11c9006a5248d716853d8d27dcc4789e8"
integrity sha512-V0RVLVlKenVSHrTaAfijqcipbSMyQ+7AYsx82Q889K+SDdjnu8W8wpWJIERjJFzJiAWBCjfJoY//r2PfmUB/Cw==
"@influxdata/flux-parser@^0.3.0":
version "0.3.0"
@ -1279,11 +1268,6 @@
resolved "https://registry.yarnpkg.com/@types/d3-color/-/d3-color-1.2.1.tgz#26141c3c554e320edd40726b793570a3ae57397e"
integrity sha512-xwb1tqvYNWllbHuhMFhiXk63Imf+QNq/dJdmbXmr2wQVnwGenCuj3/0IWJ9hdIFQIqzvhT7T37cvx93jtAsDbQ==
"@types/d3-ease@^1.0.8":
version "1.0.9"
resolved "https://registry.yarnpkg.com/@types/d3-ease/-/d3-ease-1.0.9.tgz#1dd849bd7edef6426e915e220ed9970db5ea4e04"
integrity sha512-U5ADevQ+W6fy32FVZZC9EXallcV/Mi12A5Tkd0My5MrC7T8soMQEhlDAg88XUWm0zoCQlB4XV0en/24LvuDB4Q==
"@types/d3-scale@^2.0.1":
version "2.0.2"
resolved "https://registry.yarnpkg.com/@types/d3-scale/-/d3-scale-2.0.2.tgz#61145948aa1a52ab31384766cd013308699112b3"
@ -1550,7 +1534,7 @@
regexpp "^2.0.1"
tsutils "^3.17.1"
"@typescript-eslint/experimental-utils@2.6.0":
"@typescript-eslint/experimental-utils@2.6.0", "@typescript-eslint/experimental-utils@^2.5.0":
version "2.6.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-2.6.0.tgz#ed70bef72822bff54031ff0615fc888b9e2b6e8a"
integrity sha512-34BAFpNOwHXeqT+AvdalLxOvcPYnCxA5JGmBAFL64RGMdP0u65rXjii7l/nwpgk5aLEE1LaqF+SsCU0/Cb64xA==
@ -3733,11 +3717,6 @@ d3-color@1:
resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.2.3.tgz#6c67bb2af6df3cc8d79efcc4d3a3e83e28c8048f"
integrity sha512-x37qq3ChOTLd26hnps36lexMRhNXEtVxZ4B25rL0DVdDsGQIJGB18S7y9XDwlDD6MD/ZBzITCf4JjGMM10TZkw==
d3-ease@^1.0.5:
version "1.0.5"
resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-1.0.5.tgz#8ce59276d81241b1b72042d6af2d40e76d936ffb"
integrity sha512-Ct1O//ly5y5lFM9YTdu+ygq7LleSgSE4oj7vUt9tPLHUi8VCV7QoizGpdWRWAwCO9LdYzIrQDg97+hGVdsSGPQ==
d3-format@1, d3-format@^1.3.2:
version "1.3.2"
resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.3.2.tgz#6a96b5e31bcb98122a30863f7d92365c00603562"
@ -4395,6 +4374,13 @@ eslint-config-prettier@^6.5.0:
dependencies:
get-stdin "^6.0.0"
eslint-plugin-jest@^23.0.2:
version "23.0.2"
resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-23.0.2.tgz#54a59bfe77245186afe13711a297067aefefff0a"
integrity sha512-fkxcvOJm0hC/jbJqYJjtuC9mvpTJqXd0Nixx7joVQvJoBQuXk/ws3+MtRYzD/4TcKSgvr21uuSLdwSxKJKC2cg==
dependencies:
"@typescript-eslint/experimental-utils" "^2.5.0"
eslint-plugin-no-only-tests@^2.3.1:
version "2.3.1"
resolved "https://registry.yarnpkg.com/eslint-plugin-no-only-tests/-/eslint-plugin-no-only-tests-2.3.1.tgz#7b24a4df55b818d0838410aa96b24a5a4a072262"
@ -9511,14 +9497,6 @@ react-scrollbars-custom@^4.0.0-alpha.8:
cnbuilder "^1.0.8"
react-draggable "^3.2.1"
react-spring@^8.0.27:
version "8.0.27"
resolved "https://registry.yarnpkg.com/react-spring/-/react-spring-8.0.27.tgz#97d4dee677f41e0b2adcb696f3839680a3aa356a"
integrity sha512-nDpWBe3ZVezukNRandTeLSPcwwTMjNVu1IDq9qA/AMiUqHuRN4BeSWvKr3eIxxg1vtiYiOLy4FqdfCP5IoP77g==
dependencies:
"@babel/runtime" "^7.3.1"
prop-types "^15.5.8"
react-test-renderer@^16.0.0-0:
version "16.5.2"
resolved "https://registry.yarnpkg.com/react-test-renderer/-/react-test-renderer-16.5.2.tgz#92e9d2c6f763b9821b2e0b22f994ee675068b5ae"
@ -9695,11 +9673,6 @@ regenerator-runtime@^0.12.0:
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.12.1.tgz#fa1a71544764c036f8c49b13a08b2594c9f8a0de"
integrity sha512-odxIc1/vDlo4iZcfXqRYFj0vpXFNoGdKMAUieAlFYO6m/nl5e9KR/beGf41z4a1FI+aQgtjhuaSlDxQ0hmkrHg==
regenerator-runtime@^0.13.2:
version "0.13.3"
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz#7cf6a77d8f5c6f60eb73c5fc1955b2ceb01e6bf5"
integrity sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==
regenerator-transform@^0.13.3:
version "0.13.3"
resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.13.3.tgz#264bd9ff38a8ce24b06e0636496b2c856b57bcbb"