21 changed files with 560 additions and 17 deletions
@ -0,0 +1,62 @@
@@ -0,0 +1,62 @@
|
||||
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
|
||||
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
|
||||
|
||||
using System; |
||||
using ICSharpCode.PackageManagement.EnvDTE; |
||||
using ICSharpCode.SharpDevelop.Dom; |
||||
using NUnit.Framework; |
||||
using PackageManagement.Tests.Helpers; |
||||
|
||||
namespace PackageManagement.Tests.EnvDTE |
||||
{ |
||||
[TestFixture] |
||||
public class CodeDelegateTests |
||||
{ |
||||
CodeDelegate codeDelegate; |
||||
ProjectContentHelper helper; |
||||
IClass fakeDelegate; |
||||
|
||||
[SetUp] |
||||
public void Init() |
||||
{ |
||||
helper = new ProjectContentHelper(); |
||||
} |
||||
|
||||
void CreatePublicDelegate(string name) |
||||
{ |
||||
fakeDelegate = helper.AddPublicDelegateToProjectContent(name); |
||||
CreateDelegate(); |
||||
} |
||||
|
||||
void CreatePrivateDelegate(string name) |
||||
{ |
||||
fakeDelegate = helper.AddPrivateDelegateToProjectContent(name); |
||||
CreateDelegate(); |
||||
} |
||||
|
||||
void CreateDelegate() |
||||
{ |
||||
codeDelegate = new CodeDelegate(helper.FakeProjectContent, fakeDelegate); |
||||
} |
||||
|
||||
[Test] |
||||
public void Access_PublicDelegate_ReturnsPublic() |
||||
{ |
||||
CreatePublicDelegate("MyDelegate"); |
||||
|
||||
vsCMAccess access = codeDelegate.Access; |
||||
|
||||
Assert.AreEqual(vsCMAccess.vsCMAccessPublic, access); |
||||
} |
||||
|
||||
[Test] |
||||
public void Access_PrivateDelegate_ReturnsPrivate() |
||||
{ |
||||
CreatePrivateDelegate("MyDelegate"); |
||||
|
||||
vsCMAccess access = codeDelegate.Access; |
||||
|
||||
Assert.AreEqual(vsCMAccess.vsCMAccessPrivate, access); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,82 @@
@@ -0,0 +1,82 @@
|
||||
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
|
||||
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
|
||||
|
||||
using System; |
||||
using ICSharpCode.PackageManagement.EnvDTE; |
||||
using ICSharpCode.SharpDevelop.Dom; |
||||
using NUnit.Framework; |
||||
using PackageManagement.Tests.Helpers; |
||||
using Rhino.Mocks; |
||||
|
||||
namespace PackageManagement.Tests.EnvDTE |
||||
{ |
||||
[TestFixture] |
||||
public class CodeFunctionTests |
||||
{ |
||||
CodeFunction codeFunction; |
||||
IMethod method; |
||||
ProjectContentHelper helper; |
||||
|
||||
[SetUp] |
||||
public void Init() |
||||
{ |
||||
helper = new ProjectContentHelper(); |
||||
} |
||||
|
||||
void CreateMSBuildMethod(string name) |
||||
{ |
||||
method = MockRepository.GenerateMock<IMethod, IEntity>(); |
||||
method.Stub(m => m.ProjectContent).Return(helper.FakeProjectContent); |
||||
} |
||||
|
||||
void CreateMSBuildPublicMethod(string name) |
||||
{ |
||||
CreateMSBuildMethod(name); |
||||
method.Stub(m => m.IsPublic).Return(true); |
||||
} |
||||
|
||||
void CreateMSBuildPrivateMethod(string name) |
||||
{ |
||||
CreateMSBuildMethod(name); |
||||
method.Stub(m => m.IsPublic).Return(false); |
||||
method.Stub(m => m.IsPrivate).Return(true); |
||||
} |
||||
|
||||
void CreatePublicFunction(string name) |
||||
{ |
||||
CreateMSBuildPublicMethod(name); |
||||
CreateFunction(); |
||||
} |
||||
|
||||
void CreatePrivateFunction(string name) |
||||
{ |
||||
CreateMSBuildPrivateMethod(name); |
||||
CreateFunction(); |
||||
} |
||||
|
||||
void CreateFunction() |
||||
{ |
||||
codeFunction = new CodeFunction(method); |
||||
} |
||||
|
||||
[Test] |
||||
public void Access_PublicFunction_ReturnsPublic() |
||||
{ |
||||
CreatePublicFunction("MyFunction"); |
||||
|
||||
vsCMAccess access = codeFunction.Access; |
||||
|
||||
Assert.AreEqual(vsCMAccess.vsCMAccessPublic, access); |
||||
} |
||||
|
||||
[Test] |
||||
public void Access_PrivateFunction_ReturnsPrivate() |
||||
{ |
||||
CreatePrivateFunction("MyFunction"); |
||||
|
||||
vsCMAccess access = codeFunction.Access; |
||||
|
||||
Assert.AreEqual(vsCMAccess.vsCMAccessPrivate, access); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,62 @@
@@ -0,0 +1,62 @@
|
||||
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
|
||||
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
|
||||
|
||||
using System; |
||||
using ICSharpCode.PackageManagement.EnvDTE; |
||||
using ICSharpCode.SharpDevelop.Dom; |
||||
using NUnit.Framework; |
||||
using PackageManagement.Tests.Helpers; |
||||
|
||||
namespace PackageManagement.Tests.EnvDTE |
||||
{ |
||||
[TestFixture] |
||||
public class CodeStructTests |
||||
{ |
||||
CodeStruct codeStruct; |
||||
ProjectContentHelper helper; |
||||
IClass fakeStruct; |
||||
|
||||
[SetUp] |
||||
public void Init() |
||||
{ |
||||
helper = new ProjectContentHelper(); |
||||
} |
||||
|
||||
void CreatePublicStruct(string name) |
||||
{ |
||||
fakeStruct = helper.AddPublicStructToProjectContent(name); |
||||
CreateStruct(); |
||||
} |
||||
|
||||
void CreatePrivateStruct(string name) |
||||
{ |
||||
fakeStruct = helper.AddPrivateStructToProjectContent(name); |
||||
CreateStruct(); |
||||
} |
||||
|
||||
void CreateStruct() |
||||
{ |
||||
codeStruct = new CodeStruct(helper.FakeProjectContent, fakeStruct); |
||||
} |
||||
|
||||
[Test] |
||||
public void Access_PublicStruct_ReturnsPublic() |
||||
{ |
||||
CreatePublicStruct("MyStruct"); |
||||
|
||||
vsCMAccess access = codeStruct.Access; |
||||
|
||||
Assert.AreEqual(vsCMAccess.vsCMAccessPublic, access); |
||||
} |
||||
|
||||
[Test] |
||||
public void Access_PrivateStruct_ReturnsPrivate() |
||||
{ |
||||
CreatePrivateStruct("MyStruct"); |
||||
|
||||
vsCMAccess access = codeStruct.Access; |
||||
|
||||
Assert.AreEqual(vsCMAccess.vsCMAccessPrivate, access); |
||||
} |
||||
} |
||||
} |
@ -0,0 +1,82 @@
@@ -0,0 +1,82 @@
|
||||
// Copyright (c) AlphaSierraPapa for the SharpDevelop Team (for details please see \doc\copyright.txt)
|
||||
// This code is distributed under the GNU LGPL (for details please see \doc\license.txt)
|
||||
|
||||
using System; |
||||
using ICSharpCode.PackageManagement.EnvDTE; |
||||
using ICSharpCode.SharpDevelop.Dom; |
||||
using NUnit.Framework; |
||||
using PackageManagement.Tests.Helpers; |
||||
using Rhino.Mocks; |
||||
|
||||
namespace PackageManagement.Tests.EnvDTE |
||||
{ |
||||
[TestFixture] |
||||
public class CodeVariableTests |
||||
{ |
||||
CodeVariable codeVariable; |
||||
IField field; |
||||
ProjectContentHelper helper; |
||||
|
||||
[SetUp] |
||||
public void Init() |
||||
{ |
||||
helper = new ProjectContentHelper(); |
||||
} |
||||
|
||||
void CreateMSBuildField(string name) |
||||
{ |
||||
field = MockRepository.GenerateMock<IField, IEntity>(); |
||||
field.Stub(f => f.ProjectContent).Return(helper.FakeProjectContent); |
||||
} |
||||
|
||||
void CreateMSBuildPublicField(string name) |
||||
{ |
||||
CreateMSBuildField(name); |
||||
field.Stub(f => f.IsPublic).Return(true); |
||||
} |
||||
|
||||
void CreateMSBuildPrivateField(string name) |
||||
{ |
||||
CreateMSBuildField(name); |
||||
field.Stub(f => f.IsPublic).Return(false); |
||||
field.Stub(f => f.IsPrivate).Return(true); |
||||
} |
||||
|
||||
void CreatePublicVariable(string name) |
||||
{ |
||||
CreateMSBuildPublicField(name); |
||||
CreateVariable(); |
||||
} |
||||
|
||||
void CreatePrivateVariable(string name) |
||||
{ |
||||
CreateMSBuildPrivateField(name); |
||||
CreateVariable(); |
||||
} |
||||
|
||||
void CreateVariable() |
||||
{ |
||||
codeVariable = new CodeVariable(field); |
||||
} |
||||
|
||||
[Test] |
||||
public void Access_PublicVariable_ReturnsPublic() |
||||
{ |
||||
CreatePublicVariable("MyVariable"); |
||||
|
||||
vsCMAccess access = codeVariable.Access; |
||||
|
||||
Assert.AreEqual(vsCMAccess.vsCMAccessPublic, access); |
||||
} |
||||
|
||||
[Test] |
||||
public void Access_PrivateVariable_ReturnsPrivate() |
||||
{ |
||||
CreatePrivateVariable("MyVariable"); |
||||
|
||||
vsCMAccess access = codeVariable.Access; |
||||
|
||||
Assert.AreEqual(vsCMAccess.vsCMAccessPrivate, access); |
||||
} |
||||
} |
||||
} |
Loading…
Reference in new issue