public void Nova_ContaVazia_DeveCriarESalvar() { // Arrange var usuario = "teste123"; Conta contaCriada = null; var contaRepositorio = Substitute.For <IContaRepositorio>(); contaRepositorio.When(x => x.Post(Arg.Any <Conta>())) .Do(x => contaCriada = x.Arg <Conta>()); var contaServico = new ContaServico(contaRepositorio); // Act contaServico.Cadastrar(usuario); // Assert contaRepositorio.Received(1).Post(contaCriada); Assert.IsNotNull(contaCriada); Assert.AreEqual(usuario, contaCriada.UsuarioTitular); }