public void DoRenameTest(string testFile, int typeSequenceInFile = 1, params string[] expectedRenamedTests)
        {
            ExecuteWithinSettingsTransaction((settingsStore =>
            {
                this.RunGuarded((Action)(() => Lifetimes.Using((Action <Lifetime>)(lifetime =>
                {
                    ConfigureForTestCopStrategy(settingsStore);

                    settingsStore.SetValue <TestFileAnalysisSettings, bool>(s => s.SupportRenameRefactor, true);

                    ISolution solution;
                    using (Locks.UsingWriteLock())
                    {
                        var solutionFolder = this.CopyTestDataDirectoryToTemp(lifetime, @"..\..\" + RelativeTestDataPath);
                        solution = (ISolution)this.SolutionManager.OpenExistingSolution(FileSystemPath.Parse(solutionFolder).Combine(SolutionName));
                    }
                    lifetime.AddAction(() => SolutionManager.CloseSolution(solution));

                    var findFirstTypeInFile = FindTypeInFile(solution, testFile, typeSequenceInFile);

                    var fileRenames = new RenameTestFilesTooRefactoring().GetFileRenames(findFirstTypeInFile, "NewClass");

                    var filesToRename = fileRenames.Select(f => f.ProjectItem.GetPresentableProjectPath() + "->" + f.NewName).ToList();

                    Assert.AreEqual(expectedRenamedTests.Length, filesToRename.Count);

                    expectedRenamedTests.ForEach(expectation => CollectionAssert.Contains(filesToRename, expectation));
                }))));
            }));
        }