public void CanHandle() { // arrange var generator = new ClientClassGenerator(); var descriptor = new ClientClassDescriptor( "TestClient", "ITestClient", "global::StrawberryShake.IOperationExecutorPool", "global::StrawberryShake.IOperationExecutor", "global::StrawberryShake.IOperationStreamExecutor", new [] { new ClientOperationMethodDescriptor( "episode", "GetHeroOperation", false, "Task<IOperationResult<IGetHero>>", new[] { new ClientOperationMethodParameterDescriptor( "episode", "Episode", "BAZ", true, "foo") }) }); // act var canHandle = generator.CanHandle(descriptor); // assert Assert.True(canHandle); }
public async Task GenerateClient_With_OperationStreamExecutor() { // arrange var sb = new StringBuilder(); var writer = new CodeWriter(sb); var generator = new ClientClassGenerator(); var descriptor = new ClientClassDescriptor( "TestClient", "Demo", "ITestClient", "global::StrawberryShake.IOperationExecutorPool", "global::StrawberryShake.IOperationExecutor", "global::StrawberryShake.IOperationStreamExecutor", new[] { new ClientOperationMethodDescriptor( "GetHero", "global::Demo.GetHeroOperation", true, "global::Demo.IGetHero", new[] { new ClientOperationMethodParameterDescriptor( "episode", "Episode", "global::Demo.Episode", true, "global::Demo.Episode.NewHope") }) }); // act await generator.WriteAsync(writer, descriptor); // assert sb.ToString().MatchSnapshot(); }