public async System.Threading.Tasks.Task BookReadingRepositoryShouldReturn200AndAllBookReadingEntries() { CleanDB(); var collection = GetDatabase().GetCollection <BookReading>("bookreadings"); BookReading universe = new BookReading(); universe.name = "universe in a nutshell"; BookReading refactoring = new BookReading(); refactoring.name = "Refactoring"; collection.InsertOne(universe); collection.InsertOne(refactoring); var response = await client.GetAsync(apiBaseUrl + "/api/bookreadings"); var responseContent = response.Content.ReadAsStringAsync(); BookReading[] result = JsonConvert.DeserializeObject <BookReading[]>(responseContent.Result); Assert.Equal(200, (int)response.StatusCode); Assert.NotEmpty(result); Assert.Equal(2, result.Length); Assert.Contains(universe, result); Assert.Contains(refactoring, result); }
public async Task <IActionResult> BookAdd(int?id, [Bind("BookId,ReaderId,DateOfIssue,ReturnDate")] BookReading AddObj) { var search = await _context.BookReading.Where(o => o.BookId == AddObj.BookId && o.ReaderId == AddObj.ReaderId).FirstOrDefaultAsync(); if (search != null) { ModelState.AddModelError("ReaderId", "В читача вже є ця книга"); } if (AddObj.DateOfIssue != null && AddObj.ReturnDate != null && AddObj.DateOfIssue > AddObj.ReturnDate) { ModelState.AddModelError("ReturnDate", "Дата повернення не може бути раніше дати видачі"); } if (AddObj.DateOfIssue != null && AddObj.ReturnDate != null && AddObj.DateOfIssue > DateTime.Today) { ModelState.AddModelError("DateOfIssue", "Дата видачі не може бути в майбутньому"); } if (ModelState.IsValid) { _context.Add(AddObj); await _context.SaveChangesAsync(); return(RedirectToAction("Details", new { id = AddObj.ReaderId })); } ViewBag.ReaderData = new SelectList(_context.Readers, "Id", "FullName", AddObj.ReaderId); ViewBag.BookData = new SelectList(_context.Books, "Id", "Name", AddObj.BookId); AddObj.DateOfIssue = DateTime.Today; return(View(AddObj)); }
public async System.Threading.Tasks.Task BookReadingRepositoryShouldAddBookReadingEntriesWithCorrectPriority() { CleanDB(); BsonDocument bd = new BsonDocument { { "name", "universe in a nutshell" } }; var content = new StringContent(bd.ToJson(), Encoding.UTF8, "application/json"); var response = await client.PostAsync(apiBaseUrl + "/api/bookreadings", content); var responseContent = response.Content.ReadAsStringAsync(); bd = new BsonDocument { { "name", "Refactoring" } }; content = new StringContent(bd.ToJson(), Encoding.UTF8, "application/json"); response = await client.PostAsync(apiBaseUrl + "/api/bookreadings", content); responseContent = response.Content.ReadAsStringAsync(); BookReading universe = GetDatabase().GetCollection <BookReading>("bookreadings").Find(entry => entry.name == "universe in a nutshell").Single(); BookReading refactoring = GetDatabase().GetCollection <BookReading>("bookreadings").Find(entry => entry.name == "Refactoring").Single(); Assert.Equal("universe in a nutshell", universe.name); Assert.Equal(1, universe.priority); Assert.Equal("Refactoring", refactoring.name); Assert.Equal(2, refactoring.priority); }
private BookReading GetPsalm(BookReading psalm) { BookReading resultReading; if (StartStihos != null || EndStihos != null) { resultReading = new BookReading(); int end = (EndStihos != null && EndStihos < psalm.Text.Count) ? (int)EndStihos : psalm.Text.Count; for (int start = StartStihos ?? 1; start <= end; start++) { var stihos = psalm.Text.FirstOrDefault(c => c.StihosNumber == start); if (stihos != null) { resultReading.Text.Add(stihos); } } } else { resultReading = psalm; } return(resultReading); }
private void AppendText(CreateViewModelRequest <PsalmRule> req, BookReading psalmReading) { //List<string> paragraphs = psalmReading.Text.Select(c => c[req.Handler.Settings.Language.Name]).ToList(); var paragraphs = ParagraphVMFactory.CreateList(psalmReading.Text, req.Handler.Settings.Language.Name); req.AppendModelAction(new ElementViewModel() { ViewModelItemFactory.Create(TextHolderKind.Lector, paragraphs) }); }
private void AppendText(CreateViewModelRequest <PsalmRule> req, BookReading psalmReading) { //List<string> paragraphs = psalmReading.Text.Select(c => c[req.Handler.Settings.Language.Name]).ToList(); var paragraphs = new List <ItemTextNoted>(); psalmReading.Text.ForEach(c => paragraphs.Add(new ItemTextNoted(c))); req.AppendModelAction(new OutputSectionModelCollection() { OutputSectionFactory.Create(TextHolderKind.Lector, paragraphs) }); }
public IActionResult BookAdd(int?id) { if (id == null) { return(NotFound()); } ViewBag.ReaderData = new SelectList(_context.Readers, "Id", "FullName", id); ViewBag.BookData = new SelectList(_context.Books, "Id", "Name"); var obj = new BookReading(); obj.DateOfIssue = DateTime.Today; return(View(obj)); }
public DayElementBase Calculate(RuleHandlerSettings settings) { var psalm = QueryProcessor.Process(new PsalmQuery(Number)); BookReading psalmReading = null; if (psalm?.Reading != null) { psalmReading = GetPsalm(psalm.Reading); } return(psalmReading); }
public DayElementBase Calculate(RuleHandlerSettings settings) { var response = PsalterContext.Get(new GetPsalmRequest() { Number = Number }); BookReading psalmReading = null; if (response.Psalm != null) { psalmReading = GetPsalm(response.Psalm); } return(psalmReading); }
public void SaveBookReading(BookReading BookReading) { if (BookReading.Id == 0) { context.BookReadings.Add(BookReading); } else { var editMe = context.BookReadings.Find(BookReading.Id); if (editMe != null) { // dbEntry.Name = BookReading.Name; // dbEntry.Message = BookReading.Message; // dbEntry.TimeStamp = BookReading.TimeStamp; } } context.SaveChanges(); }
public async System.Threading.Tasks.Task BookReadingRepositoryShouldReturn200AndDeleteAnEntryIfDeletedSuccessfully() { CleanDB(); var collection = GetDatabase().GetCollection <BookReading>("bookreadings"); BookReading universe = new BookReading(); universe.name = "universe in a nutshell"; collection.InsertOne(universe); var response = await client.DeleteAsync(apiBaseUrl + "/api/bookreadings/" + universe.id); var bookReadings = await GetDatabase().GetCollection <BookReading>("bookreadings").Find(_ => true).ToListAsync(); Assert.Equal(204, (int)response.StatusCode); Assert.Empty(bookReadings); }
public async System.Threading.Tasks.Task BookReadingRepositoryShouldAddBookReadingEntryReturn200AndTheAddedBookReadingEntryIfSuccessfullyAdded() { CleanDB(); BsonDocument bd = new BsonDocument { { "name", "universe in a nutshell" } }; var content = new StringContent(bd.ToJson(), Encoding.UTF8, "application/json"); var response = await client.PostAsync(apiBaseUrl + "/api/bookreadings", content); var responseContent = response.Content.ReadAsStringAsync(); BookReading result = JsonConvert.DeserializeObject <BookReading>(responseContent.Result); Assert.Equal(200, (int)response.StatusCode); Assert.NotEqual(ObjectId.Empty.ToString(), result.id); BookReading universe = GetDatabase().GetCollection <BookReading>("bookreadings").Find(entry => entry.name == "universe in a nutshell").Single(); Assert.Equal("universe in a nutshell", universe.name); Assert.Equal(1, universe.priority); }