Skip to content

Commit

Permalink
wrote the tests of #1874 that came out to be successful
Browse files Browse the repository at this point in the history
  • Loading branch information
pratyushbh committed May 25, 2023
1 parent 0d30a59 commit f880fba
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 11 deletions.
1 change: 1 addition & 0 deletions examples/SimpleSlider.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ export default class SimpleSlider extends Component {
dots: true,
infinite: true,
speed: 500,
initialSlide: 2,
slidesToShow: 1,
slidesToScroll: 1
};
Expand Down
26 changes: 17 additions & 9 deletions examples/__tests__/SimpleSlider.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@ import {
getActiveSlidesCount,
getActiveSlidesText,
getButtons,
getButtonsListItem
getButtonsListItem,
getCurrentSlide
} from "../../test-utils";

describe("SimpleSlider example", () => {
Expand All @@ -23,7 +24,14 @@ describe("SimpleSlider example", () => {
const { container } = render(<SimpleSlider />);
expect(container.getElementsByClassName("slick-cloned").length).toBe(7);
});
it("should have 1 active slide", function() {
it("should have 1 current slide(When initialSlide is 2)", function() {
const { container } = render(<SimpleSlider />);
expect(
container.querySelectorAll(".slick-slide.slick-current").length
).toBe(1);
expect(parseInt(getCurrentSlide(container).textContent) - 1).toBe(2);
});
it("should have 1 active slide(When initialSlide is 2)", function() {
const { container } = render(<SimpleSlider />);
expect(container.querySelectorAll(".slick-slide.slick-active").length).toBe(
1
Expand All @@ -32,7 +40,7 @@ describe("SimpleSlider example", () => {
Array.from(getActiveSlide(container).children).map(
e => parseInt(e.textContent) - 1
)[0]
).toBe(0);
).toBe(2);
});
it("should have 6 dots", function() {
const { container } = render(<SimpleSlider />);
Expand All @@ -55,30 +63,30 @@ describe("SimpleSlider example", () => {
const { container } = render(<SimpleSlider />);
expect(container.getElementsByClassName("slick-next").length).toBe(1);
});
it("should got to second slide when next button is clicked", function() {
it("should got to next slide when next button is clicked", function() {
const { container } = render(<SimpleSlider />);
clickNext(container);
expect(
container.querySelectorAll(".slick-slide.slick-active")[0].textContent
).toBe("2");
).toBe("4");
expect(container.querySelectorAll(".slick-dots .slick-active").length).toBe(
1
);
expect(
container.querySelectorAll(".slick-dots")[0].children[1]
container.querySelectorAll(".slick-dots")[0].children[3]
).toHaveClass("slick-active");
});
it("should goto last slide when prev button is clicked", function() {
it("should goto previous slide when prev button is clicked", function() {
const { container } = render(<SimpleSlider />);
clickPrevious(container);
expect(
container.querySelectorAll(".slick-slide.slick-active")[0].textContent
).toBe("6");
).toBe("2");
expect(container.querySelectorAll(".slick-dots .slick-active").length).toBe(
1
);
expect(
container.querySelectorAll(".slick-dots")[0].children[5]
container.querySelectorAll(".slick-dots")[0].children[1]
).toHaveClass("slick-active");
});
it("should goto 4th slide when 4th dot is clicked", function() {
Expand Down
6 changes: 4 additions & 2 deletions src/inner-slider.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ export class InnerSlider extends React.Component {
this.state = {
...initialState,
currentSlide: this.props.initialSlide,
targetSlide: this.props.initialSlide ? this.props.initialSlide : 0,
slideCount: React.Children.count(this.props.children)
};
this.callbackTimers = [];
Expand Down Expand Up @@ -304,7 +305,8 @@ export class InnerSlider extends React.Component {
};
checkImagesLoad = () => {
let images =
(this.list && this.list.querySelectorAll &&
(this.list &&
this.list.querySelectorAll &&
this.list.querySelectorAll(".slick-slide img")) ||
[];
let imagesCount = images.length,
Expand All @@ -316,7 +318,7 @@ export class InnerSlider extends React.Component {
image.onclick = () => image.parentNode.focus();
} else {
const prevClickHandler = image.onclick;
image.onclick = (e) => {
image.onclick = e => {
prevClickHandler(e);
image.parentNode.focus();
};
Expand Down

0 comments on commit f880fba

Please sign in to comment.