}
[Test]
- [Category ("NotWorking")]
+ [Category ("NotWorking")] // bug #75246
public void AssemblyName_PublicKey ()
{
AssemblyName assemblyName = new AssemblyName ();
assemblyName.Version = new Version ("1.2.3.4");
assemblyName.KeyPair = new StrongNameKeyPair (strongName);
+ Assert.IsNull (assemblyName.CultureInfo, "#1");
+ Assert.AreEqual ("AssemblyNameTest, Version=1.2.3.4", assemblyName.FullName, "#2");
+
const string fullName = "AssemblyNameTest, Version=1.2.3.4, Culture=neutral, PublicKeyToken=0eea7ce65f35f2d8";
- const string abName = "AssemblyNameTest, Version=1.2.3.4, PublicKeyToken=0eea7ce65f35f2d8";
- AssertAssemblyName (tempDir, assemblyName, abName, fullName);
+ AssemblyBuilder ab = AppDomain.CurrentDomain.DefineDynamicAssembly (
+ assemblyName, AssemblyBuilderAccess.Save, tempDir);
+
+ AssemblyName abName = ab.GetName ();
+ Assert.IsNotNull (abName.GetPublicKeyToken (), "#3");
+ Assert.IsTrue (abName.GetPublicKeyToken ().Length > 0, "#4");
+ Assert.IsNotNull (abName.GetPublicKey () != null, "#5");
+ Assert.IsTrue (abName.GetPublicKey ().Length > 0, "#6");
+ Assert.IsNotNull (abName.CultureInfo != null, "#7");
+#if NET_2_0
+ Assert.IsTrue (abName.CultureInfo != CultureInfo.InvariantCulture, "#8");
+ Assert.AreEqual (CultureInfo.InvariantCulture.LCID, abName.CultureInfo.LCID, "#9");
+ Assert.AreEqual (fullName, abName.FullName, "#10");
+#else
+ Assert.AreEqual (CultureInfo.InvariantCulture, abName.CultureInfo, "#11");
+ Assert.AreEqual ("AssemblyNameTest, Version=1.2.3.4, PublicKeyToken=0eea7ce65f35f2d8", abName.FullName, "#12");
+#endif
+
+ ab.Save ("AssemblyNameTest.dll");
+
+ AssemblyName bakedName = AssemblyName.GetAssemblyName (Path.Combine(
+ tempDir, "AssemblyNameTest.dll"));
+
+ Assert.IsNotNull (bakedName.GetPublicKeyToken (), "#13");
+ Assert.IsNotNull (bakedName.GetPublicKey (), "#14");
+ Assert.IsNotNull (bakedName.CultureInfo, "#15");
+
+#if NET_2_0
+ Assert.IsTrue (abName.CultureInfo != CultureInfo.InvariantCulture, "#16");
+ Assert.AreEqual (CultureInfo.InvariantCulture.LCID, abName.CultureInfo.LCID, "#17");
+#else
+ Assert.AreEqual (CultureInfo.InvariantCulture, bakedName.CultureInfo, "#18");
+#endif
+
+ Assert.AreEqual (fullName, bakedName.FullName, "#19");
}
[Test]