How does pre-tested commits work with perforce

Hello,
I was wondering how does the pre-tested commits work when using perforce? I mean does it use shelve from perforce? otherwise how does teamcity know what it needs to copy from developer's machine and send it to an agent? Also another question is when the test passes, does teamcity submits the changes on behalf of developer under developer's account or does it use TeamCity's user account to submit back to perforce?

Thanks,

Please sign in to leave a comment.