public async Task Opens_existing_database(CachedIssue issue) { var databaseFile = "file2.db"; if (File.Exists(databaseFile)) { File.Delete(databaseFile); } using (var repo = new SqliteJiraLocalCacheRepository(databaseFile)) { await repo.Initialize(); await repo.AddOrReplaceCachedIssue(issue); } using (var repo = new SqliteJiraLocalCacheRepository(databaseFile)) { await repo.Initialize(); var retrievedIssue = (await repo.GetIssues()).SingleOrDefault(); issue.ShouldCompare(retrievedIssue); } }
public MainViewModel() { DisplayName = "Jira flow metrics"; var dataPath = GetPathToData(); if (!Directory.Exists(dataPath)) { Directory.CreateDirectory(dataPath); } string databaseFile = Path.Combine(dataPath, @"issuesCache.db"); _cacheRepository = new SqliteJiraLocalCacheRepository(databaseFile); TasksSourceJiraCacheAdapter jiraCacheAdapter = new TasksSourceJiraCacheAdapter(_cacheRepository); JsonStatesRepository statesRepository = new JsonStatesRepository(Path.Combine(dataPath, @"analysisSettings.json")); var stateFilteringProvider = new StateFilteringProvider(jiraCacheAdapter, statesRepository); var tasksSource = new TasksSource(jiraCacheAdapter); var issuesFrom = DateTime.Now.AddYears(-1); ProjectSelector = new ProjectSelectorViewModel(tasksSource); Items.Add(new JiraUpdateViewModel(tasksSource, new CurrentTime())); Items.Add(new StoryFilteringViewModel(stateFilteringProvider)); Items.Add(new IssuesGridViewModel(tasksSource, stateFilteringProvider, ProjectSelector)); Items.Add(new CumulativeFlowViewModel(tasksSource, stateFilteringProvider, ProjectSelector)); Items.Add(new CycleTimeScatterplotViewModel(tasksSource, issuesFrom, stateFilteringProvider, ProjectSelector)); Items.Add(new CycleTimeHistogramViewModel(tasksSource, issuesFrom, stateFilteringProvider, ProjectSelector)); Items.Add(new CycleTimeHistogramSmoothViewModel(tasksSource, issuesFrom, stateFilteringProvider, ProjectSelector)); Items.Add(new CycleTimeHistoryViewModel(tasksSource, stateFilteringProvider, ProjectSelector)); Items.Add(new StoryPointCycleTimeViewModel(tasksSource, issuesFrom, stateFilteringProvider, ProjectSelector)); Items.Add(new SimulationViewModel(tasksSource, issuesFrom, stateFilteringProvider, ProjectSelector)); }
public async Task Creates_database_file_when_initialized() { var databaseFile = "file.db"; if (File.Exists(databaseFile)) { File.Delete(databaseFile); } using (var repo = new SqliteJiraLocalCacheRepository(databaseFile)) { await repo.Initialize(); } Assert.True(File.Exists(databaseFile)); }
public TasksSourceJiraCacheAdapter(SqliteJiraLocalCacheRepository sqliteJiraLocalCacheRepository) { _cache = new JiraLocalCache(sqliteJiraLocalCacheRepository); }