SORU
3 EYLÜL 2009, PERŞEMBE


Neden İddia ediyor.AreEqual(T) obj1, Tobj2 aynı bayt dizileri ile başarısız

Aşağıdaki kod kesimi birbirinin aynı iki bayt dizi var:

    /// <summary>
    ///A test for Bytes
    ///</summary>
    [TestMethod()]
    public void BytesTest() {
        byte[] bytes = Encoding.UTF8.GetBytes(Properties.Resources.ExpectedPacketData);
        TransferEventArgs target = new TransferEventArgs(bytes);

        byte[] expected = Encoding.UTF8.GetBytes(Properties.Resources.ExpectedPacketValue);
        byte[] actual;
        actual = target.Bytes;

        Assert.AreEqual(expected, actual);
    }

Her iki dizide çok bayt aşağı aynıdır. Bu senaryoda, neden sunacaktı.AreEqual başarısız?

CEVAP
3 EYLÜL 2009, PERŞEMBE


Assert.Equals varsayılan olarak referans eşitlik kullanan Equals yöntemi kullanılarak testler ve farklı nesneleri oldukları için, eşit değiller. Her byte için dizideki istiyorum ve eşit olduğundan emin olun. Bunu yapmanın bir yolu CollectionAssert.AreEqual() yerine ICollection ve kullanımı uygulayan bir şeye dönüştürmek.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bombjack2991

    bombjack2991

    29 HAZİRAN 2008
  • MndsgnVEVO

    MndsgnVEVO

    26 Kasım 2013
  • SRT Photoshop Tutorials

    SRT Photosho

    19 Aralık 2012