1
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
2
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
5
using System.Collections.Generic;
6
using System.ComponentModel;
7
using System.ComponentModel.Design;
10
using System.Windows.Forms;
12
using ICSharpCode.RubyBinding;
13
using ICSharpCode.Scripting.Tests.Utils;
14
using NUnit.Framework;
15
using RubyBinding.Tests.Utils;
17
namespace RubyBinding.Tests.Designer
20
public class LoadEventHandlerTestFixture : LoadFormTestFixtureBase
22
public override string RubyCode {
25
"class TestForm < System::Windows::Forms::Form\r\n" +
26
" def InitializeComponent()\r\n" +
27
" self.SuspendLayout()\r\n" +
31
" self.Name = \"TestForm\"\r\n" +
32
" self.Load { |sender, e| self.TestFormLoad(sender, e) }\r\n" +
33
" self.ResumeLayout(false)\r\n" +
39
public override void BeforeSetUpFixture()
41
base.ComponentCreator.SetEventPropertyDescriptor(new MockPropertyDescriptor("abc", "TestFormLoad", true));
44
public EventDescriptor GetLoadEventDescriptor()
46
return TypeDescriptor.GetEvents(Form).Find("Load", true);
49
public MockPropertyDescriptor GetLoadEventPropertyDescriptor()
51
EventDescriptor loadEventDescriptor = GetLoadEventDescriptor();
52
return base.ComponentCreator.GetEventProperty(loadEventDescriptor) as MockPropertyDescriptor;
56
public void EventPropertyDescriptorValueSetToEventHandlerMethodName()
58
Assert.AreEqual("TestFormLoad", GetLoadEventPropertyDescriptor().GetValue(Form) as String);
62
public void PropertyDescriptorSetValueComponentIsForm()
64
Assert.AreEqual(Form, GetLoadEventPropertyDescriptor().GetSetValueComponent());