[Web + Doc-Updater] Add track changes accepted notification (#32752)

* feat: update doc manager to return a list of contributors to the accepted change

* feat: add new notification type for accepting a tracked change

* update email with tracked changes accepted

* feat: update tests

* fix: feedback on consistent api and returns

* feat: adding new tests

* feat: self accepted changes shouldnt trigger notification, and using existing changesAccepted hook

* Add better subject and activity list for track change accepted (#33094)

* feat: add better activity list entry and subject header for accepted changes, to match other notifications

* feat: updating tests

* feat: updating accepting_user_id to just user_id

* fix: adding users in emailBuilder test to userCache

GitOrigin-RevId: 6114f77916b5f503b7bbbb5ca8fed99e58edc31b
This commit is contained in:
Jimmy Domagala-Tang
2026-04-30 08:06:19 +00:00
committed by Copybot
parent fe59b9cdb5
commit 994932b8e3
8 changed files with 138 additions and 24 deletions
@@ -14,6 +14,7 @@ describe('HttpController', function () {
send: sinon.stub(),
sendStatus: sinon.stub(),
json: sinon.stub(),
status: sinon.stub().returnsThis(),
}
this.DocumentManager = {
@@ -753,6 +754,10 @@ describe('HttpController', function () {
describe('successfully with a single change', function () {
beforeEach(async function () {
this.changeContributors = ['user-id-1', 'user-id-2']
this.DocumentManager.promises.acceptChangesWithLock.resolves(
this.changeContributors
)
await this.HttpController.acceptChanges(this.req, this.res, this.next)
})
@@ -764,8 +769,11 @@ describe('HttpController', function () {
)
})
it('should return a successful No Content response', function () {
this.res.sendStatus.calledWith(204).should.equal(true)
it('should return a successful 200 with a list of the change contributors', function () {
this.res.status.should.have.been.calledWith(200)
this.res.json.should.have.been.calledWith({
changeContributors: this.changeContributors,
})
})
it('should log the request', function () {