static void Main(string[] args) { Console.WriteLine("Initialising database and collection..."); IConfiguration config = InitializeConfigBuilder(); CosmosDbSettings cosmosDbSettings = BindCosmosVariablesToDto(config); Console.WriteLine(cosmosDbSettings.ToString()); ProfilePatternRepository.InitialiseDocumentClient(cosmosDbSettings); Task.WaitAll(ProfilePatternRepository.CreateDatabaseAndCollectionIfNotExists()); Console.WriteLine("Database and collection initialised successfully"); // load in profile patterns from resources Task.Run(async() => { IReadOnlyCollection <FundingStreamPeriodProfilePatternDocument> documents = Assembly.GetExecutingAssembly().GetManifestResourceNames() .Where(rn => rn.EndsWith(".json")) .Select(rn => Assembly.GetExecutingAssembly().GetManifestResourceStream(rn)) .Select(ConvertToModel) .ToList(); await ProfilePatternRepository.RemoveWhereNoIdMatch(documents.Select(d => d.id)); await documents.ForEachAsync(ProfilePatternRepository.UpsertPattern); }) .GetAwaiter().GetResult(); Console.WriteLine("Finished writing all profiling patterns to database"); }
public void SetUp() { _cosmos = new Mock <ICosmosRepository>(); _repository = new ProfilePatternRepository(_cosmos.Object); }
public ProfilePatternRepositoryTests() { _mockCosmoRepository = new Mock <ICosmosRepository>(); _repository = new ProfilePatternRepository(_mockCosmoRepository.Object); _fundingStreamPeriodProfilePatternBuilder = new FundingStreamPeriodProfilePatternBuilder(); }