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 emhttp://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
Sim, li O artigo do Stephen Walthers. Também passei pelos links. Não consigo parecer para ver o vídeo em
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".
53
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