Skip to content
This repository was archived by the owner on Dec 29, 2022. It is now read-only.

Commit fc99a7c

Browse files
committed
updated test cases
1 parent 7103c42 commit fc99a7c

File tree

4 files changed

+35
-18
lines changed

4 files changed

+35
-18
lines changed

.huskyrc.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
22
"hooks": {
3-
"pre-commit": "pretty-quick --staged"
3+
"pre-commit": "pretty-quick --staged && sh precommit-lint.sh"
44
}
55
}

src/__tests__/__snapshots__/index.snapshot.test.tsx.snap

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ exports[`Renders Horizontal Masonry with 2 columns 1`] = `
4141
</ScrollView>
4242
`;
4343

44-
exports[`Renders Horizontal Masonry with 2 columns 2`] = `
44+
exports[`Renders Horizontal Masonry with 3 columns 1`] = `
4545
<ScrollView
4646
contentContainerStyle={
4747
Object {
@@ -64,7 +64,7 @@ exports[`Renders Horizontal Masonry with 2 columns 2`] = `
6464
Text 1
6565
</Text>
6666
<Text>
67-
Text 2
67+
Text 3
6868
</Text>
6969
</View>
7070
<View
@@ -149,7 +149,7 @@ exports[`Renders Vertical Masonry with 3 columns 1`] = `
149149
Text 1
150150
</Text>
151151
<Text>
152-
Text 2
152+
Text 3
153153
</Text>
154154
</View>
155155
<View

src/__tests__/index.snapshot.test.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import React from "react";
22
import renderer from "react-test-renderer";
3-
import RNMasonryScrollView, { generateMasonryGrid } from "../index";
3+
import RNMasonryScrollView from "../index";
44
import { Text } from "react-native";
55

66
const column1Text = "Text 1";
@@ -26,7 +26,7 @@ const VMasonryComponentThreeColumns = () => {
2626
{[
2727
<Text key={1}>{column1Text}</Text>,
2828
<Text key={2}>{column2Text}</Text>,
29-
<Text key={3}>{column2Text}</Text>
29+
<Text key={3}>{column3Text}</Text>
3030
]}
3131
</RNMasonryScrollView>
3232
);
@@ -56,13 +56,13 @@ const HMasonryComponentThreeColumns = () => {
5656
{[
5757
<Text key={1}>{column1Text}</Text>,
5858
<Text key={2}>{column2Text}</Text>,
59-
<Text key={3}>{column2Text}</Text>
59+
<Text key={3}>{column3Text}</Text>
6060
]}
6161
</RNMasonryScrollView>
6262
);
6363
};
6464

65-
it("Renders Horizontal Masonry with 2 columns", () => {
65+
it("Renders Horizontal Masonry with 3 columns", () => {
6666
const tree = renderer.create(<HMasonryComponentThreeColumns />).toJSON();
6767
expect(tree).toMatchSnapshot();
6868
});

src/__tests__/index.unit.test.tsx

Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,36 @@
11
import React from "react";
22
import { Text } from "react-native";
3-
import { fireEvent, render, wait } from "@testing-library/react-native";
3+
import { render } from "@testing-library/react-native";
44
import RNMasonryScrollView, { generateMasonryGrid } from "../index";
55

66
const column1Text = "Text 1";
77
const column2Text = "Text 2";
88

9-
const MasonryTestComponent = () => {
9+
const MasonryTestComponent = (
10+
{
11+
isHorizontal = true
12+
}: {
13+
isHorizontal?: boolean;
14+
} = { isHorizontal: true }
15+
) => {
1016
return (
11-
<RNMasonryScrollView>
17+
<RNMasonryScrollView horizontal={isHorizontal}>
1218
{[<Text key={1}>{column1Text}</Text>, <Text key={2}>{column2Text}</Text>]}
1319
</RNMasonryScrollView>
1420
);
1521
};
1622

1723
it("Renders Vertical Masonry", () => {
18-
const {
19-
getByTestId,
20-
getByText,
21-
queryByTestId,
22-
baseElement,
23-
queryByText
24-
} = render(<MasonryTestComponent />);
24+
const { queryByText } = render(<MasonryTestComponent isHorizontal={false} />);
25+
26+
const text1 = queryByText(column1Text);
27+
expect(text1).toBeTruthy();
28+
const text2 = queryByText(column2Text);
29+
expect(text2).toBeTruthy();
30+
});
31+
32+
it("Renders Horizontal Masonry", () => {
33+
const { queryByText } = render(<MasonryTestComponent />);
2534

2635
const text1 = queryByText(column1Text);
2736
expect(text1).toBeTruthy();
@@ -33,4 +42,12 @@ it("Masonry gets generated properly", () => {
3342
const masonryArray = generateMasonryGrid([1, 2, 3, 4], 2);
3443
expect(masonryArray[0]).toStrictEqual([1, 3]);
3544
expect(masonryArray[1]).toStrictEqual([2, 4]);
45+
46+
const masonryArray2 = generateMasonryGrid([], 2);
47+
expect(masonryArray2).toStrictEqual([]);
48+
49+
const masonryArray3 = generateMasonryGrid([1, 2, 3, 4, 5, 6, 7], 3);
50+
expect(masonryArray3[0]).toStrictEqual([1, 4, 7]);
51+
expect(masonryArray3[1]).toStrictEqual([2, 5]);
52+
expect(masonryArray3[2]).toStrictEqual([3, 6]);
3653
});

0 commit comments

Comments
 (0)