예제 #1
0
    public void playNextChapter()
    {
        planetSurface.setVisible(false);
        Vars.chapter++;
        switch (Vars.chapter)
        {
        case Chapter.INTRODUCTION: storyContainer = StoryParser.parseStory(introduction); break;

        default: Debug.Log("Unknown chapter: " + Vars.chapter); break;
        }
        UserInterface.showInterface = false;
        gameObject.SetActive(true);
        forward();
    }
        public void GetResponse_ReturnsSuccessFalse_OnError()
        {
            // Arrange
            dynamic json = JObject.Parse(TestJson.Get("api-error"));

            var sut = new StoryParser();

            // Act
            Response <Story> result = sut.GetResponse <Story>(json);

            // Assert
            Assert.AreEqual(false, result.Success);
            Assert.AreEqual("409", result.Code);
            Assert.AreEqual("Limit greater than 100.", result.Status);
            Assert.IsNull(result.Data);
        }
        public void GetResponse_ReturnsSuccessTrue_OnSuccess()
        {
            // Arrange
            dynamic json = JObject.Parse(TestJson.Get("story-success"));

            var sut = new StoryParser();

            // Act
            Response <Story> result = sut.GetResponse <Story>(json);

            // Assert
            Assert.AreEqual(true, result.Success);
            Assert.AreEqual("200", result.Code);
            Assert.AreEqual("Success.", result.Status);
            Assert.IsNotNull(result.Data);
        }
        public void GetResponse_ReturnsSuccessFalse_OnAuthError()
        {
            // Arrange
            dynamic json = JObject.Parse(TestJson.Get("auth-error"));

            var sut = new StoryParser();

            // Act
            Response <Story> result = sut.GetResponse <Story>(json);

            // Assert
            Assert.AreEqual(false, result.Success);
            Assert.AreEqual("InvalidCredentials", result.Code);
            Assert.AreEqual("The passed API key is invalid.", result.Status);
            Assert.IsNull(result.Data);
        }
예제 #5
0
        private void RenderStory()
        {
            _story = StoryParser.ParseStory();
            var storyExists = _story != null;

            PictureBoxStoryValid.Image = storyExists
                ? Resources.Checkmark
                : Resources.RedCross;

            PanelStoryDetails.Visible = storyExists;

            if (storyExists)
            {
                LabelStoryName.Text     = $"Name: {_story.Name}";
                LabelPassagesCount.Text = $"Passages: {_story.PassagesAmount}";
                LabelFirstPassage.Text  = $"First Passage: {_story.FirstPassage}";
            }
        }
예제 #6
0
        public string GenerateCode(string inputFilePath, string inputFileContents, string defaultNamespace)
        {
            var story = new StoryParser().Parse(inputFileContents, inputFilePath);

            return(_generator.Generate(story, defaultNamespace));
        }
예제 #7
0
        public void SetupContext()
        {
            var story = new StoryParser().Parse(storyText, null);

            RunStory(story);
        }
예제 #8
0
 public Classifier(AssemblyRegistry assemblyRegistry)
 {
     _parser = new StoryParser();
     _scenarioInterpreter = new StandardScenarioInterpreter(assemblyRegistry);
     _context = new SessionContext(assemblyRegistry).GetContextForStory().GetScenarioContext();
 }
예제 #9
0
 public Classifier(AssemblyRegistry assemblyRegistry)
 {
     _parser = new StoryParser();
     _scenarioInterpreter = new StandardScenarioInterpreter(assemblyRegistry);
     _context             = new SessionContext(assemblyRegistry).GetContextForStory().GetScenarioContext();
 }
예제 #10
0
        public void Parse_ReturnsStory()
        {
            // Arrange
            dynamic json = JObject.Parse(TestJson.Get("story"));

            var sut = new StoryParser();

            // Act
            Story result = sut.Parse(json);

            // Assert
            Assert.AreEqual(26, result.Id);
            Assert.AreEqual("Haunted by her own father's death, Elektra finds that killing her latest target's daughter Ñ the only witness to the murder Ñ is", result.Title);
            Assert.AreEqual("Test description", result.Description);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/stories/26", result.ResourceUri);
            Assert.AreEqual("story", result.Type);
            Assert.AreEqual(new DateTimeOffset(new DateTime(1969, 12, 31, 19, 0, 0), new TimeSpan(-5, 0, 0)), result.Modified);
            Assert.AreEqual(null, result.Thumbnail);

            Assert.AreEqual(2, result.Creators.Available);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/stories/26/creators", result.Creators.CollectionUri);
            Assert.AreEqual(2, result.Creators.Items.Count);
            Assert.AreEqual("Yoshitaka Amano", result.Creators.Items.First().Name);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/creators/29", result.Creators.Items.First().ResourceUri);
            Assert.AreEqual(null, result.Creators.Items.First().Type);
            Assert.AreEqual("penciller", result.Creators.Items.First().Role);
            Assert.AreEqual("Greg Rucka", result.Creators.Items.Last().Name);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/creators/28", result.Creators.Items.Last().ResourceUri);
            Assert.AreEqual(null, result.Creators.Items.Last().Type);
            Assert.AreEqual("writer", result.Creators.Items.Last().Role);
            Assert.AreEqual(2, result.Creators.Returned);

            Assert.AreEqual(0, result.Characters.Available);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/stories/26/characters", result.Characters.CollectionUri);
            Assert.AreEqual(0, result.Characters.Items.Count);
            Assert.AreEqual(0, result.Characters.Returned);

            Assert.AreEqual(1, result.Series.Available);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/stories/26/series", result.Series.CollectionUri);
            Assert.AreEqual(1, result.Series.Items.Count);
            Assert.AreEqual("Elektra & Wolverine: The Redeemer (1999)", result.Series.Items.Single().Name);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/series/25", result.Series.Items.Single().ResourceUri);
            Assert.AreEqual(null, result.Series.Items.Single().Type);
            Assert.AreEqual(null, result.Series.Items.Single().Role);
            Assert.AreEqual(1, result.Series.Returned);

            Assert.AreEqual(1, result.Comics.Available);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/stories/26/comics", result.Comics.CollectionUri);
            Assert.AreEqual(1, result.Comics.Items.Count);
            Assert.AreEqual("Elektra & Wolverine: The Redeemer (Hardcover)", result.Comics.Items.Single().Name);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/comics/960", result.Comics.Items.Single().ResourceUri);
            Assert.AreEqual(null, result.Comics.Items.Single().Type);
            Assert.AreEqual(null, result.Comics.Items.Single().Role);
            Assert.AreEqual(1, result.Comics.Returned);

            Assert.AreEqual(0, result.Events.Available);
            Assert.AreEqual("http://gateway.marvel.com/v1/public/stories/26/events", result.Events.CollectionUri);
            Assert.AreEqual(0, result.Events.Items.Count);
            Assert.AreEqual(0, result.Events.Returned);

            Assert.AreEqual("http://gateway.marvel.com/v1/public/comics/960", result.OriginalIssue.ResourceUri);
            Assert.AreEqual("Elektra & Wolverine: The Redeemer (Hardcover)", result.OriginalIssue.Name);
        }