Skip to content
This repository was archived by the owner on Oct 19, 2018. It is now read-only.

Commit 89c72c5

Browse files
committed
React.is_valid_element -> React.is_valid_element?
1 parent 8fadab9 commit 89c72c5

File tree

4 files changed

+15
-9
lines changed

4 files changed

+15
-9
lines changed

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ Whitespace conventions:
2626

2727
### Deprecated
2828

29+
- `React.is_valid_element` is deprecated in favor of `React.is_valid_element?`.
2930
- `expect(component).to render('<div />')` is now deprecated in favor of `expect(component).to render_static_html('<div />')`, which is much clearer.
3031

3132
### Fixed

lib/react/test/utils.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@ class Utils
44
`var ReactTestUtils = React.addons.TestUtils`
55

66
def self.render_into_document(element, options = {})
7-
raise "You should pass a valid React::Element" unless React.is_valid_element(element)
7+
raise "You should pass a valid React::Element" unless React.is_valid_element?(element)
88
native_instance = `ReactTestUtils.renderIntoDocument(#{element.to_n})`
99

1010
if `#{native_instance}._getOpalInstance !== undefined`
1111
`#{native_instance}._getOpalInstance()`
12-
elsif `ReactTestUtils.isDOMComponent(#{native_instance}) && React.findDOMNode !== undefined`
12+
elsif `ReactTestUtils.isDOMComponent(#{native_instance}) && React.findDOMNode !== undefined`
1313
`React.findDOMNode(#{native_instance})`
1414
else
1515
native_instance

lib/react/top_level.rb

+5
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,11 @@ def self.render(element, container)
6969
end
7070

7171
def self.is_valid_element(element)
72+
%x{ console.error("Warning: `is_valid_element` is deprecated in favor of `is_valid_element?`."); }
73+
element.kind_of?(React::Element) && `React.isValidElement(#{element.to_n})`
74+
end
75+
76+
def self.is_valid_element?(element)
7277
element.kind_of?(React::Element) && `React.isValidElement(#{element.to_n})`
7378
end
7479

spec/react/react_spec.rb

+7-7
Original file line numberDiff line numberDiff line change
@@ -6,36 +6,36 @@
66
React::API.clear_component_class_cache
77
end
88

9-
describe "is_valid_element" do
9+
describe "is_valid_element?" do
1010
it "should return true if passed a valid element" do
1111
element = React::Element.new(`React.createElement('div')`)
12-
expect(React.is_valid_element(element)).to eq(true)
12+
expect(React.is_valid_element?(element)).to eq(true)
1313
end
1414

1515
it "should return false is passed a non React element" do
1616
element = React::Element.new(`{}`)
17-
expect(React.is_valid_element(element)).to eq(false)
17+
expect(React.is_valid_element?(element)).to eq(false)
1818
end
1919
end
2020

2121
describe "create_element" do
2222
it "should create a valid element with only tag" do
2323
element = React.create_element('div')
24-
expect(React.is_valid_element(element)).to eq(true)
24+
expect(React.is_valid_element?(element)).to eq(true)
2525
end
2626

2727
context "with block" do
2828
it "should create a valid element with text as only child when block yield String" do
2929
element = React.create_element('div') { "lorem ipsum" }
30-
expect(React.is_valid_element(element)).to eq(true)
30+
expect(React.is_valid_element?(element)).to eq(true)
3131
expect(element.props.children).to eq("lorem ipsum")
3232
end
3333

3434
it "should create a valid element with children as array when block yield Array of element" do
3535
element = React.create_element('div') do
3636
[React.create_element('span'), React.create_element('span'), React.create_element('span')]
3737
end
38-
expect(React.is_valid_element(element)).to eq(true)
38+
expect(React.is_valid_element?(element)).to eq(true)
3939
expect(element.props.children.length).to eq(3)
4040
end
4141

@@ -75,7 +75,7 @@ def render
7575

7676
it "should create a valid element provided class defined `render`" do
7777
element = React.create_element(Foo)
78-
expect(React.is_valid_element(element)).to eq(true)
78+
expect(React.is_valid_element?(element)).to eq(true)
7979
end
8080

8181
it "should allow creating with properties" do

0 commit comments

Comments
 (0)