ServiceTest.cs 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. using System;
  2. using Google.ProtocolBuffers.Descriptors;
  3. using Google.ProtocolBuffers.TestProtos;
  4. using NUnit.Framework;
  5. namespace Google.ProtocolBuffers {
  6. /// <summary>
  7. /// Tests for generated service classes.
  8. /// TODO(jonskeet): Convert the mocking tests using Rhino.Mocks.
  9. /// </summary>
  10. [TestFixture]
  11. public class ServiceTest {
  12. private static readonly MethodDescriptor FooDescriptor = TestService.Descriptor.Methods[0];
  13. private static readonly MethodDescriptor BarDescriptor = TestService.Descriptor.Methods[1];
  14. [Test]
  15. public void GetRequestPrototype() {
  16. TestService mockService = new TestServiceImpl();
  17. Assert.AreSame(mockService.GetRequestPrototype(FooDescriptor), FooRequest.DefaultInstance);
  18. Assert.AreSame(mockService.GetRequestPrototype(BarDescriptor), BarRequest.DefaultInstance);
  19. }
  20. [Test]
  21. public void GetResponsePrototype() {
  22. TestService mockService = new TestServiceImpl();
  23. Assert.AreSame(mockService.GetResponsePrototype(FooDescriptor), FooResponse.DefaultInstance);
  24. Assert.AreSame(mockService.GetResponsePrototype(BarDescriptor), BarResponse.DefaultInstance);
  25. }
  26. class TestServiceImpl : TestService {
  27. public override void Foo(IRpcController controller, FooRequest request, Action<FooResponse> done) {
  28. throw new System.NotImplementedException();
  29. }
  30. public override void Bar(IRpcController controller, BarRequest request, Action<BarResponse> done) {
  31. throw new System.NotImplementedException();
  32. }
  33. }
  34. }
  35. }