~halega/+junk/sharpdevelop

« back to all changes in this revision

Viewing changes to src/AddIns/BackendBindings/Python/PythonBinding/Test/Resolver/MemberNameTests.cs

  • Committer: sk
  • Date: 2011-09-10 05:17:57 UTC
  • Revision ID: halega@halega.com-20110910051757-qfouz1llya9m6boy
4.1.0.7915 Release Candidate 1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
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)
 
3
 
 
4
using System;
 
5
using ICSharpCode.PythonBinding;
 
6
using NUnit.Framework;
 
7
 
 
8
namespace PythonBinding.Tests.Resolver
 
9
{
 
10
        [TestFixture]
 
11
        public class MemberNameTests
 
12
        {
 
13
                [Test]
 
14
                public void MemberNameIsEqualReturnsTrueWhenNameAndTypeAreSame()
 
15
                {
 
16
                        MemberName lhs = new MemberName("type", "member");
 
17
                        MemberName rhs = new MemberName("type", "member");
 
18
                        
 
19
                        Assert.IsTrue(lhs.Equals(rhs));
 
20
                }
 
21
                
 
22
                [Test]
 
23
                public void MemberNameIsEqualsReturnsFalseWhenMemberNameIsNull()
 
24
                {
 
25
                        MemberName lhs = new MemberName("type", "Member");
 
26
                        Assert.IsFalse(lhs.Equals(null));
 
27
                }
 
28
                
 
29
                [Test]
 
30
                public void MemberNamePropertyReturnsMemberName()
 
31
                {
 
32
                        MemberName methodName = new MemberName("type", "method");
 
33
                        Assert.AreEqual("method", methodName.Name);
 
34
                }
 
35
                
 
36
                [Test]
 
37
                public void MemberNameTypePropertyReturnsType()
 
38
                {
 
39
                        MemberName methodName = new MemberName("type", "method");
 
40
                        Assert.AreEqual("type", methodName.Type);
 
41
                }
 
42
                
 
43
                [Test]
 
44
                public void MemberNameIsEqualReturnsFalseWhenMemberNameIsDifferent()
 
45
                {
 
46
                        MemberName lhs = new MemberName("type", "method1");
 
47
                        MemberName rhs = new MemberName("type", "method2");
 
48
                        
 
49
                        Assert.IsFalse(lhs.Equals(rhs));
 
50
                }
 
51
                
 
52
                [Test]
 
53
                public void MemberNameIsEqualReturnsFalseWhenTypeNameIsDifferent()
 
54
                {
 
55
                        MemberName lhs = new MemberName("type1", "method");
 
56
                        MemberName rhs = new MemberName("type2", "method");
 
57
                        
 
58
                        Assert.IsFalse(lhs.Equals(rhs));
 
59
                }
 
60
                
 
61
                [Test]
 
62
                public void MemberNameToStringShowsTypeNameAndMemberName()
 
63
                {
 
64
                        MemberName methodName = new MemberName("type", "method");
 
65
                        string expectedText = "Type: type, Member: method";
 
66
                        Assert.AreEqual(expectedText, methodName.ToString());
 
67
                }
 
68
                
 
69
                [Test]
 
70
                public void CreateMemberNameWithNullStringReturnsMemberNameWithEmptyTypeAndMemberName()
 
71
                {
 
72
                        MemberName methodName = new MemberName(null);
 
73
                        MemberName expectedMemberName = new MemberName(String.Empty, String.Empty);
 
74
                        Assert.AreEqual(expectedMemberName, methodName);
 
75
                }
 
76
                
 
77
                [Test]
 
78
                public void CreateMemberNameWithEmptyStringReturnsMemberNameWithEmptyTypeAndMemberName()
 
79
                {
 
80
                        MemberName methodName = new MemberName(String.Empty);
 
81
                        MemberName expectedMemberName = new MemberName(String.Empty, String.Empty);
 
82
                        Assert.AreEqual(expectedMemberName, methodName);
 
83
                }
 
84
                
 
85
                [Test]
 
86
                public void CreateMemberNameWithSystemDotConsoleDotWriteLineReturnsMemberNameWriteLineAndTypeNameSystemDotConsole()
 
87
                {
 
88
                        MemberName methodName = new MemberName("System.Console.WriteLine");
 
89
                        MemberName expectedMemberName = new MemberName("System.Console", "WriteLine");
 
90
                        
 
91
                        Assert.AreEqual(expectedMemberName, methodName);
 
92
                }
 
93
                
 
94
                [Test]
 
95
                public void CreateMemberNameWithExpressionWithoutDotCharReturnsMemberNameOfEmptyStringAndExpressionAsTypeName()
 
96
                {
 
97
                        MemberName methodName = new MemberName("test");
 
98
                        MemberName expectedMemberName = new MemberName("test", String.Empty);
 
99
                        Assert.AreEqual(expectedMemberName, methodName);
 
100
                }
 
101
                
 
102
                [Test]
 
103
                public void HasNameReturnsFalseForMemberNameWithEmptyStringForMemberName()
 
104
                {
 
105
                        MemberName memberName = new MemberName("System", String.Empty);
 
106
                        Assert.IsFalse(memberName.HasName);
 
107
                }
 
108
                
 
109
                [Test]
 
110
                public void HasNameReturnsTrueForMemberNameWithNonEmptyStringForMemberName()
 
111
                {
 
112
                        MemberName memberName = new MemberName("System", "Console");
 
113
                        Assert.IsTrue(memberName.HasName);
 
114
                }
 
115
        }
 
116
}