1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
unleash.unleash/public/js/__tests__/components/feature/FeatureList-test.js

59 lines
2.1 KiB
JavaScript
Raw Normal View History

jest.dontMock("../../../components/feature/FeatureList");
jest.dontMock("../../../components/feature/Feature");
var React = require("react/addons");
var TestUtils = React.addons.TestUtils;
var FeatureList = require("../../../components/feature/FeatureList");
describe("FeatureList", function () {
var Component, features;
beforeEach(function() {
features = [
{ name: "featureX", strategy: "other" },
{ name: "group.featureY", strategy: "default" }
];
2015-03-17 22:01:46 +01:00
var strategies=[
{ name: "default"}
];
Component = TestUtils .renderIntoDocument(<FeatureList features={features} strategies={strategies} />);
});
afterEach(function() {
React.unmountComponentAtNode(document.body);
});
it("should render all features", function() {
var features = Component.getDOMNode().querySelectorAll(".feature");
expect(features.length).toEqual(2);
});
it("should filter list of features", function() {
var filterNode = Component.refs.filter.getDOMNode();
TestUtils.Simulate.change(filterNode, {target: {value: "group"}});
var features = Component.getDOMNode().querySelectorAll(".feature");
expect(features.length).toEqual(1);
});
it("should filter list of features ignoring case", function() {
var filterNode = Component.refs.filter.getDOMNode();
TestUtils.Simulate.change(filterNode, {target: {value: "GROUP"}});
var features = Component.getDOMNode().querySelectorAll(".feature");
expect(features.length).toEqual(1);
expect(features[0].textContent).toMatch("group");
});
it("should filter list of features by strategy name", function() {
var searchString = "other";
var filterNode = Component.refs.filter.getDOMNode();
TestUtils.Simulate.change(filterNode, {target: {value: searchString}});
var features = Component.getDOMNode().querySelectorAll(".feature");
expect(features.length).toEqual(1);
expect(features[0].textContent).toMatch(searchString);
});
2015-03-17 22:01:46 +01:00
});