public void Setup()
        {
            var dbOptions = new DbContextOptionsBuilder <StateManagementContext>()
                            .UseInMemoryDatabase(databaseName: Guid.NewGuid().ToString())
                            .Options;

            _stateManagementContext = new StateManagementContext(dbOptions);
            var flowRepository  = new FlowRepository(_stateManagementContext);
            var stateRepository = new StateRepository(_stateManagementContext);
            var taskRepository  = new TaskRepository(_stateManagementContext);

            _unitOfWork = new UnitOfWork(flowRepository, stateRepository, taskRepository, _stateManagementContext);
        }
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, StateManagementContext dbContext)
        {
            dbContext.Database.EnsureCreated();

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseSwagger();
            app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "API v1"));

            app.UseRouting();
            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
            });
        }