/// <summary> /// Reception des informations d ela connexion /// </summary> /// <param name="sender">Qui appelle</param> /// <param name="e">Paramètres du message</param> private void Cnn_OnConnectionInfoMessage(object sender, SqlMessageEventArgs e) { Assert.IsNotNull(sender, "Sender is null"); Assert.IsNotNull(e, "e is null"); Assert.AreEqual(e.IsError, false, "Insert : objet pas une erreur"); Assert.AreEqual(e.Message, "coucou", "Mauvais message"); }
/// <summary> /// Arrivée d'information de nombre de ligne mise à jour /// </summary> /// <param name="sender">Qui appelle</param> /// <param name="e">Paramètres du message</param> private void Cnn_OnConnectionInfoMessageInsert(object sender, SqlMessageEventArgs e) { Assert.IsNotNull(e, "Insert : Message reçu"); Assert.AreEqual(e.IsError, false, "Insert : objet pas une erreur"); Assert.AreEqual(e.Message, null, "Insert : le message est différent"); Assert.IsNull(e.Error, "Insert : Le Sql error doit être null"); Assert.AreEqual(e.RowCount, 1, "Insert : Le nombre de ligne doit être de 0"); }
public void TestConstructor() { string txt = "Erreur 12"; SqlMessageEventArgs msg = SqlMessageEventArgs.From(txt); Assert.IsNotNull(msg, "TConst 1 : Objet bien créé"); Assert.AreEqual(msg.IsError, false, "TConst 1 : objet pas une erreur"); Assert.AreEqual(msg.Message, txt, "TConst 1 : le message est différent"); Assert.IsNull(msg.Error, "TConst 1 : Le Sql error doit être null"); Assert.AreEqual(msg.RowCount, 0, "TConst 1 : Le nombre de ligne doit être de 0"); string res = msg.ToString(); Assert.AreEqual(res, txt, "TConst1 : ToString"); int nb = 99; StatementCompletedEventArgs st = new StatementCompletedEventArgs(nb); msg = SqlMessageEventArgs.From(st); Assert.IsNotNull(msg, "TConst 2 : Objet bien créé"); Assert.AreEqual(msg.IsError, false, "TConst 2 : objet pas une erreur"); Assert.AreEqual(msg.Message, null, "TConst 2 : le message est différent"); Assert.IsNull(msg.Error, "TConst 2 : Le Sql error doit être null"); Assert.AreEqual(msg.RowCount, nb, "TConst 2 : Le nombre de ligne doit être de 0"); res = msg.ToString(); Assert.AreEqual(res, "99 lignes affectées", "TConst 2 : ToString"); string queryString = "EXECUTE NonExistantStoredProcedure"; using (SqlConnection connection = new SqlConnection(TestConnectionParam.myconnectionString)) { SqlCommand command = new SqlCommand(queryString, connection); try { command.Connection.Open(); command.ExecuteNonQuery(); } catch (SqlException ex) { msg = SqlMessageEventArgs.From(ex.Errors[0]); string result = "Message 2812, Niveau 16, Etat 62, Ligne 1 : Procédure stockée 'NonExistantStoredProcedure' introuvable. Seveur : localhost Source : .Net SqlClient Data Provider"; res = msg.ToString(); for (int i = 0; i < res.Length; i++) { Assert.AreEqual(res[i], result[i], i.ToString()); } } } }
private void Cnn_OnConnectionInfoMessage(object sender, SqlMessageEventArgs e) { if (this.InvokeRequired) { this.Invoke(new EventHandler <SqlMessageEventArgs>(Cnn_OnConnectionInfoMessage), sender, e); } else { this.listBox1.Items.Add(e); this.listBox1.SelectedIndex = this.listBox1.Items.Count - 1; } }