public static IEnumerable <Site> GetSites()
            {
                var repository = new SiteReadRepository(new DataContext(new PersistenceConfiguration(RepositoryTestsHelper.ConnectionString)));
                var result     = repository.ListAsync(null, null, null).Result;

                return(result);
            }
            public static Site CreateSite(string name, string description, string source)
            {
                // prepare
                var writeRepository = new SiteWriteRepository(new DataContext(new PersistenceConfiguration(RepositoryTestsHelper.ConnectionString)));
                var readRepository  = new SiteReadRepository(new DataContext(new PersistenceConfiguration(RepositoryTestsHelper.ConnectionString)));

                // create
                var site = new Site(Guid.NewGuid(), name, description, source);
                IEnumerable <Site> sites = new List <Site>()
                {
                    site
                };

                sites.ToList().ForEach(x => writeRepository.CreateAsync(x).GetAwaiter().GetResult());

                // result
                var result = readRepository.GetAsync(site.Id).Result;

                return(result);
            }