tests unitaires avec effort pour l'entité framework 6 avec valeurs calculées


Question

L'utilisation de effort EF6 avec le code en premier ne renseigne pas les valeurs calculées. J'ai un champ date / heure (FechaCreacion) qui est calculé. Comment puis-je l'émuler dans Effort, il est donc rempli avec DateTime.Now après saveChanges ()?

Cet article Using Effort (EF Testing Tool) avec une colonne calculée correspond à DB First au lieu de Code First, mais semble également rester sans réponse.

EffortConnection connection = (EffortConnection)DbConnectionFactory.CreateTransient();

using (var c = new ControlConfigContext(connection))
{
    c.Database.CreateIfNotExists();

    CambioRepositoryTestLoadData.Load(c);

    string direccionMac = "FFFF";
    var repo = new CambioRepository(c);
    var primerConcesionarioTerminal = repo.GetPrimerConcesionarioTerminal(direccionMac);


    Assert.AreEqual("terminal1", primerConcesionarioTerminal.Terminal);
}

Cette valeur est calculée dans SQLServer en tant que GetDate ()

EffortConnection connection = (EffortConnection)DbConnectionFactory.CreateTransient();

using (var c = new ControlConfigContext(connection))
{
    c.Database.CreateIfNotExists();

    CambioRepositoryTestLoadData.Load(c);

    string direccionMac = "FFFF";
    var repo = new CambioRepository(c);
    var primerConcesionarioTerminal = repo.GetPrimerConcesionarioTerminal(direccionMac);


    Assert.AreEqual("terminal1", primerConcesionarioTerminal.Terminal);
}

Dans SQL Server fonctionne bien, mais lorsque vous utilisez Effort dans les tests unitaires, le champ obtient une valeur de date vide.

entrez la description de l'image ici

Réponse populaire

Cela semblerait être un problème avec Effort. J'ai ouvert un numéro sur leur site github: https://github.com/tamasflamich/effort/issues/62





Sous licence: CC-BY-SA
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi