public void TestInitialise() { _primitiveService = new Mock <IOpenApiPrimitiveToTypeService>(); _referenceService = new Mock <IOpenApiReferenceToTypeService>(); _objectService = new Mock <IOpenApiObjectToTypeService>(); _keyStore = new Mock <IObjectsProcessingKeyStore>(); _service = new OpenApiUmbrellaTypeResolver(_primitiveService.Object, _referenceService.Object); _definitions = new Dictionary <string, IOpenApiType>(); _suggestedName = Guid.NewGuid().ToString(); _primitive = new OpenApiPrimitiveType(); _referenced = new OpenApiReferencedType(); _object = new OpenApiObjectType(); _array = new OpenApiArrayType(); _primitiveService.Setup(s => s.GetType(_primitive, It.IsAny <string>())) .Returns(typeof(int)); _referenceService.Setup(s => s.GetType(_objectService.Object, _service, _keyStore.Object, _referenced, _definitions)) .Returns(typeof(object)); _objectService.Setup(s => s.GetType(_object, _definitions, It.IsAny <string>(), _keyStore.Object)) .Returns(typeof(object)); }
protected override void BeginProcessing() { base.BeginProcessing(); var filePathFormatService = new FilePathFormattingService(); var jsonTypeParser = new OpenApiSpecUmbrellaTypeParser <JsonCatchAllTypeModel>(); var jsonObjectParser = new OpenApiSpecObjectParser <JsonCatchAllTypeModel>(jsonTypeParser); var yamlTypeParser = new OpenApiSpecUmbrellaTypeParser <YamlCatchAllTypeModel>(); var yamlObjectParser = new OpenApiSpecObjectParser <YamlCatchAllTypeModel>(yamlTypeParser); var lastTokenService = new LastTokenInPathService(); var enumFromStringService = new EnumFromStringService(); var shortNameService = new OpenApiEndpointShortNameService(lastTokenService); var moduleBuilderProvider = new ModuleBuilderProvider(); var openApiPrimitiveService = new OpenApiPrimitiveToTypeService(new OpenApiEnumToTypeService(moduleBuilderProvider)); var openApiTypeResolver = new OpenApiUmbrellaTypeResolver(openApiPrimitiveService, new OpenApiReferenceToTypeService(lastTokenService)); var openApiObjectToTypeService = new OpenApiObjectToTypeService(openApiTypeResolver, new StealFieldsFromOpenApiObjectTypeService(openApiTypeResolver), moduleBuilderProvider); //establish current ps session working directory using (var session = PowerShell.Create(RunspaceMode.CurrentRunspace)) { session.AddCommand("get-location"); _pwd = session.Invoke <PathInfo>() .FirstOrDefault()?.Path; } _specImportService = new ImportSpecFromFilePathService(filePathFormatService, new JsonFileToOpenApiModelService(jsonObjectParser, jsonTypeParser, new OpenApiJsonEndpointsParser(jsonTypeParser, jsonObjectParser, enumFromStringService), shortNameService), new YamlFileToOpenApiModelService(yamlObjectParser, yamlTypeParser, new OpenApiYamlEndpointsParser(yamlTypeParser, yamlObjectParser, enumFromStringService), shortNameService), new OpenApiSpecModelToGeneratedTypesService(openApiObjectToTypeService, openApiTypeResolver, new OpenApiEndpointToEndpointService(openApiTypeResolver, openApiPrimitiveService, openApiObjectToTypeService))); }