2 // CryptographicAttributeTest.cs - NUnit tests for CryptographicAttribute
5 // Sebastien Pouliot <sebastien@ximian.com>
7 // (C) 2003 Motus Technologies Inc. (http://www.motus.com)
8 // Copyright (C) 2004 Novell, Inc (http://www.novell.com)
10 // Permission is hereby granted, free of charge, to any person obtaining
11 // a copy of this software and associated documentation files (the
12 // "Software"), to deal in the Software without restriction, including
13 // without limitation the rights to use, copy, modify, merge, publish,
14 // distribute, sublicense, and/or sell copies of the Software, and to
15 // permit persons to whom the Software is furnished to do so, subject to
16 // the following conditions:
18 // The above copyright notice and this permission notice shall be
19 // included in all copies or substantial portions of the Software.
21 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
24 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
25 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
26 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
27 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
32 using NUnit
.Framework
;
35 using System
.Collections
;
36 using System
.Security
.Cryptography
;
38 namespace MonoTests
.System
.Security
.Cryptography
{
41 public class CryptographicAttributeTest
: Assertion
{
43 static string defaultOid
= "1.2.840.113549.1.7.1";
44 static string defaultName
= "PKCS 7 Data";
47 public void ConstructorOid ()
49 Oid o
= new Oid (defaultOid
);
50 CryptographicAttribute ca
= new CryptographicAttribute (o
);
51 AssertEquals ("Oid.FriendlyName", defaultName
, ca
.Oid
.FriendlyName
);
52 AssertEquals ("Oid.Value", defaultOid
, ca
.Oid
.Value
);
53 AssertEquals ("Values", 0, ca
.Values
.Count
);
57 [ExpectedException (typeof (ArgumentNullException
))]
58 public void ConstructorOidNull ()
60 CryptographicAttribute ca
= new CryptographicAttribute (null);
64 public void ConstructorOidCollection ()
66 Oid o
= new Oid (defaultOid
);
67 AsnEncodedDataCollection coll
= new AsnEncodedDataCollection ();
68 CryptographicAttribute ca
= new CryptographicAttribute (o
, coll
);
69 AssertEquals ("Oid.FriendlyName", defaultName
, ca
.Oid
.FriendlyName
);
70 AssertEquals ("Oid.Value", defaultOid
, ca
.Oid
.Value
);
71 AssertEquals ("Values", 0, ca
.Values
.Count
);
72 coll
.Add (new AsnEncodedData (new byte [0]));
73 AssertEquals ("Values", 1, ca
.Values
.Count
);
77 [ExpectedException (typeof (ArgumentNullException
))]
78 public void ConstructorOidNullCollection ()
80 AsnEncodedDataCollection coll
= new AsnEncodedDataCollection ();
81 CryptographicAttribute ca
= new CryptographicAttribute (null, coll
);
85 public void ConstructorOidAsnEncodedDataCollectionNull ()
87 Oid o
= new Oid (defaultOid
);
88 AsnEncodedDataCollection coll
= null;
89 CryptographicAttribute ca
= new CryptographicAttribute (o
, coll
);
90 AssertEquals ("Oid.FriendlyName", defaultName
, ca
.Oid
.FriendlyName
);
91 AssertEquals ("Oid.Value", defaultOid
, ca
.Oid
.Value
);
92 AssertEquals ("Values", 0, ca
.Values
.Count
);