Onde está a documentação do MOQ? [fechado]

Onde posso encontrar documentação completa para o MOQ? Estou a começar com troça e estou a ter dificuldade em perceber. Eu li todos os links em http://code.google.com/p/moq/wiki/QuickStart mas não consigo encontrar um tutorial ou uma introdução suave.

Também olhei brevemente para os rinocerontes, mas achei-os muito confusos.


Sim, li O artigo do Stephen Walthers. Também passei pelos links. Não consigo parecer para ver o vídeo em http://www.bestechvideos.com/2008/06/08/dimecasts-net-introduction-to-mocking-with-moq [relação quebrada]

Especificamente, estou a tentar determinar se um evento foi criado da classe ridicularizada. Não consigo obter o exemplo para eventos na página QuickStarts para compilar. Nos grupos do google, Daniel explicou que CreateEventHandler só pode lidar com um evento do tipo EventHandler<TEventArgs>, mas mesmo assim eu não posso obter o código para compilar.

Mais especificamente eu tenho uma classe que implementa INotifyChanged.

public class Entity : INotifyChanged
{
    public event PropertyChangingEventHandler PropertyChanging;

    public int Id 
      { 
          get {return _id;}
          set {
                 _id = value;
                 OnPropertyChanged("Id");
              }
      }

     protected void OnPropertyChanged(string property)
      {
         if (PropertyChanged != null)
            PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
      }
 etc .....    
}
Como posso gozar com a turma para testar se o evento foi disparado? Não posso reescrever o evento para public event EventHandler<PropertyChangedEventArgs> porque tenho este erro:

Erro 1'.O notificador não implementa o sistema membro da interface.ComponentModel.Inotipropertichanged.Bom trabalho. "Co-serviços.Notificador.Um sistema "não pode implementar" devidamente modificado.ComponentModel.Inotipropertichanged."Porque não tem o tipo de retorno correspondente do sistema'.ComponentModel."Propertychedeventthandler".

Author: anatol, 2008-10-23

4 answers

A última documentação do Moq está agora disponível na página wiki do github:

Https://github.com/Moq/moq4/wiki/Quickstart

Anteriormente estavam no Google Code. Assim como o wiki e outros recursos online, Há documentação completa no Windows .O formato de ficheiro de ajuda do CHM incluído na transferência binária do Moq ligado a partir de a página inicial do Moq .
 30
Author: Dylan Beattie, 2016-03-14 15:15:49
Já viste a introdução à troça do Moq? É um resumo introdutório do uso do Moq e é destinado para aqueles que são novos a zombar em geral, ou o próprio framework Moq.
 15
Author: Bill the Lizard, 2012-04-20 13:28:22
Já leu as páginas ligadas em https://github.com/Moq/moq4/wiki/Quickstart ? por exemplo este (provavelmente transferido para o blog pessoal de stephen Walters)
 4
Author: Brian J Cardiff, 2016-11-24 10:49:49
Estou a tentar determinar se um evento foi criado a partir do escárnio. classe.
Estás? Ou está a tentar determinar se a propriedade Id foi definida? Lembre-se, por padrão, uma simulação não tem comportamento. Não é aumentar eventos de notificação.

Eu faria:

const int ExpectedId = 123;
mockEntity.VerifySet(x => x.Id = ExpectedId);

Isto assume que a entidade implementa uma interface; um exemplo:

public interface IKeyedEntity
{
    int Id { get; set; }
}
Dito isto, se Entity for um POCO sem um comportamento interessante, eu também não implementaria uma interface. (para além de INotifyChanged) nem escarnecem dele. Teste com uma instância Entity real (apenas não use uma base de dados). Reserve zombing para serviços e dependências complexas.

Para mais funcionalidades do Moq, ver

Antigas especificações funcionais imperativas vs MOQ e Mock.Of - Como especificar o comportamento? (thread) . Eu também postei meu próprio exemplo de especificações funcionais Moq v4 .

 1
Author: TrueWill, 2011-12-17 17:31:51