@@ -33,7 +33,7 @@ test("issue mobx 405", () => {
)
const exampleState = new ExampleState()
- const wrapper = renderer.create(
{
})
test("#85 Should handle state changing in constructors", () => {
- const a = mobx.observable.box(2)
+ const a = observable.box(2)
const Child = observer(
- class Child extends Component {
+ class Child extends React.Component {
constructor(p) {
super(p)
a.set(3) // one shouldn't do this!
@@ -88,11 +88,11 @@ test("#85 Should handle state changing in constructors", () => {
test("testIsComponentReactive", () => {
const C = observer(() => null)
- const wrapper = renderer.create(
)
+ const wrapper = TestRenderer.create(
)
const instance = wrapper.getInstance()
// instance is something different then the rendering reaction!
- expect(mobx.isObservable(instance)).toBeFalsy()
+ expect(isObservable(instance)).toBeFalsy()
})
test("Do not warn about custom shouldComponentUpdate when it is the one provided by ReactiveMixin", () => {
diff --git a/test/observer.test.js b/test/observer.test.js
index b3b710a8..38e98c5c 100644
--- a/test/observer.test.js
+++ b/test/observer.test.js
@@ -1,15 +1,22 @@
-import React, { Component } from "react"
+import React from "react"
import { inject, observer, Observer, useStaticRendering } from "../src"
-import renderer, { act } from "react-test-renderer"
+import TestRenderer, { act } from "react-test-renderer"
import { render } from "@testing-library/react"
-import * as mobx from "mobx"
+import {
+ _getAdministration,
+ _resetGlobalState,
+ action,
+ computed,
+ observable,
+ transaction
+} from "mobx"
import withConsole from "./utils/withConsole"
/**
* some test suite is too tedious
*/
-const getDNode = (obj, prop) => mobx._getAdministration(obj, prop)
+const getDNode = (obj, prop) => _getAdministration(obj, prop)
afterEach(() => {
jest.useRealTimers()
@@ -30,7 +37,7 @@ describe("nestedRendering", () => {
let todoListRenderings
const TodoList = observer(
- class TodoList extends Component {
+ class TodoList extends React.Component {
render() {
todoListRenderings++
const todos = store.todos
@@ -49,7 +56,7 @@ describe("nestedRendering", () => {
beforeEach(() => {
todoItemRenderings = 0
todoListRenderings = 0
- store = mobx.observable({
+ store = observable({
todos: [
{
title: "a",
@@ -113,7 +120,7 @@ describe("nestedRendering", () => {
})
describe("isObjectShallowModified detects when React will update the component", () => {
- const store = mobx.observable({ count: 0 })
+ const store = observable({ count: 0 })
let counterRenderings = 0
const Counter = observer(function TodoItem() {
counterRenderings++
@@ -143,7 +150,7 @@ describe("keep views alive", () => {
beforeEach(() => {
yCalcCount = 0
- data = mobx.observable({
+ data = observable({
x: 3,
get y() {
yCalcCount++
@@ -185,7 +192,7 @@ describe("does not views alive when using static rendering", () => {
beforeEach(() => {
renderCount = 0
- data = mobx.observable({
+ data = observable({
z: "hi"
})
})
@@ -214,7 +221,7 @@ describe("does not views alive when using static rendering", () => {
test("issue 12", () => {
const events = []
- const data = mobx.observable({
+ const data = observable({
selected: "coffee",
items: [
{
@@ -227,7 +234,7 @@ test("issue 12", () => {
})
/** Row Class */
- class Row extends Component {
+ class Row extends React.Component {
constructor(props) {
super(props)
}
@@ -255,11 +262,11 @@ test("issue 12", () => {
)
})
- const wrapper = renderer.create(
)
+ const wrapper = TestRenderer.create(
)
expect(wrapper.toJSON()).toMatchSnapshot()
act(() => {
- mobx.transaction(() => {
+ transaction(() => {
data.items[1].name = "boe"
data.items.splice(0, 2, { name: "soup" })
data.selected = "tea"
@@ -270,7 +277,7 @@ test("issue 12", () => {
})
test("changing state in render should fail", () => {
- const data = mobx.observable.box(2)
+ const data = observable.box(2)
const Comp = observer(() => {
if (data.get() === 3) {
try {
@@ -286,7 +293,7 @@ test("changing state in render should fail", () => {
render(
)
data.set(3)
- mobx._resetGlobalState()
+ _resetGlobalState()
})
test("observer component can be injected", () => {
@@ -296,7 +303,7 @@ test("observer component can be injected", () => {
inject("foo")(
observer(
- class T extends Component {
+ class T extends React.Component {
render() {
return null
}
@@ -307,7 +314,7 @@ test("observer component can be injected", () => {
// N.B, the injected component will be observer since mobx-react 4.0!
inject(() => {})(
observer(
- class T extends Component {
+ class T extends React.Component {
render() {
return null
}
@@ -321,7 +328,7 @@ test("observer component can be injected", () => {
test("correctly wraps display name of child component", () => {
const A = observer(
- class ObserverClass extends Component {
+ class ObserverClass extends React.Component {
render() {
return null
}
@@ -331,17 +338,17 @@ test("correctly wraps display name of child component", () => {
return null
})
- const wrapper = renderer.create(
)
+ const wrapper = TestRenderer.create(
)
expect(wrapper.root.type.name).toEqual("ObserverClass")
- const wrapper2 = renderer.create(
)
+ const wrapper2 = TestRenderer.create(
)
expect(wrapper2.root.type.displayName).toEqual("StatelessObserver")
})
describe("124 - react to changes in this.props via computed", () => {
const Comp = observer(
- class T extends Component {
- @mobx.computed
+ class T extends React.Component {
+ @computed
get computedProp() {
return this.props.x
}
@@ -356,7 +363,7 @@ describe("124 - react to changes in this.props via computed", () => {
}
)
- class Parent extends Component {
+ class Parent extends React.Component {
state = { v: 1 }
render() {
return (
@@ -384,7 +391,7 @@ describe("124 - react to changes in this.props via computed", () => {
// Test on skip: since all reactions are now run in batched updates, the original issues can no longer be reproduced
//this test case should be deprecated?
test("should stop updating if error was thrown in render (#134)", () => {
- const data = mobx.observable.box(0)
+ const data = observable.box(0)
let renderingsCount = 0
let lastOwnRenderCount = 0
const errors = []
@@ -444,7 +451,7 @@ test("should stop updating if error was thrown in render (#134)", () => {
describe("should render component even if setState called with exactly the same props", () => {
let renderCount
const Comp = observer(
- class T extends Component {
+ class T extends React.Component {
onClick = () => {
this.setState({})
}
@@ -485,12 +492,12 @@ describe("should render component even if setState called with exactly the same
})
test("it rerenders correctly if some props are non-observables - 1", () => {
- let odata = mobx.observable({ x: 1 })
+ let odata = observable({ x: 1 })
let data = { y: 1 }
@observer
class Comp extends React.Component {
- @mobx.computed
+ @computed
get computed() {
// n.b: data.y would not rerender! shallowly new equal props are not stored
return this.props.odata.x
@@ -505,7 +512,7 @@ test("it rerenders correctly if some props are non-observables - 1", () => {
}
const Parent = observer(
- class Parent extends Component {
+ class Parent extends React.Component {
render() {
// this.props.odata.x;
return
@@ -520,7 +527,7 @@ test("it rerenders correctly if some props are non-observables - 1", () => {
})
}
- const wrapper = renderer.create(
)
+ const wrapper = TestRenderer.create(
)
const contents = () => wrapper.toTree().rendered.rendered.rendered.join("")
@@ -533,11 +540,11 @@ test("it rerenders correctly if some props are non-observables - 1", () => {
test("it rerenders correctly if some props are non-observables - 2", () => {
let renderCount = 0
- let odata = mobx.observable({ x: 1 })
+ let odata = observable({ x: 1 })
@observer
class Component extends React.PureComponent {
- @mobx.computed
+ @computed
get computed() {
return this.props.data.y // should recompute, since props.data is changed
}
@@ -561,7 +568,7 @@ test("it rerenders correctly if some props are non-observables - 2", () => {
odata.x++
}
- const wrapper = renderer.create(
)
+ const wrapper = TestRenderer.create(
)
const contents = () => wrapper.toTree().rendered.rendered.rendered.join("")
@@ -587,7 +594,7 @@ describe("Observer regions should react", () => {
)
beforeEach(() => {
- data = mobx.observable.box("hi")
+ data = observable.box("hi")
})
test("init state is correct", () => {
@@ -611,7 +618,7 @@ test("Observer should not re-render on shallow equal new props", () => {
let childRendering = 0
let parentRendering = 0
const data = { x: 1 }
- const odata = mobx.observable({ y: 1 })
+ const odata = observable({ y: 1 })
const Child = observer(({ data }) => {
childRendering++
@@ -623,7 +630,7 @@ test("Observer should not re-render on shallow equal new props", () => {
return
})
- const wrapper = renderer.create(
)
+ const wrapper = TestRenderer.create(
)
const contents = () => wrapper.toTree().rendered.rendered.rendered.join("")
@@ -644,14 +651,14 @@ test("parent / childs render in the right order", () => {
let events = []
class User {
- @mobx.observable
+ @observable
name = "User's name"
}
class Store {
- @mobx.observable
+ @observable
user = new User()
- @mobx.action
+ @action
logout() {
this.user = null
}
@@ -765,7 +772,7 @@ test("computed properties react to props", () => {
const seen = []
@observer
class Child extends React.Component {
- @mobx.computed
+ @computed
get getPropX() {
return this.props.x
}
@@ -788,7 +795,7 @@ test("computed properties react to props", () => {
}
}
- const wrapper = renderer.create(
)
+ const wrapper = TestRenderer.create(
)
expect(wrapper.toJSON()).toMatchInlineSnapshot(`
0
@@ -812,10 +819,10 @@ test("#692 - componentDidUpdate is triggered", () => {
@observer
class Test extends React.Component {
- @mobx.observable
+ @observable
counter = 0
- @mobx.action
+ @action
inc = () => this.counter++
constructor() {
diff --git a/test/propTypes.test.js b/test/propTypes.test.js
index a4b4f040..d3ab11bd 100644
--- a/test/propTypes.test.js
+++ b/test/propTypes.test.js
@@ -1,5 +1,5 @@
-import * as ReactPropTypes from "prop-types"
-import { PropTypes } from "../src"
+import PropTypes from "prop-types"
+import { PropTypes as MRPropTypes } from "../src"
import { observable } from "mobx"
// Cause `checkPropTypes` caches errors and doesn't print them twice....
@@ -17,7 +17,7 @@ function typeCheckFail(declaration, value, message) {
const propTypes = { testProp: declaration }
const compId = "testComponent" + ++testComponentId
- ReactPropTypes.checkPropTypes(propTypes, props, "prop", compId, null)
+ PropTypes.checkPropTypes(propTypes, props, "prop", compId, null)
error = error.replace(compId, "testComponent")
expect(error).toBe("Warning: Failed prop type: " + message)
@@ -36,7 +36,7 @@ function typeCheckFailRequiredValues(declaration) {
const unspecifiedMsg = /but its value is `undefined`\./
const props1 = { testProp: null }
- ReactPropTypes.checkPropTypes(
+ PropTypes.checkPropTypes(
propTypes,
props1,
"testProp",
@@ -47,7 +47,7 @@ function typeCheckFailRequiredValues(declaration) {
error = ""
const props2 = { testProp: undefined }
- ReactPropTypes.checkPropTypes(
+ PropTypes.checkPropTypes(
propTypes,
props2,
"testProp",
@@ -58,7 +58,7 @@ function typeCheckFailRequiredValues(declaration) {
error = ""
const props3 = {}
- ReactPropTypes.checkPropTypes(
+ PropTypes.checkPropTypes(
propTypes,
props3,
"testProp",
@@ -72,7 +72,7 @@ function typeCheckFailRequiredValues(declaration) {
function typeCheckPass(declaration, value) {
const props = { testProp: value }
- const error = ReactPropTypes.checkPropTypes(
+ const error = PropTypes.checkPropTypes(
{ testProp: declaration },
props,
"testProp",
@@ -83,53 +83,53 @@ function typeCheckPass(declaration, value) {
}
test("Valid values", () => {
- typeCheckPass(PropTypes.observableArray, observable([]))
- typeCheckPass(PropTypes.observableArrayOf(ReactPropTypes.string), observable([""]))
- typeCheckPass(PropTypes.arrayOrObservableArray, observable([]))
- typeCheckPass(PropTypes.arrayOrObservableArray, [])
- typeCheckPass(PropTypes.arrayOrObservableArrayOf(ReactPropTypes.string), observable([""]))
- typeCheckPass(PropTypes.arrayOrObservableArrayOf(ReactPropTypes.string), [""])
- typeCheckPass(PropTypes.observableObject, observable({}))
- typeCheckPass(PropTypes.objectOrObservableObject, {})
- typeCheckPass(PropTypes.objectOrObservableObject, observable({}))
- typeCheckPass(PropTypes.observableMap, observable(observable.map({}, { deep: false })))
+ typeCheckPass(MRPropTypes.observableArray, observable([]))
+ typeCheckPass(MRPropTypes.observableArrayOf(PropTypes.string), observable([""]))
+ typeCheckPass(MRPropTypes.arrayOrObservableArray, observable([]))
+ typeCheckPass(MRPropTypes.arrayOrObservableArray, [])
+ typeCheckPass(MRPropTypes.arrayOrObservableArrayOf(PropTypes.string), observable([""]))
+ typeCheckPass(MRPropTypes.arrayOrObservableArrayOf(PropTypes.string), [""])
+ typeCheckPass(MRPropTypes.observableObject, observable({}))
+ typeCheckPass(MRPropTypes.objectOrObservableObject, {})
+ typeCheckPass(MRPropTypes.objectOrObservableObject, observable({}))
+ typeCheckPass(MRPropTypes.observableMap, observable(observable.map({}, { deep: false })))
})
test("should be implicitly optional and not warn", () => {
- typeCheckPass(PropTypes.observableArray, undefined)
- typeCheckPass(PropTypes.observableArrayOf(ReactPropTypes.string), undefined)
- typeCheckPass(PropTypes.arrayOrObservableArray, undefined)
- typeCheckPass(PropTypes.arrayOrObservableArrayOf(ReactPropTypes.string), undefined)
- typeCheckPass(PropTypes.observableObject, undefined)
- typeCheckPass(PropTypes.objectOrObservableObject, undefined)
- typeCheckPass(PropTypes.observableMap, undefined)
+ typeCheckPass(MRPropTypes.observableArray, undefined)
+ typeCheckPass(MRPropTypes.observableArrayOf(PropTypes.string), undefined)
+ typeCheckPass(MRPropTypes.arrayOrObservableArray, undefined)
+ typeCheckPass(MRPropTypes.arrayOrObservableArrayOf(PropTypes.string), undefined)
+ typeCheckPass(MRPropTypes.observableObject, undefined)
+ typeCheckPass(MRPropTypes.objectOrObservableObject, undefined)
+ typeCheckPass(MRPropTypes.observableMap, undefined)
})
test("should warn for missing required values, function (test)", () => {
- typeCheckFailRequiredValues(PropTypes.observableArray.isRequired, undefined)
+ typeCheckFailRequiredValues(MRPropTypes.observableArray.isRequired, undefined)
typeCheckFailRequiredValues(
- PropTypes.observableArrayOf(ReactPropTypes.string).isRequired,
+ MRPropTypes.observableArrayOf(PropTypes.string).isRequired,
undefined
)
- typeCheckFailRequiredValues(PropTypes.arrayOrObservableArray.isRequired, undefined)
+ typeCheckFailRequiredValues(MRPropTypes.arrayOrObservableArray.isRequired, undefined)
typeCheckFailRequiredValues(
- PropTypes.arrayOrObservableArrayOf(ReactPropTypes.string).isRequired,
+ MRPropTypes.arrayOrObservableArrayOf(PropTypes.string).isRequired,
undefined
)
- typeCheckFailRequiredValues(PropTypes.observableObject.isRequired, undefined)
- typeCheckFailRequiredValues(PropTypes.objectOrObservableObject.isRequired, undefined)
- typeCheckFailRequiredValues(PropTypes.observableMap.isRequired, undefined)
+ typeCheckFailRequiredValues(MRPropTypes.observableObject.isRequired, undefined)
+ typeCheckFailRequiredValues(MRPropTypes.objectOrObservableObject.isRequired, undefined)
+ typeCheckFailRequiredValues(MRPropTypes.observableMap.isRequired, undefined)
})
test("should fail date and regexp correctly", () => {
typeCheckFail(
- PropTypes.observableObject,
+ MRPropTypes.observableObject,
new Date(),
"Invalid prop `testProp` of type `date` supplied to " +
"`testComponent`, expected `mobx.ObservableObject`."
)
typeCheckFail(
- PropTypes.observableArray,
+ MRPropTypes.observableArray,
/please/,
"Invalid prop `testProp` of type `regexp` supplied to " +
"`testComponent`, expected `mobx.ObservableArray`."
@@ -138,13 +138,13 @@ test("should fail date and regexp correctly", () => {
test("observableArray", () => {
typeCheckFail(
- PropTypes.observableArray,
+ MRPropTypes.observableArray,
[],
"Invalid prop `testProp` of type `array` supplied to " +
"`testComponent`, expected `mobx.ObservableArray`."
)
typeCheckFail(
- PropTypes.observableArray,
+ MRPropTypes.observableArray,
"",
"Invalid prop `testProp` of type `string` supplied to " +
"`testComponent`, expected `mobx.ObservableArray`."
@@ -153,7 +153,7 @@ test("observableArray", () => {
test("arrayOrObservableArray", () => {
typeCheckFail(
- PropTypes.arrayOrObservableArray,
+ MRPropTypes.arrayOrObservableArray,
"",
"Invalid prop `testProp` of type `string` supplied to " +
"`testComponent`, expected `mobx.ObservableArray` or javascript `array`."
@@ -162,13 +162,13 @@ test("arrayOrObservableArray", () => {
test("observableObject", () => {
typeCheckFail(
- PropTypes.observableObject,
+ MRPropTypes.observableObject,
{},
"Invalid prop `testProp` of type `object` supplied to " +
"`testComponent`, expected `mobx.ObservableObject`."
)
typeCheckFail(
- PropTypes.observableObject,
+ MRPropTypes.observableObject,
"",
"Invalid prop `testProp` of type `string` supplied to " +
"`testComponent`, expected `mobx.ObservableObject`."
@@ -177,7 +177,7 @@ test("observableObject", () => {
test("objectOrObservableObject", () => {
typeCheckFail(
- PropTypes.objectOrObservableObject,
+ MRPropTypes.objectOrObservableObject,
"",
"Invalid prop `testProp` of type `string` supplied to " +
"`testComponent`, expected `mobx.ObservableObject` or javascript `object`."
@@ -186,7 +186,7 @@ test("objectOrObservableObject", () => {
test("observableMap", () => {
typeCheckFail(
- PropTypes.observableMap,
+ MRPropTypes.observableMap,
{},
"Invalid prop `testProp` of type `object` supplied to " +
"`testComponent`, expected `mobx.ObservableMap`."
@@ -195,19 +195,19 @@ test("observableMap", () => {
test("observableArrayOf", () => {
typeCheckFail(
- PropTypes.observableArrayOf(ReactPropTypes.string),
+ MRPropTypes.observableArrayOf(PropTypes.string),
2,
"Invalid prop `testProp` of type `number` supplied to " +
"`testComponent`, expected `mobx.ObservableArray`."
)
typeCheckFail(
- PropTypes.observableArrayOf(ReactPropTypes.string),
+ MRPropTypes.observableArrayOf(PropTypes.string),
observable([2]),
"Invalid prop `testProp[0]` of type `number` supplied to " +
"`testComponent`, expected `string`."
)
typeCheckFail(
- PropTypes.observableArrayOf({ foo: PropTypes.string }),
+ MRPropTypes.observableArrayOf({ foo: MRPropTypes.string }),
{ foo: "bar" },
"Property `testProp` of component `testComponent` has invalid PropType notation."
)
@@ -215,25 +215,25 @@ test("observableArrayOf", () => {
test("arrayOrObservableArrayOf", () => {
typeCheckFail(
- PropTypes.arrayOrObservableArrayOf(ReactPropTypes.string),
+ MRPropTypes.arrayOrObservableArrayOf(PropTypes.string),
2,
"Invalid prop `testProp` of type `number` supplied to " +
"`testComponent`, expected `mobx.ObservableArray` or javascript `array`."
)
typeCheckFail(
- PropTypes.arrayOrObservableArrayOf(ReactPropTypes.string),
+ MRPropTypes.arrayOrObservableArrayOf(PropTypes.string),
observable([2]),
"Invalid prop `testProp[0]` of type `number` supplied to " +
"`testComponent`, expected `string`."
)
typeCheckFail(
- PropTypes.arrayOrObservableArrayOf(ReactPropTypes.string),
+ MRPropTypes.arrayOrObservableArrayOf(PropTypes.string),
[2],
"Invalid prop `testProp[0]` of type `number` supplied to " +
"`testComponent`, expected `string`."
)
typeCheckFail(
- PropTypes.arrayOrObservableArrayOf({ foo: PropTypes.string }),
+ MRPropTypes.arrayOrObservableArrayOf({ foo: MRPropTypes.string }),
{ foo: "bar" },
"Property `testProp` of component `testComponent` has invalid PropType notation."
)
diff --git a/test/stateless.test.js b/test/stateless.test.js
index 9a319f1b..e2d549ad 100644
--- a/test/stateless.test.js
+++ b/test/stateless.test.js
@@ -1,9 +1,8 @@
-import React, { Component } from "react"
-import * as PropTypes from "prop-types"
-import * as mobx from "mobx"
+import React from "react"
+import PropTypes from "prop-types"
import { observer, PropTypes as MRPropTypes } from "../src"
import { render } from "@testing-library/react"
-import renderer, { act } from "react-test-renderer"
+import TestRenderer, { act } from "react-test-renderer"
import { observable } from "mobx"
const StatelessComp = ({ testProp }) =>
result: {testProp}
@@ -60,7 +59,7 @@ test("stateless component with context support", () => {
})
test("component with observable propTypes", () => {
- class Comp extends Component {
+ class Comp extends React.Component {
render() {
return null
}
@@ -76,7 +75,7 @@ test("component with observable propTypes", () => {
const firstWrapper =
expect(warnings.length).toBe(1)
// eslint-disable-next-line no-unused-vars
- const secondWrapper =
+ const secondWrapper =
expect(warnings.length).toBe(1)
console.error = originalConsoleError
})
@@ -96,14 +95,14 @@ describe("stateless component with forwardRef", () => {
)
test("render test correct", () => {
- const component = renderer.create(
+ const component = TestRenderer.create(
)
expect(component).toMatchSnapshot()
})
test("is reactive", () => {
- const component = renderer.create(
+ const component = TestRenderer.create(
)
act(() => {
diff --git a/test/symbol.test.js b/test/symbol.test.js
index dda1adbc..a7c7bae7 100644
--- a/test/symbol.test.js
+++ b/test/symbol.test.js
@@ -1,14 +1,14 @@
// eslint-disable-next-line no-undef
delete global.Symbol
-import React, { Component } from "react"
+import React from "react"
import { observer } from "../src"
import { render } from "@testing-library/react"
import { newSymbol } from "../src/utils/utils"
test("work without Symbol", () => {
const Component1 = observer(
- class extends Component {
+ class extends React.Component {
render() {
return null
}
diff --git a/test/transactions.test.js b/test/transactions.test.js
index ed21528f..5f0d9401 100644
--- a/test/transactions.test.js
+++ b/test/transactions.test.js
@@ -1,27 +1,27 @@
-import React, { Component } from "react"
-import * as mobx from "mobx"
-import * as mobxReact from "../src"
+import React from "react"
+import { autorun, computed, observable, transaction } from "mobx"
+import { observer } from "../src"
import { render } from "@testing-library/react"
test("mobx issue 50", async () => {
const foo = {
- a: mobx.observable.box(true),
- b: mobx.observable.box(false),
- c: mobx.computed(function() {
+ a: observable.box(true),
+ b: observable.box(false),
+ c: computed(function() {
// console.log("evaluate c")
return foo.b.get()
})
}
function flipStuff() {
- mobx.transaction(() => {
+ transaction(() => {
foo.a.set(!foo.a.get())
foo.b.set(!foo.b.get())
})
}
let asText = ""
- mobx.autorun(() => (asText = [foo.a.get(), foo.b.get(), foo.c.get()].join(":")))
- const Test = mobxReact.observer(
- class Test extends Component {
+ autorun(() => (asText = [foo.a.get(), foo.b.get(), foo.c.get()].join(":")))
+ const Test = observer(
+ class Test extends React.Component {
render() {
return
{[foo.a.get(), foo.b.get(), foo.c.get()].join(",")}
}
@@ -38,11 +38,11 @@ test("mobx issue 50", async () => {
})
test("ReactDOM.render should respect transaction", () => {
- const a = mobx.observable.box(2)
- const loaded = mobx.observable.box(false)
+ const a = observable.box(2)
+ const loaded = observable.box(false)
const valuesSeen = []
- const Component = mobxReact.observer(() => {
+ const Component = observer(() => {
valuesSeen.push(a.get())
if (loaded.get()) return
{a.get()}
else return
loading
@@ -50,7 +50,7 @@ test("ReactDOM.render should respect transaction", () => {
const { container } = render(
)
- mobx.transaction(() => {
+ transaction(() => {
a.set(3)
a.set(4)
loaded.set(true)
@@ -61,10 +61,10 @@ test("ReactDOM.render should respect transaction", () => {
})
test("ReactDOM.render in transaction should succeed", () => {
- const a = mobx.observable.box(2)
- const loaded = mobx.observable.box(false)
+ const a = observable.box(2)
+ const loaded = observable.box(false)
const valuesSeen = []
- const Component = mobxReact.observer(() => {
+ const Component = observer(() => {
valuesSeen.push(a.get())
if (loaded.get()) return
{a.get()}
else return
loading
@@ -72,7 +72,7 @@ test("ReactDOM.render in transaction should succeed", () => {
let container
- mobx.transaction(() => {
+ transaction(() => {
a.set(3)
container = render(
).container
a.set(4)
diff --git a/test/ts/compile-ts.tsx b/test/ts/compile-ts.tsx
index 18554dac..305ebe7b 100644
--- a/test/ts/compile-ts.tsx
+++ b/test/ts/compile-ts.tsx
@@ -1,26 +1,25 @@
-import * as React from "react"
-import * as ReactDOM from "react-dom"
-import { Component } from "react"
-import * as ClassicPropTypes from "prop-types"
+import React from "react"
+import ReactDOM from "react-dom"
+import PropTypes from "prop-types"
import {
observer,
Provider,
inject,
Observer,
disposeOnUnmount,
- PropTypes,
+ PropTypes as MRPropTypes,
useLocalStore
} from "../../src"
@observer
-class T1 extends Component<{ pizza: number }, {}> {
+class T1 extends React.Component<{ pizza: number }, {}> {
render() {
return
{this.props.pizza}
}
}
const T2 = observer(
- class T2 extends Component<{ cake: number; zoem: any[] }> {
+ class T2 extends React.Component<{ cake: number; zoem: any[] }> {
defaultProps = { cake: 7 }
render() {
return (
@@ -30,7 +29,7 @@ const T2 = observer(
)
}
static propTypes = {
- zoem: PropTypes.arrayOrObservableArray
+ zoem: MRPropTypes.arrayOrObservableArray
}
}
)
@@ -50,7 +49,7 @@ const T5 = observer(() => {
})
@observer
-class T6 extends Component<{}, {}> {
+class T6 extends React.Component<{}, {}> {
render() {
return (
@@ -65,7 +64,7 @@ class T6 extends Component<{}, {}> {
const x = React.createElement(T3, { hamburger: 4 })
-class T7 extends Component<{ pizza: number }, {}> {
+class T7 extends React.Component<{ pizza: number }, {}> {
render() {
return {this.props.pizza}
}
@@ -74,7 +73,7 @@ React.createElement(observer(T7), { pizza: 4 })
ReactDOM.render( , document.body)
-class ProviderTest extends Component {
+class ProviderTest extends React.Component {
render() {
return (
@@ -85,7 +84,7 @@ class ProviderTest extends Component {
}
@inject(() => ({ x: 3 }))
-class T11 extends Component<{ pizza: number; x?: number }, {}> {
+class T11 extends React.Component<{ pizza: number; x?: number }, {}> {
render() {
return (
@@ -96,7 +95,7 @@ class T11 extends Component<{ pizza: number; x?: number }, {}> {
}
}
-class T15 extends Component<{ pizza: number; x?: number }, {}> {
+class T15 extends React.Component<{ pizza: number; x?: number }, {}> {
render() {
return (
@@ -108,7 +107,7 @@ class T15 extends Component<{ pizza: number; x?: number }, {}> {
}
const T16 = inject(() => ({ x: 3 }))(T15)
-class T17 extends Component<{}, {}> {
+class T17 extends React.Component<{}, {}> {
render() {
return (
@@ -124,7 +123,7 @@ class T17 extends Component<{}, {}> {
}
@inject("a", "b")
-class T12 extends Component<{ pizza: number }, {}> {
+class T12 extends React.Component<{ pizza: number }, {}> {
render() {
return
{this.props.pizza}
}
@@ -132,7 +131,7 @@ class T12 extends Component<{ pizza: number }, {}> {
@inject("a", "b")
@observer
-class T13 extends Component<{ pizza: number }, {}> {
+class T13 extends React.Component<{ pizza: number }, {}> {
render() {
return
{this.props.pizza}
}
@@ -143,7 +142,7 @@ const LoginContainer = inject((allStores, props) => ({
z: 7
}))(
observer(
- class _LoginContainer extends Component<
+ class _LoginContainer extends React.Component<
{
x: string
store?: { y: boolean; z: number }
@@ -151,7 +150,7 @@ const LoginContainer = inject((allStores, props) => ({
{}
> {
static contextTypes: React.ValidationMap
= {
- router: ClassicPropTypes.func.isRequired
+ router: PropTypes.func.isRequired
}
render() {
@@ -172,7 +171,7 @@ ReactDOM.render( , document.body)
store: { y: true, z: 2 }
}))
@observer
-class LoginContainer2 extends Component<
+class LoginContainer2 extends React.Component<
{
x: string
store?: { y: boolean }
@@ -180,7 +179,7 @@ class LoginContainer2 extends Component<
{}
> {
static contextTypes: React.ValidationMap = {
- router: ClassicPropTypes.func.isRequired
+ router: PropTypes.func.isRequired
}
render() {
@@ -196,20 +195,20 @@ class LoginContainer2 extends Component<
ReactDOM.render( , document.body)
-class ObserverTest extends Component {
+class ObserverTest extends React.Component {
render() {
return {() => test
}
}
}
-class ObserverTest2 extends Component {
+class ObserverTest2 extends React.Component {
render() {
return test
} />
}
}
@observer
-class ComponentWithoutPropsAndState extends Component<{}, {}> {
+class ComponentWithoutPropsAndState extends React.Component<{}, {}> {
componentDidUpdate() {}
render() {
@@ -232,9 +231,9 @@ App.wrappedComponent
@inject("store")
@observer
-class App2 extends Component<{ a: number }, {}> {}
+class App2 extends React.Component<{ a: number }, {}> {}
-class InjectSomeStores extends Component<{ x: any }, {}> {
+class InjectSomeStores extends React.Component<{ x: any }, {}> {
render() {
return Hello World
}
@@ -243,7 +242,7 @@ class InjectSomeStores extends Component<{ x: any }, {}> {
inject(({ x }) => ({ x }))(InjectSomeStores)
{
- class T extends Component<{ x: number }> {
+ class T extends React.Component<{ x: number }> {
render() {
return
}
@@ -255,7 +254,7 @@ inject(({ x }) => ({ x }))(InjectSomeStores)
{
// just to make sure it compiles
- class DisposeOnUnmountComponent extends Component<{}> {
+ class DisposeOnUnmountComponent extends React.Component<{}> {
@disposeOnUnmount
methodA = () => {}
diff --git a/test/ts/tsconfig.json b/test/ts/tsconfig.json
index c79f1eff..ece35986 100644
--- a/test/ts/tsconfig.json
+++ b/test/ts/tsconfig.json
@@ -1,6 +1,7 @@
{
"version": "1.7.5",
"compilerOptions": {
+ "esModuleInterop": true,
"target": "es5",
"strict": true,
"experimentalDecorators": true,