【发布时间】:2010-09-08 09:09:07
【问题描述】:
我想将一段使用 Windows Impersonation API 的代码包装到一个简洁的小助手类中,并且像往常一样,我正在寻找一种先测试的方法。但是,虽然 WindowsIdentity 是一个托管类,但作为另一个用户实际执行登录所需的 LogonUser 调用是 advapi32.dll 中的非托管函数。
我想我可以通过为我的帮助类引入一个接口来解决这个问题,并在实现中隐藏 P/Invoke 调用,但测试该实现仍然是一个问题。您可以想象,在测试中实际执行模拟可能会有些问题,因为用户实际上需要存在于系统中。
【问题讨论】:
标签: c# unit-testing unmanaged impersonation