Làm cách nào để kiểm tra một lớp sử dụng các máy khách proxy được tạo bởi Tham chiếu Dịch vụ Web?Làm thế nào để thử các Dịch vụ Web của WCF với Rhino Mocks
Tôi muốn giả lập ứng dụng khách, nhưng giao diện khách hàng được tạo không chứa phương thức đóng, được yêu cầu để chấm dứt đúng proxy. Nếu tôi không sử dụng giao diện, nhưng thay vào đó là một tham chiếu cụ thể, tôi có quyền truy cập vào phương thức đóng nhưng mất khả năng giả mạo proxy.
Tôi đang cố gắng để thử nghiệm một lớp học tương tự như sau:
public class ServiceAdapter : IServiceAdapter, IDisposable
{
// ILoggingServiceClient is generated via a Web Service reference
private readonly ILoggingServiceClient _loggingServiceClient;
public ServiceAdapter() : this(new LoggingServiceClient()) {}
internal ServiceAdapter(ILoggingServiceClient loggingServiceClient)
{
_loggingServiceClient = loggingServiceClient;
}
public void LogSomething(string msg)
{
_loggingServiceClient.LogSomething(msg);
}
public void Dispose()
{
// this doesn't compile, because ILoggingServiceClient doesn't contain Close(),
// yet Close is required to properly terminate the WCF client
_loggingServiceClient.Close();
}
}