private static TestGherkin CreateGherkinTestInternal(string customName = null)
        {
            string name = customName ?? "GherkinTest" + Guid.NewGuid();
            var    test = new TestGherkin
            {
                Name  = name,
                Phase = PHASE_NEW
            };

            TestGherkin createdTest = entityService.Create(workspaceContext, test, TestHelper.NameSubtypeFields);

            Assert.AreEqual(name, createdTest.Name, "Mismatched name for newly created gherkin test");
            Assert.IsTrue(!string.IsNullOrEmpty(createdTest.Id), "Gherking test id shouldn't be null or empty");
            return(createdTest);
        }
        public static void ClassInit(TestContext context)
        {
            _guid        = Guid.NewGuid();
            _story       = StoryUtilities.CreateStory("Story_" + _guid);
            _epic        = EpicUtilities.CreateEpic("Epic_" + _guid);
            _gherkinTest = TestGherkinUtilities.CreateGherkinTest("TestGherkin_" + _guid);

            _quotesGuid       = Guid.NewGuid();
            _storyQuote       = StoryUtilities.CreateStory("Story_\"_SingleQuote_" + _quotesGuid);
            _storyDoubleQuote = StoryUtilities.CreateStory("Story_\"\"_DoubleQuote_" + _quotesGuid);

            _refreshGuid        = Guid.NewGuid();
            _refreshStory       = StoryUtilities.CreateStory("Story_" + _refreshGuid);
            _refreshEpic        = EpicUtilities.CreateEpic("Epic_" + _refreshGuid);
            _refreshGherkinTest = TestGherkinUtilities.CreateGherkinTest("TestGherkin_" + _refreshGuid);
        }
        /// <summary>
        /// Create a new gherkin test entity
        /// </summary>
        public static TestGherkin CreateGherkinTest(string customName = null)
        {
            var name = customName ?? "GherkinTest_" + Guid.NewGuid();
            var test = new TestGherkin
            {
                Name  = name,
                Phase = GetPhaseNew()
            };

            test.SetValue(CommonFields.Owner, BaseOctanePluginTest.User);

            var createdTest = BaseOctanePluginTest.EntityService.Create(BaseOctanePluginTest.WorkspaceContext, test, new[] { "name", "subtype" });

            Assert.AreEqual(name, createdTest.Name, "Mismatched name for newly created gherkin test");
            Assert.IsTrue(!string.IsNullOrEmpty(createdTest.Id), "Gherking test id shouldn't be null or empty");
            return(createdTest);
        }
        public static void ClassInit(TestContext context)
        {
            _storyEntity       = StoryUtilities.CreateStory();
            _taskEntity        = TaskUtilities.CreateTask(_storyEntity);
            _gherkinTestEntity = TestGherkinUtilities.CreateGherkinTest();

            var viewModel = new OctaneMyItemsViewModel();

            viewModel.LoadMyItemsAsync().Wait();

            _storyViewModel = viewModel.MyItems.FirstOrDefault(i => i.ID == _storyEntity.Id && i.Entity.Name == _storyEntity.Name);
            Assert.IsNotNull(_storyViewModel, "Couldn't find story entity in MyWork");

            _taskViewModel = viewModel.MyItems.FirstOrDefault(i => i.ID == _taskEntity.Id && i.Entity.Name == _taskEntity.Name);
            Assert.IsNotNull(_taskViewModel, "Couldn't find task entity in MyWork");

            _gherkinTestViewModel = viewModel.MyItems.FirstOrDefault(i => i.ID == _gherkinTestEntity.Id && i.Entity.Name == _gherkinTestEntity.Name);
            Assert.IsNotNull(_gherkinTestViewModel, "Couldn't find gherkin entity in MyWork");

            Assert.IsNull(OctaneItemViewModel.CurrentActiveItem, "There shouldn't be an active item");
        }