2 // HMACSHA512Test.cs - NUnit Test Cases for HMACSHA512
5 // Sebastien Pouliot <sebastien@ximian.com>
7 // (C) 2003 Motus Technologies Inc. (http://www.motus.com)
8 // Copyright (C) 2006 Novell, Inc (http://www.novell.com)
13 using NUnit.Framework;
16 using System.Security.Cryptography;
19 namespace MonoTests.System.Security.Cryptography {
22 public class HMACSHA512Test : KeyedHashAlgorithmTest {
24 protected HMACSHA512 algo;
27 protected override void SetUp ()
29 algo = new HMACSHA512 ();
30 algo.Key = new byte [8];
35 public void Constructors ()
37 algo = new HMACSHA512 ();
38 AssertNotNull ("HMACSHA512 ()", algo);
40 byte[] key = new byte [8];
41 algo = new HMACSHA512 (key);
42 AssertNotNull ("HMACSHA512 (key)", algo);
46 [ExpectedException (typeof (NullReferenceException))]
47 public void Constructor_Null ()
49 new HMACSHA512 (null);
53 public void Invariants ()
55 algo = new HMACSHA512 ();
56 AssertEquals ("HMACSHA512.CanReuseTransform", true, algo.CanReuseTransform);
57 AssertEquals ("HMACSHA512.CanTransformMultipleBlocks", true, algo.CanTransformMultipleBlocks);
58 AssertEquals ("HMACSHA512.HashName", "SHA512", algo.HashName);
59 AssertEquals ("HMACSHA512.HashSize", 512, algo.HashSize);
60 AssertEquals ("HMACSHA512.InputBlockSize", 1, algo.InputBlockSize);
61 AssertEquals ("HMACSHA512.OutputBlockSize", 1, algo.OutputBlockSize);
62 AssertEquals ("HMACSHA512.ToString()", "System.Security.Cryptography.HMACSHA512", algo.ToString ());