Exemplo n.º 1
0
        //Используя переданные ITaskDataProvider, ISolutionExporter, решить задачу и вывести результат.
        static void SolveTasks(ITaskDataProvider taskDataProvider, ISolutionExporter solutionExporter)
        {
            //Пока в ITaskDataProvider есть входные данные
            while (taskDataProvider.HasNextTaskData())
            {
                //Получить входные данные.
                Tuple <ITransportNetwork, IEnumerable <IRoute> > taskData = taskDataProvider.GetTaskData();

                ITransportNetwork    transportNetwork = taskData.Item1;
                IEnumerable <IRoute> routes           = taskData.Item2;

                //Найти столкновения на станциях.
                IEnumerable <CollisionAtStationCase> collisionAtStationCases = CollisionsFinder.FindCollisionsAtStations(transportNetwork, routes);
                //Найти столкновения на путях.
                IEnumerable <CollisionOnConnectionBetweenStationsCase> collisionOnConnectionBetweenStationsCases = CollisionsFinder.FindCollisionsOnConnectionsBetweenStations(transportNetwork, routes);

                //Передать результаты решения ISolutionExporter.
                solutionExporter.Export(transportNetwork, routes, collisionAtStationCases, collisionOnConnectionBetweenStationsCases);
            }
        }
Exemplo n.º 2
0
        public TaskDataProviderTests()
        {
            _taskDataAccessorMock        = new Mock <ITaskDataAccessor>();
            _taskEventAccessorMock       = new Mock <ITaskEventAccessor>();
            _connectionContextMock       = new Mock <IConnectionContext>();
            _projectsDataAccessorMock    = new Mock <IProjectsDataAccessor>();
            _permissionsDataAccessorMock = new Mock <IPermissionsDataAccessor>();

            var tasks = new List <ITask> {
                _task, _activeTask, _completedTask, _removedTask
            };

            _taskDataAccessorMock.Setup(x => x.Get(1, null)).Returns(tasks.AsQueryable);
            _projectsDataAccessorMock.Setup(x => x.GetAsync(TaskId)).Returns(Task.FromResult(_projectMock.Object));
            _permissionsDataAccessorMock.Setup(x => x.HasPermissionForTask(UserId, TaskId))
            .Returns(Task.FromResult(true));

            _taskDataProvider = new TaskDataProvider(
                _taskDataAccessorMock.Object,
                _taskEventAccessorMock.Object,
                _connectionContextMock.Object,
                _permissionsDataAccessorMock.Object,
                _projectsDataAccessorMock.Object);
        }
Exemplo n.º 3
0
 public TaskController(ITaskDataProvider taskDataProvider, IConnectionContext context)
 {
     _taskDataProvider = taskDataProvider;
     _context          = context;
 }