Files
SCM-Manager/scm-ui/src/repos/components/RepositoryNavLink.test.js

58 lines
1.3 KiB
JavaScript
Raw Normal View History

2018-09-27 16:32:37 +02:00
// @flow
import React from "react";
import { shallow, mount } from "enzyme";
import "../../tests/enzyme";
import "../../tests/i18n";
import ReactRouterEnzymeContext from "react-router-enzyme-context";
import RepositoryNavLink from "./RepositoryNavLink";
describe("RepositoryNavLink", () => {
const options = new ReactRouterEnzymeContext();
it("should render nothing, if the sources link is missing", () => {
const repository = {
2018-11-07 16:42:26 +01:00
namespace: "Namespace",
name: "Repo",
type: "GIT",
2018-09-27 16:32:37 +02:00
_links: {}
};
const navLink = shallow(
<RepositoryNavLink
repository={repository}
linkName="sources"
to="/sources"
label="Sources"
2018-11-07 16:42:26 +01:00
activeOnlyWhenExact={true}
2018-09-27 16:32:37 +02:00
/>,
options.get()
);
expect(navLink.text()).toBe("");
});
it("should render the navLink", () => {
const repository = {
2018-11-07 16:42:26 +01:00
namespace: "Namespace",
name: "Repo",
type: "GIT",
2018-09-27 16:32:37 +02:00
_links: {
sources: {
href: "/sources"
}
}
};
const navLink = mount(
<RepositoryNavLink
repository={repository}
linkName="sources"
to="/sources"
label="Sources"
2018-11-07 16:42:26 +01:00
activeOnlyWhenExact={true}
2018-09-27 16:32:37 +02:00
/>,
options.get()
);
expect(navLink.text()).toBe("Sources");
});
});