@samitouri / QOS-React-2 / commits / 346c8f5e6e

test case for ReactTextComponent rootID escaping

Thomas Aylott committed Dec 17, 2013 at 05:01 UTC 346c8f5e6efb16912000448961bc7b466bcf5659
1 file changed +38
src/core/__tests__/ReactTextComponent-test.js new
+38
@@ -0,0 +1,38 @@
1 +/**
2 + * Copyright 2013 Facebook, Inc.
3 + *
4 + * Licensed under the Apache License, Version 2.0 (the "License");
5 + * you may not use this file except in compliance with the License.
6 + * You may obtain a copy of the License at
7 + *
8 + * http://www.apache.org/licenses/LICENSE-2.0
9 + *
10 + * Unless required by applicable law or agreed to in writing, software
11 + * distributed under the License is distributed on an "AS IS" BASIS,
12 + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 + * See the License for the specific language governing permissions and
14 + * limitations under the License.
15 + *
16 + * @jsx React.DOM
17 + * @emails react-core
18 + */
19 +
20 +"use strict";
21 +
22 +var React;
23 +
24 +describe('ReactTextComponent', function() {
25 + beforeEach(function() {
26 + React = require('React');
27 + });
28 +
29 + it('should escape the rootID', function(){
30 + var ThisThingShouldBeEscaped = '">>> LULZ <<<"';
31 + var ThisThingWasBeEscaped = '&quot;&gt;&gt;&gt; LULZ &lt;&lt;&lt;&quot;';
32 + var thing = React.DOM.div(null, React.DOM.span({key:ThisThingShouldBeEscaped}, ["LULZ"]));
33 + React.renderComponentToString(thing, function(html){
34 + expect(html).not.toContain(ThisThingShouldBeEscaped);
35 + expect(html).toContain(ThisThingWasBeEscaped);
36 + });
37 + })
38 +});