1 using System; 2 using NUnit.Framework; 3 using Premake.Tests.Framework; 4 5 namespace Premake.Tests.Gnu.Cs 6 { 7 [TestFixture] 8 public class Test_Links 9 { 10 Script _script; 11 Project _expects; 12 Parser _parser; 13 14 #region Setup and Teardown 15 [SetUp] Test_Setup()16 public void Test_Setup() 17 { 18 _script = Script.MakeBasic("exe", "c#"); 19 20 _expects = new Project(); 21 _expects.Package.Add(1); 22 _expects.Package[0].Config.Add(2); 23 24 _parser = new GnuParser(); 25 } 26 Run()27 public void Run() 28 { 29 TestEnvironment.Run(_script, _parser, _expects, null); 30 } 31 #endregion 32 33 [Test] Test_LinksOnPackage()34 public void Test_LinksOnPackage() 35 { 36 _script.Append("package.links = { 'lib1', 'lib2' }"); 37 _expects.Package[0].Config[0].Links = new string[] { "lib1.dll", "lib2.dll" }; 38 _expects.Package[0].Config[1].Links = new string[] { "lib1.dll", "lib2.dll" }; 39 Run(); 40 } 41 42 [Test] Test_LinksOnPackageConfig()43 public void Test_LinksOnPackageConfig() 44 { 45 /* .NET uses same assemblies for all configs */ 46 _script.Append("package.config['Debug'].links = { 'lib1-d' }"); 47 _script.Append("package.config['Release'].links = { 'lib1' }"); 48 _expects.Package[0].Config[0].Links = new string[] { "lib1-d.dll" }; 49 _expects.Package[0].Config[1].Links = new string[] { "lib1-d.dll" }; 50 Run(); 51 } 52 53 [Test] Test_LinksOnPackageAndConfig()54 public void Test_LinksOnPackageAndConfig() 55 { 56 /* .NET uses same assemblies for all configs */ 57 _script.Append("package.links = { 'pkglib' }"); 58 _script.Append("package.config['Debug'].links = { 'liba-d' }"); 59 _script.Append("package.config['Release'].links = { 'liba' }"); 60 _expects.Package[0].Config[0].Links = new string[] { "pkglib.dll", "liba-d.dll" }; 61 _expects.Package[0].Config[1].Links = new string[] { "pkglib.dll", "liba-d.dll" }; 62 Run(); 63 } 64 65 } 66 } 67