Exemple #1
0
        public void AddAliasGetAliasTest( )
        {
            using (var module = new NativeModule(TestModuleName))
            {
                Function testFunc = CreateSimpleVoidNopTestFunction(module, "_test");

                var alias = module.AddAlias(testFunc, TestModuleName);
                Assert.AreSame(alias, module.GetAlias(TestModuleName));
                Assert.AreSame(module, alias.ParentModule);
                Assert.AreSame(testFunc, alias.Aliasee);
                Assert.AreEqual(TestModuleName, alias.Name);
                Assert.AreEqual(Linkage.External, alias.Linkage);
                Assert.AreSame(testFunc.NativeType, alias.NativeType);

                // alias.Operands[ 0 ] is just another way to get alias.Aliasee
                Assert.AreEqual(1, alias.Operands.Count);
                Assert.AreSame(testFunc, alias.Operands[0]);

                Assert.IsFalse(alias.IsNull);
                Assert.IsFalse(alias.IsUndefined);
                Assert.IsFalse(alias.IsZeroValue);
            }
        }