Skip to content

Commit e94e57a

Browse files
Allow Xcode paths with different patterns (#19)
1 parent 6e6790d commit e94e57a

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

Diff for: __tests__/xcode-utils.test.ts

+3
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ const buildFsDirentItem = (name: string, opt: { isSymbolicLink: boolean; isDirec
2222
const fakeReadDirResults = [
2323
buildFsDirentItem("Xcode_2.app", { isSymbolicLink: true, isDirectory: false }),
2424
buildFsDirentItem("Xcode.app", { isSymbolicLink: false, isDirectory: true }),
25+
buildFsDirentItem("Xcode12.4.app", { isSymbolicLink: false, isDirectory: true }),
2526
buildFsDirentItem("Xcode_11.1.app", { isSymbolicLink: false, isDirectory: true }),
2627
buildFsDirentItem("Xcode_11.1_beta.app", { isSymbolicLink: true, isDirectory: false }),
2728
buildFsDirentItem("Xcode_11.2.1.app", { isSymbolicLink: false, isDirectory: true }),
@@ -40,6 +41,8 @@ describe("getInstalledXcodeApps", () => {
4041
it("versions are filtered correctly", () => {
4142
readdirSyncSpy.mockImplementation(() => fakeReadDirResults);
4243
const expectedVersions: string[] = [
44+
"/Applications/Xcode.app",
45+
"/Applications/Xcode12.4.app",
4346
"/Applications/Xcode_11.1.app",
4447
"/Applications/Xcode_11.2.1.app",
4548
"/Applications/Xcode_11.4_beta.app",

Diff for: src/xcode-utils.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export const parsePlistFile = (plistPath: string): plist.PlistObject | null => {
2626

2727
export const getInstalledXcodeApps = (): string[] => {
2828
const applicationsDirectory = "/Applications";
29-
const xcodeAppFilenameRegex = /Xcode_([\d.]+)(_beta)?\.app/;
29+
const xcodeAppFilenameRegex = /^Xcode.*\.app$/;
3030

3131
const allApplicationsChildItems = fs.readdirSync(applicationsDirectory, { encoding: "utf8", withFileTypes: true });
3232
const allApplicationsRealItems = allApplicationsChildItems.filter(child => !child.isSymbolicLink() && child.isDirectory());

0 commit comments

Comments
 (0)