-
Notifications
You must be signed in to change notification settings - Fork 97
/
convertConfig.test.ts
63 lines (55 loc) 路 1.94 KB
/
convertConfig.test.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
import { ResultStatus, FailedResult, SucceededDataResult } from "../types";
import { convertConfig, ConvertConfigDependencies } from "./convertConfig";
import { OriginalConfigurations } from "../input/findOriginalConfigurations";
const createStubDependencies = (
overrides: Pick<ConvertConfigDependencies, "findOriginalConfigurations">,
) => ({
convertRules: jest.fn(),
reportConversionResults: jest.fn(),
writeConversionResults: jest.fn().mockReturnValue(Promise.resolve()),
...overrides,
});
const createStubOriginalConfigurationsData = () => ({
tslint: {
rules: [],
rulesDirectory: [],
},
});
describe("convertConfig", () => {
it("returns the failure result when finding the original configurations fails", async () => {
// Arrange
const findError: FailedResult = {
errors: [],
status: ResultStatus.Failed,
};
const dependencies = createStubDependencies({
findOriginalConfigurations: async () => findError,
});
const settings = {
config: "./eslintrc.js",
};
// Act
const result = await convertConfig(dependencies, settings);
// Assert
expect(result).toEqual(findError);
});
it("returns a successful result when finding the original configurations succeeds", async () => {
// Arrange
const findSuccess: SucceededDataResult<OriginalConfigurations> = {
data: createStubOriginalConfigurationsData(),
status: ResultStatus.Succeeded,
};
const dependencies = createStubDependencies({
findOriginalConfigurations: async () => findSuccess,
});
const settings = {
config: "./eslintrc.js",
};
// Act
const result = await convertConfig(dependencies, settings);
// Assert
expect(result).toEqual({
status: ResultStatus.Succeeded,
});
});
});