public async Task GetTextEnTest() { TestingContext testingContext = new TestingContext(); testingContext.AddAdminPrincipalMock(); testingContext.AddInMemoryDb(); testingContext.AddLogServiceMock(); testingContext.AddEnglishCultureServiceMock(); ApplicationDbContext dbContext = testingContext.GetSimple <ApplicationDbContext>(); dbContext.Texts.Add(new Text() { Key = "TestKey", ContentDe = "ContentDe {0} {1} {2}", ContentEn = "ContentEn {0} {1} {2}", }); await dbContext.SaveChangesAsync(); ITextService textService = testingContext.GetService <TextService>(); //Act string text = await textService.GetTextAsync("TestKey", "pl1", "pl2", "pl3"); //Assert Assert.Equal("ContentEn pl1 pl2 pl3", text); }
public async void TestExport() { //Prepare TestingContext testingContext = new TestingContext(); testingContext.AddAdminPrincipalMock(); testingContext.AddBinaryServiceMock(); testingContext.AddInMemoryDb(); testingContext.AddUserService(); testingContext.AddBusinessSecurityService(); testingContext.AddLogServiceMock(); testingContext.AddGermanCultureServiceMock(); testingContext.AddQuestionService(); IExportService exportService = testingContext.GetService <ExportService>(); //Act Stream stream = await exportService.Export(); //Assert ZipArchive arch = new ZipArchive(stream); ZipArchiveEntry entry = arch.GetEntry("questions.json"); Stream zipEntryStream = entry.Open(); using (var reader = new StreamReader(zipEntryStream, Encoding.UTF8)) { string value = reader.ReadToEnd(); IList <QuestionDto> questions = JsonConvert.DeserializeObject <IList <QuestionDto> >(value); Assert.True(questions.Count > 0); } Assert.True(arch.Entries.Count > 0); }
public async Task TestTag() { //Prepare TestingContext testingContext = new TestingContext(); testingContext.AddAdminPrincipalMock(); testingContext.AddLogServiceMock(); testingContext.AddRealDb(); ApplicationDbContext context = testingContext.GetSimple <ApplicationDbContext>(); Tag tag = new Tag { Name = "Test", TagType = TagType.Standard, Description = "Desc", ShortDescDe = "ShortDescDe", ShortDescEn = "ShortDescEn", }; context.Tags.Add(tag); //Act await context.SaveChangesAsync(); //Assert Assert.True(tag.Id > 0); //Cleanup context.Remove(tag); context.SaveChanges(); }
public async void TestPaging() { TestingContext testingContext = new TestingContext(); testingContext.AddAdminPrincipalMock(); testingContext.AddInMemoryDb(); testingContext.AddLogServiceMock(); testingContext.AddEnglishCultureServiceMock(); ApplicationDbContext dbContext = testingContext.GetSimple <ApplicationDbContext>(); for (int i = 0; i < 13; i++) { dbContext.Texts.Add(new Text() { Key = $"TestKey{i}", ContentDe = $"ContentDe", ContentEn = $"ContentEn", }); } await dbContext.SaveChangesAsync(); ITextService textService = testingContext.GetService <TextService>(); //Act SearchTextDto dto = new SearchTextDto(); dto.Page = 0; PagedResultDto <TextDto> res = await textService.GetTextsAsync(dto); //Assert Assert.Equal(13, res.Count); Assert.Equal(5, res.Pagesize); Assert.Equal(5, res.Data.Count); Assert.Equal(3, res.Numpages); //Act dto = new SearchTextDto(); dto.Page = 2; res = await textService.GetTextsAsync(dto); //Assert Assert.Equal(13, res.Count); Assert.Equal(5, res.Pagesize); Assert.Equal(3, res.Data.Count); Assert.Equal(3, res.Numpages); }
public async Task SaveBinaryTest() { TestingContext testingContext = new TestingContext(); testingContext.AddAdminPrincipalMock(); testingContext.AddLogServiceMock(); testingContext.AddRealDb(); testingContext.AddUserService(); IBinaryService service = testingContext.GetService <BinaryService>(); string testWord = "Hello World"; var bytes = System.Text.Encoding.UTF8.GetBytes(testWord); MemoryStream stream = new MemoryStream(); stream.Write(bytes, 0, bytes.Length); stream.Flush(); stream.Seek(0, SeekOrigin.Begin); BinaryDto binaryDto = new BinaryDto { ContentDisposition = "ContentDisposition", ContentType = "ContentType", FileName = "FileName", Name = "Name", Length = 2334, }; int id = await service.AddBinaryAsync(binaryDto); //Act await service.SaveAsync(id, stream); //Assert Stream streamToAssert = await service.GetBinaryAsync(id); StreamReader reader = new StreamReader(streamToAssert); string text = reader.ReadToEnd(); Assert.Equal(testWord, text); //Cleanup await service.DeleteBinaryAsync(id); }
public async Task TestQuestion() { //Prepare TestingContext testingContext = new TestingContext(); testingContext.AddAdminPrincipalMock(); testingContext.AddLogServiceMock(); testingContext.AddRealDb(); ApplicationDbContext context = testingContext.GetSimple <ApplicationDbContext>(); Container container = new Container(); context.Containers.Add(container); Question question1 = new Question(); question1.Container = container; question1.Title = "hello"; question1.Text = "Hello Text"; question1.Status = QuestionStatus.Created; question1.User = await GetTestUserAsync(context); question1.Language = Language.De; question1.QuestionType = QuestionType.SingleChoice; context.Questions.Add(question1); //Act context.SaveChanges(); //Assert Question found = await context.FindAsync <Question>(question1.Id); Assert.NotNull(found); Assert.Equal(QuestionType.SingleChoice, found.QuestionType); //Cleanup context.Remove(question1); context.Remove(container); context.SaveChanges(); }
public async Task DeleteTagOk() { //Prepare TestingContext testingContext = new TestingContext(); SetupContext(testingContext); testingContext.AddAdminPrincipalMock(); ITagService tagService = testingContext.GetService <TagService>(); ApplicationDbContext dbContext = testingContext.GetSimple <ApplicationDbContext>(); int firstTagId = dbContext.Tags.First().Id; //Act await tagService.DeleteTagAsync(firstTagId); //Assert Exception ex = await Assert.ThrowsAsync <EntityNotFoundException>(async() => { TagDto dto = await tagService.GetTagAsync(firstTagId); }); }