Ejemplo n.º 1
0
        private DocumentMetadata GetDocumentMetadata(string filename)
        {
            Logger.LogMessage($"Get document metadata for '{filename}'");

            DocumentMetadata documentMetadata = null;
            var filenameHelper = new FilenameHelper();
            var hasId          = filenameHelper.HasId(filename);
            var id             = 0;

            if (hasId)
            {
                id = int.Parse(filenameHelper.GetId(filename));
            }

            foreach (var metadataEntry in metadata)
            {
                if ((hasId && id == metadataEntry.DocumentId) ||
                    (metadataEntry.DocumentFilename.Equals(filename, StringComparison.InvariantCultureIgnoreCase)))
                {
                    documentMetadata = metadataEntry;
                    break;
                }
            }

            return(documentMetadata);
        }
Ejemplo n.º 2
0
        private string UpdateFilenameWithPostId(string documentFilename, int documentId)
        {
            string newFilename    = null;
            var    filenameHelper = new FilenameHelper();

            if (filenameHelper.HasId(documentFilename))
            {
                // We have an ID so let's see what it is
                var id = int.Parse(filenameHelper.GetId(documentFilename));

                if (id != documentId)
                {
                    // ID has been set but does not match the current ID in the filename so let's change it
                    newFilename = filenameHelper.SetId(documentFilename, documentId.ToString());
                }
            }
            else
            {
                // The filename does not currently contain an ID so let's set it
                newFilename = filenameHelper.SetId(documentFilename, documentId.ToString());
            }

            // Now let's rename the file in version control
            if (newFilename == null)
            {
                return(documentFilename);
            }

            vstsHelper.RenameFile(vstsAuthentication, project, repoName, branch, documentFilename, newFilename, "Renaming file to include Post ID. ***NO_CI***");

            return(newFilename);
        }
Ejemplo n.º 3
0
        public void GetIdTest()
        {
            var filenameHelper = new FilenameHelper();
            var filename       = "My Markdown File[_1021 ].md";
            var result         = filenameHelper.GetId(filename);

            Assert.AreEqual("1021", result);
        }