public void GetObjectInMethodCallFromSpecifiedObject() { string RubyCode = "self.Controls.AddRange(System::Array[System::Windows::Forms::ToolStripItem].new(\r\n" + " [@fileToolStripMenuItem,\r\n" + " @editToolStripMenuItem]))"; MethodCall callExpression = RubyParserHelper.GetMethodCall(RubyCode); using (Form form = new Form()) { Assert.AreSame(form.Controls, RubyControlFieldExpression.GetMember(form, callExpression)); } }
public void GetObjectForUnknownComponent() { string RubyCode = "@menuStrip1.SuspendLayout()"; MethodCall call = RubyParserHelper.GetMethodCall(RubyCode); RubyControlFieldExpression field = RubyControlFieldExpression.Create(call); using (MenuStrip menuStrip = new MenuStrip()) { MockComponentCreator creator = new MockComponentCreator(); creator.Add(menuStrip, "unknown"); Assert.IsNull(field.GetMember(creator)); } }
public void GetObjectInMethodCall() { string RubyCode = "@menuStrip1.Items.AddRange(System::Array[System::Windows::Forms::ToolStripItem].new(\r\n" + " [@fileToolStripMenuItem,\r\n" + " @editToolStripMenuItem]))"; MethodCall call = RubyParserHelper.GetMethodCall(RubyCode); RubyControlFieldExpression field = RubyControlFieldExpression.Create(call); using (MenuStrip menuStrip = new MenuStrip()) { MockComponentCreator creator = new MockComponentCreator(); creator.Add(menuStrip, "menuStrip1"); Assert.AreSame(menuStrip.Items, field.GetMember(creator)); } }
public void GetInstanceObjectInMethodCall() { string RubyCode = "treeNode1.Nodes.AddRange(System::Array[System::Windows::Forms::TreeNode].new(\r\n" + " [treeNode2]))"; MethodCall callExpression = RubyParserHelper.GetMethodCall(RubyCode); RubyControlFieldExpression field = RubyControlFieldExpression.Create(callExpression); TreeNode treeNode1 = new TreeNode(); TreeNode treeNode2 = new TreeNode(); MockComponentCreator creator = new MockComponentCreator(); creator.AddInstance(treeNode1, "treeNode1"); creator.AddInstance(treeNode2, "treeNode2"); object member = field.GetMember(creator); Assert.AreSame(treeNode1.Nodes, member); }