コード例 #1
0
        protected override Task OnInitAsync()
        {
            m_OxideEventsActivator = ActivatorUtilities.CreateInstance <OxideEventsActivator>(m_ServiceProvider);
            m_OxideEventsActivator.ActivateEventListeners();

            return(Task.CompletedTask);
        }
コード例 #2
0
        public void HookSubscriber_ShouldHaveSameName_AsHookingMethod()
        {
            var types = OxideEventsActivator.FindListenerTypes();

            foreach (Type type in types)
            {
                var methods = type.GetMethods(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic);

                foreach (MethodInfo methodInfo in methods)
                {
                    var attributes = methodInfo.GetCustomAttributes <HookMethodAttribute>(true);

                    foreach (HookMethodAttribute attribute in attributes)
                    {
                        Assert.AreEqual(methodInfo.Name, attribute.Name,
                                        "Method name and hook name mismatch in " + type.FullName);
                    }
                }
            }
        }