/ / Jest + React TestUtils: Renderuj tag <meta> za pomocą TestUtils.renderIntoDocument - reaktjs, jestjs, reagjs-testutils

Jest + React TestUtils: Renderuj znacznik <meta> za pomocą TestUtils.renderIntoDocument - reactjs, jestjs, reactjs-testutils

Piszę składnik React, który zależy odmetatag o określonej nazwie, która ma być obecna w obszarze głowy DOM, więc próbuję użyć TestUtils.renderIntoDocument do utworzenia tego metatagu do uruchomienia mojego testu Jest, który nie działa.

jest.dontMock("../channel-finder");

describe("Channel Finder Component", function() {
it("Renders properly with no props", function() {

var React = require("react/addons");
var ChannelFinder = require("../channel-finder");
var TestUtils = React.addons.TestUtils;

// Render into Document
var ChannelFinderComponent = TestUtils.renderIntoDocument(
<ChannelFinder />
);
var ClientIpMetaTag = TestUtils.renderIntoDocument(
<meta name="client-ip" content="50.200.28.114">
);

// Find Rendered DOM Component
var ChannelFinderDomElement = TestUtils.findRenderedDOMComponentWithTag(ChannelFinderComponent, "div");

// Assert Results
expect(ChannelFinderDomElement.getDOMNode().textContent).toEqual("");
});
});

Czy można to osiągnąć za pomocą React TestUtils lub React jakoś?

Wynikiem jest bardzo długi ślad stosu błędów: wprowadź opis obrazu tutaj

Mój plik preprocessor.js:

// preprocessor.js
var ReactTools = require("react-tools");
module.exports = {
process: function(src) {
return ReactTools.transform(src);
}
};

Odpowiedzi:

0 dla odpowiedzi № 1

Dzięki za pingowanie mnie na ten temat, tak jak mi to dałomotywacja do ponownego odwiedzenia go i okazuje się, że tajemniczy komunikat o błędzie nie mówi już tego, co zwykł mówić, zamiast tego mówi, że mój metatag nie ma prawidłowego zakończenia JSX (DUH!), więc oto, co sprawiło, że zadziałał:

var ClientIpMetaTag = TestUtils.renderIntoDocument(
<meta name="client-ip" content="50.200.28.114" />
);

Samo dodanie ukośnika przed strzałką w prawo sprawiło, że był to poprawny JSX. Widziałem ten bardziej pomocny komunikat po uaktualnieniu do React 0.13, co prawdopodobnie poprawiło komunikaty o błędach (zgaduję).