Example #1
0
        public CommitItemRequestResponse CommitItem(CommitItemRequest request)
        {
            CommitItemRequestResponse response = new CommitItemRequestResponse();
            string     projectPath             = ProjectBasePath + request.ProjectName;
            Repository repo          = new Repository(projectPath);
            string     commitMessage = !string.IsNullOrWhiteSpace(request.CommitMessage) ? request.CommitMessage + "\n" : "";

            foreach (CommitItemDomain commitItem in request.CommitItems)
            {
                string itemPath = projectPath + "\\" + commitItem.ItemType + "_" + commitItem.Name + ".txt";
                string content  = "";
                //TODO if the ItemType is table, get the schema script

                //TODO Function

                //TODO SP

                commitMessage += "Commit " + commitItem.ItemType + ": " + commitItem.Name + "\n";
                File.WriteAllText(itemPath, content);
            }
            Commands.Stage(repo, "*");

            // Create the committer's signature and commit
            Signature author    = new Signature(Properties.AuthorName, Properties.AuthorEmail, DateTime.Now);
            Signature committer = new Signature(Properties.CommitterName, Properties.CommitterEmail, DateTime.Now);

            repo.Commit(commitMessage, author, committer);

            return(response);
        }
Example #2
0
        public void TestCommitItem()
        {
            CommitItemRequest request = new CommitItemRequest();

            request.ProjectName = "Test2";
            CommitItemDomain item1 = new CommitItemDomain();

            item1.ItemType = CommitItemDomain.ItemType_Table;
            item1.Name     = "table1";
            request.CommitItems.Add(item1);

            CommitItemDomain item2 = new CommitItemDomain();

            item2.ItemType = CommitItemDomain.ItemType_Table;
            item2.Name     = "table2";
            request.CommitItems.Add(item2);

            CommitItemRequestResponse response = bal.CommitItem(request);

            Assert.AreEqual(StatusCodes.Status_Success, response.StatusCode);
        }