Skip to content

Commit

Permalink
General refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
oliverschwendener committed Sep 23, 2018
1 parent 789d800 commit c3301f8
Show file tree
Hide file tree
Showing 16 changed files with 29 additions and 39 deletions.
4 changes: 2 additions & 2 deletions src/tests/integration/count-file-repository.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { writeFileSync, unlinkSync, existsSync } from "fs";
import { Count } from "../../ts/count";
import { CountFileRepository } from "../../ts/count-file-repository";
import { Count } from "../../ts/count/count";
import { CountFileRepository } from "../../ts/count/count-file-repository";
import { join } from "path";

describe("CountFileRepository", (): void => {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { ExecutionArgumentValidatorExecutorCombinationManager } from "../../ts/execution-argument-validator-executor-combination-manager";
import { platform } from "os";
import { ExecutionArgumentValidatorExecutorCombinationManager } from "../../ts/execution-argument-validator-executor-combination-manager";
import { WindowsSettingsExecutor } from "../../ts/executors/windows-settings-executor";
import { WindowsSettingsExecutionArgumentValidator } from "../../ts/execution-argument-validators/windows-settings-execution-argument-validator";
import { MacOsSettingsExecutionArgumentValidator } from "../../ts/execution-argument-validators/mac-os-execution-argument-validator";
Expand All @@ -14,7 +14,7 @@ describe(ExecutionArgumentValidatorExecutorCombinationManager.name, (): void =>

const testConfig = {} as UserConfigOptions;

const combinations = new ExecutionArgumentValidatorExecutorCombinationManager(testConfig).getCombinations();
const combinations = ExecutionArgumentValidatorExecutorCombinationManager.getCombinations(testConfig);

const currentOperatingSystem = OperatingSystemHelpers.getOperatingSystemFromString(platform());

Expand Down
4 changes: 2 additions & 2 deletions src/tests/unit/count-manager.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { CountManager } from "../../ts/count-manager";
import { CountManager } from "../../ts/count/count-manager";
import { FakeCountRepository } from "./fake-count-repository";
import { Count } from "../../ts/count";
import { Count } from "../../ts/count/count";

describe("CountManager", (): void => {
describe("increaseCount", (): void => {
Expand Down
2 changes: 1 addition & 1 deletion src/tests/unit/execution-service.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { ExecutionService } from "../../ts/execution-service";
import { ExecutionArgumentValidatorExecutorCombination } from "../../ts/execution-argument-validator-executor-combination";
import { CountManager } from "../../ts/count-manager";
import { CountManager } from "../../ts/count/count-manager";
import { FakeCountRepository } from "./fake-count-repository";
import { UserConfigOptions } from "../../ts/user-config/config-options";
import { FakeExecutor } from "./fake-executor";
Expand Down
4 changes: 2 additions & 2 deletions src/tests/unit/fake-count-repository.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { CountRepository } from "../../ts/count-repository";
import { Count } from "../../ts/count";
import { CountRepository } from "../../ts/count/count-repository";
import { Count } from "../../ts/count/count";

export class FakeCountRepository implements CountRepository {
private count: Count;
Expand Down
4 changes: 2 additions & 2 deletions src/tests/unit/search-engine.test.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { SearchResultItem } from "../../ts/search-result-item";
import { SearchEngine } from "./../../ts/search-engine";
import { CountManager } from "../../ts/count-manager";
import { CountManager } from "../../ts/count/count-manager";
import { FakeCountRepository } from "./fake-count-repository";
import { Count } from "../../ts/count";
import { Count } from "../../ts/count/count";

describe("SearchEngine", (): void => {
const threshold = 4; // same as default config
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,8 @@ import { CalculatorExecutor } from "./executors/calculator-executor";
import { CalculatorExecutionArgumentValidator } from "./execution-argument-validators/calculator-execution-argument-validator";

export class ExecutionArgumentValidatorExecutorCombinationManager {
private combinations: ExecutionArgumentValidatorExecutorCombination[];

constructor(config: UserConfigOptions) {
this.combinations = [
public static getCombinations(config: UserConfigOptions): ExecutionArgumentValidatorExecutorCombination[] {
const result = [
{
executor: new CommandLineExecutor(),
validator: new CommandLineExecutionArgumentValidator(),
Expand Down Expand Up @@ -64,21 +62,19 @@ export class ExecutionArgumentValidatorExecutorCombinationManager {

switch (OperatingSystemHelpers.getOperatingSystemFromString(platform())) {
case OperatingSystem.Windows: {
this.combinations.push({
result.push({
executor: new WindowsSettingsExecutor(),
validator: new WindowsSettingsExecutionArgumentValidator(),
});
}
case OperatingSystem.macOS: {
this.combinations.push({
result.push({
executor: new MacOsSettingsExecutor(),
validator: new MacOsSettingsExecutionArgumentValidator(),
});
}
}
}

public getCombinations(): ExecutionArgumentValidatorExecutorCombination[] {
return this.combinations;
return result;
}
}
2 changes: 1 addition & 1 deletion src/ts/execution-service.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { ExecutionArgumentValidatorExecutorCombination } from "./execution-argument-validator-executor-combination";
import { CountManager } from "./count-manager";
import { CountManager } from "./count/count-manager";
import { UserConfigOptions } from "./user-config/config-options";
import { IpcEmitter } from "./ipc-emitter";

Expand Down
14 changes: 4 additions & 10 deletions src/ts/input-validator-searcher-combination-manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,22 +15,20 @@ import { SearchPluginsInputValidator } from "./input-validators/search-plugins-i
import { InputValidatorSearcherCombination } from "./input-validator-searcher-combination";
import { UeliHelpers } from "./helpers/ueli-helpers";
import { UserConfigOptions } from "./user-config/config-options";
import { CountManager } from "./count-manager";
import { CountFileRepository } from "./count-file-repository";
import { CountManager } from "./count/count-manager";
import { CountFileRepository } from "./count/count-file-repository";
import { Injector } from "./injector";
import { platform } from "os";
import { CustomCommandSearcher } from "./searcher/custom-command-searcher";
import { CustomCommandInputValidator } from "./input-validators/custom-command-input-validator";

export class InputValidatorSearcherCombinationManager {
private combinations: InputValidatorSearcherCombination[];

constructor(config: UserConfigOptions) {
public static getCombinations(config: UserConfigOptions): InputValidatorSearcherCombination[] {
const iconSet = Injector.getIconSet(platform());
const countManager = new CountManager(new CountFileRepository(UeliHelpers.countFilePath));
const environmentVariableCollection = process.env as { [key: string]: string };

this.combinations = [
return [
{
searcher: new CalculatorSearcher(),
validator: new CalculatorInputValidator(),
Expand Down Expand Up @@ -65,8 +63,4 @@ export class InputValidatorSearcherCombinationManager {
},
];
}

public getCombinations(): InputValidatorSearcherCombination[] {
return this.combinations;
}
}
12 changes: 6 additions & 6 deletions src/ts/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ import { InputValidatorSearcherCombinationManager } from "./input-validator-sear
import { UeliHelpers } from "./helpers/ueli-helpers";
import { defaultConfig } from "./default-config";
import { UserConfigFileRepository } from "./user-config/config-file-repository";
import { CountManager } from "./count-manager";
import { CountFileRepository } from "./count-file-repository";
import { CountManager } from "./count/count-manager";
import { CountFileRepository } from "./count/count-file-repository";
import { ProductionIpcEmitter } from "./production-ipc-emitter";
import { AutoCompletionService } from "./auto-completion/autocompletion-service";
import { FilePathAutoCompletionValidator } from "./auto-completion/file-path-autocompletion-validator";
Expand All @@ -32,10 +32,10 @@ const filePathExecutor = new FilePathExecutor();
const appConfigRepository = new ElectronStoreAppConfigRepository();
const userConfigRepository = new UserConfigFileRepository(defaultConfig, appConfigRepository.getAppConfig().userSettingsFilePath);
let config = userConfigRepository.getConfig();
let inputValidationService = new InputValidationService(config, new InputValidatorSearcherCombinationManager(config).getCombinations());
let inputValidationService = new InputValidationService(config, InputValidatorSearcherCombinationManager.getCombinations(config));
const ipcEmitter = new ProductionIpcEmitter();
let executionService = new ExecutionService(
new ExecutionArgumentValidatorExecutorCombinationManager(config).getCombinations(),
ExecutionArgumentValidatorExecutorCombinationManager.getCombinations(config),
new CountManager(new CountFileRepository(UeliHelpers.countFilePath)),
config,
ipcEmitter);
Expand Down Expand Up @@ -182,9 +182,9 @@ function hideMainWindow(): void {

function reloadApp(preventMainWindowReload?: boolean): void {
config = new UserConfigFileRepository(defaultConfig, appConfigRepository.getAppConfig().userSettingsFilePath).getConfig();
inputValidationService = new InputValidationService(config, new InputValidatorSearcherCombinationManager(config).getCombinations());
inputValidationService = new InputValidationService(config, InputValidatorSearcherCombinationManager.getCombinations(config));
executionService = new ExecutionService(
new ExecutionArgumentValidatorExecutorCombinationManager(config).getCombinations(),
ExecutionArgumentValidatorExecutorCombinationManager.getCombinations(config),
new CountManager(new CountFileRepository(UeliHelpers.countFilePath)),
config,
ipcEmitter);
Expand Down
2 changes: 1 addition & 1 deletion src/ts/search-engine.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import * as Fuse from "fuse.js";
import { SearchResultItem } from "./search-result-item";
import { CountManager } from "./count-manager";
import { CountManager } from "./count/count-manager";

export class SearchEngine {
private unsortedSearchResults: SearchResultItem[];
Expand Down
2 changes: 1 addition & 1 deletion src/ts/searcher/search-plugins-searcher.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import { SearchResultItem } from "../search-result-item";
import { Searcher } from "./searcher";
import { defaultConfig } from "../default-config";
import { UserConfigOptions } from "../user-config/config-options";
import { CountManager } from "../count-manager";
import { CountManager } from "../count/count-manager";
import { IconSet } from "../icon-sets/icon-set";

export class SearchPluginsSearcher implements Searcher {
Expand Down

0 comments on commit c3301f8

Please sign in to comment.