private string GenerateEntryUrl(EntryType entryType, EntryReference id)
        {
            switch (entryType)
            {
            case EntryType.Album:
                return(string.Format("{0}Al/{1}", siteRoot, id.Id));

            case EntryType.Artist:
                return(string.Format("{0}Ar/{1}", siteRoot, id.Id));

            case EntryType.ReleaseEvent:
                return(string.Format("{0}E/{1}/{2}", siteRoot, id.Id, id.UrlSlug));

            case EntryType.Song:
                return(string.Format("{0}S/{1}", siteRoot, id.Id));

            case EntryType.Tag:
                return(string.Format("{0}T/{1}/{2}", siteRoot, id.Id, id.UrlSlug));
            }

            return(string.Empty);
        }
Beispiel #2
0
        public void ExecuteSaveEntry_SetsAndClears_SaveInProgress()
        {
            BookReference  bookReference = new BookReference();
            EntryReference entryRef      = new EntryReference();
            Entry          entry         = new Entry();

            _viewModel.Header = "header";
            _viewModel.Body   = "body";

            _eventAggregator.Setup(s => s.GetEvent <BookEntrySavedMessage>()).Returns(new BookEntrySavedMessage()).Verifiable();
            _eventAggregator.Setup(s => s.GetEvent <InAppInfoMessage>()).Returns(new InAppInfoMessage()).Verifiable();
            _entryServiceMock.Setup(s => s.CreateEntry(_viewModel.Header, _viewModel.Body)).Returns(entry).Verifiable();
            _entryServiceMock.Setup(s => s.AddEntryToBookAsync(bookReference, entry)).Returns(Task.FromResult(entryRef)).Verifiable();

            _viewModel.Init(bookReference);
            Assert.IsFalse(_viewModel.SaveInProgress);
            _viewModel.SaveEntryCommand.Execute();
            Assert.IsFalse(_viewModel.SaveInProgress);

            _eventAggregator.Verify();
            _entryServiceMock.Verify();
        }
Beispiel #3
0
 private XElement CreateUrlElement(EntryType entryType, EntryReference id)
 {
     return(new XElement(XName.Get("url", ns_sitemap),
                         new XElement(XName.Get("loc", ns_sitemap), GenerateEntryUrl(entryType, id))
                         ));
 }
Beispiel #4
0
 private string GenerateEntryUrl(EntryType entryType, EntryReference id) => entryType switch
 {