Ejemplo n.º 1
0
        public IUnitTestElement GetOrCreateTestMethod(IProject project, IClrTypeName typeName, string methodName, string assemblyLocation, bool isParameterized)
        {
            var classElementId = GetClassElementId(project, typeName);
            var classElement   = unitTestManager.GetElementById(project, classElementId) as  TestClassElement;

            var id      = string.Format("{0}.{1}", classElementId, methodName);
            var element = unitTestManager.GetElementById(project, id) as TestMethodElement;

            if (element != null)
            {
                element.State = UnitTestElementState.Valid;
            }
            else
            {
                element = new TestMethodElement(
                    provider,
                    classElement,
                    new ProjectModelElementEnvoy(project),
                    declaredElementProvider,
                    id,
                    typeName.GetPersistent(),
                    methodName,
                    assemblyLocation,
                    isParameterized);
            }

            if (!classElement.Children.Contains(element))
            {
                classElement.Children.Add(element);
            }

            return(element);
        }
Ejemplo n.º 2
0
        public static IUnitTestElement GetTestCase(IProject project, TestMethodElement testMethod, string name)
        {
            var id = GetTestCaseId(testMethod, GetTestCaseShortName(name, testMethod));
            var unitTestElementManager = project.GetSolution().GetComponent <IUnitTestElementManager>();

            return(unitTestElementManager.GetElementById(project, id) as TestCaseElement);
        }
Ejemplo n.º 3
0
        public IUnitTestElement GetOrCreateTestCase(
            IProject project,
            TestMethodElement testMethod,
            string name)
        {
            var element = GetTestCase(project, testMethod, name);

            return(element ?? CreateTestCase(provider, project, testMethod, name));
        }
Ejemplo n.º 4
0
 private static string GetTestCaseId(TestMethodElement methodElement, string shortName)
 {
     return(string.Format("{0}.{1}", methodElement.Id, shortName));
 }
Ejemplo n.º 5
0
        private static string GetTestCaseShortName(string caseName, TestMethodElement testMethod)
        {
            var prefix = testMethod.TypeName.FullName + ".";

            return(caseName.StartsWith(prefix) ? caseName.Substring(prefix.Length) : caseName);
        }
Ejemplo n.º 6
0
        public static IUnitTestElement CreateTestCase(TestProvider provider, IProject project, TestMethodElement testMethod, string name)
        {
            var shortName = GetTestCaseShortName(name, testMethod);
            var id        = GetTestCaseId(testMethod, shortName);

            return(new TestCaseElement(provider, testMethod, new ProjectModelElementEnvoy(project), id, shortName));
        }