public void Setup() { Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); var config = TestsHelper.GetConfig(); var env = TestsHelper.GetEnvironment(); var connectionString = config.GetConnectionString("DefaultConnection"); var logPath = config.GetValue <string>("LogPath"); logger = new Logger(logPath); tDispatcher = new Dispatcher(); con = new SqliteConnection("DataSource=:memory:"); con.Open(); dbContextOptionsBuilder = new DbContextOptionsBuilder <PuckContext>(); dbContextOptionsBuilder .UseSqlite(con); context = new PuckContext(dbContextOptionsBuilder.Options); repo = new Puck_Repository(context); var dbCreated = repo.Context.Database.EnsureCreated(); var indexerSearcher = new Content_Indexer_Searcher(logger, config, env); indexer = indexerSearcher; searcher = indexerSearcher; roleManager = MockHelpers.MockRoleManager <PuckRole>().Object; userManager = MockHelpers.MockUserManager().Object; apiHelper = new ApiHelper(roleManager, userManager, repo, tDispatcher, indexer, logger); contentService = new ContentService(config, roleManager, userManager, repo, tDispatcher, indexer, logger, apiHelper); PuckCache._puckSearcher = searcher; PuckCache.ServiceProvider = MockHelpers.MockServiceProvider(repo).Object; PuckCache.MaxRevisions = 20; TestsHelper.SetAQNMappings(); TestsHelper.SetAnalyzerMappings(); indexer.DeleteAll(); }
public SettingsController(I_Api_Helper ah, I_Content_Service cs, I_Content_Indexer i, I_Content_Searcher s, I_Log l, I_Puck_Repository r) { this.apiHelper = ah; this.contentService = cs; this.indexer = i; this.searcher = s; this.log = l; this.repo = r; }
public static async Task <SiteTree> CreateSite(I_Content_Service cs, I_Puck_Repository repo, string rootName, List <string> variants, List <bool> variantIsPublished, int levels, int branches, string username) { var tree = new SiteTree(); tree.Level = 1; tree.Branch = 1; for (var i = 0; i < variants.Count; i++) { var published = variantIsPublished[i]; var root = await cs.Create <Folder>(Guid.Empty, variants[i], rootName, template : "template.cshtml", published : published, userName : username); await cs.SaveContent(root, triggerEvents : false, userName : username); var revision = repo.CurrentRevision(root.Id, root.Variant); tree.Variants.Add(revision); } async Task CreateLevel(int level, SiteTree ctree) { if (level > levels) { return; } for (var j = 0; j < branches; j++) { var btree = new SiteTree(); btree.Level = level; btree.Branch = j + 1; for (var k = 0; k < variants.Count; k++) { var published = variantIsPublished[k]; var model = await cs.Create <Folder>(ctree.Variants.First().Id, variants[k], (j + 1).ToString(), template : "template.cshtml", published : published, userName : username); await cs.SaveContent(model, triggerEvents : false, userName : username); var revision = repo.CurrentRevision(model.Id, model.Variant); btree.Variants.Add(revision); } ctree.Children.Add(btree); await CreateLevel(level + 1, btree); } } await CreateLevel(2, tree); return(tree); }
public WorkflowController(I_Api_Helper ah, I_Content_Service cs, I_Content_Indexer i, I_Content_Searcher s, I_Log l, I_Puck_Repository r, RoleManager <PuckRole> rm, UserManager <PuckUser> um, SignInManager <PuckUser> sm, IHostEnvironment env, IConfiguration config, IMemoryCache cache) { this.indexer = i; this.searcher = s; this.log = l; this.repo = r; this.roleManager = rm; this.userManager = um; this.signInManager = sm; this.contentService = cs; this.apiHelper = ah; this.env = env; this.config = config; this.cache = cache; StateHelper.SetFirstRequestUrl(); SyncIfNecessary(); }