Exemple #1
0
        /// <summary>
        /// Assigns part-of-speech tags, and sets Action, Theme and Arguments for methods that have a reactive name.
        /// </summary>
        /// <param name="mdn">The MethodDeclarationNode to parse.</param>
        protected void ParseReactiveName(MethodDeclarationNode mdn)
        {
            //this assumes that the name has already been split and the preamble stripped

            mdn.Action = mdn.ParsedName[0].GetNewWord("handle", PartOfSpeechTag.Verb);
            this.PosTagger.TagNounPhrase(mdn.ParsedName);
            mdn.CreateThemeFromPhrases(mdn.Preamble, mdn.ParsedName);
            SetDefaultUnknownArguments(mdn);
            mdn.IsReactive = true;
        }
Exemple #2
0
        public void TestCreateThemeFromPhrases_SecondNull()
        {
            MethodDeclarationNode mdn = new MethodDeclarationNode("MyMethod");
            PhraseNode            pn2 = new PhraseNode(new string[] { "cowboy", "watermelon" });

            mdn.CreateThemeFromPhrases(null, pn2);
            Assert.AreSame(pn2, mdn.Theme);
            Assert.AreEqual(2, pn2.Size());
            Assert.AreEqual("cowboy", pn2[0].Text);
            Assert.AreEqual("watermelon", pn2[1].Text);
        }
Exemple #3
0
        public void TestCreateThemeFromPhrases_FirstNull()
        {
            MethodDeclarationNode mdn = new MethodDeclarationNode("MyMethod");
            PhraseNode            pn1 = new PhraseNode(new string[] { "hello", "World" });

            mdn.CreateThemeFromPhrases(pn1, null);
            Assert.AreSame(pn1, mdn.Theme);
            Assert.AreEqual(2, pn1.Size());
            Assert.AreEqual("hello", pn1[0].Text);
            Assert.AreEqual("World", pn1[1].Text);
        }
Exemple #4
0
        public void TestCreateThemeFromPhrases()
        {
            MethodDeclarationNode mdn = new MethodDeclarationNode("MyMethod");
            PhraseNode            pn1 = new PhraseNode(new string[] { "hello", "World" });
            PhraseNode            pn2 = new PhraseNode(new string[] { "cowboy", "watermelon" });

            mdn.CreateThemeFromPhrases(pn1, pn2);
            Assert.AreSame(pn1, mdn.Theme);
            Assert.AreEqual(4, pn1.Size());
            Assert.AreEqual("hello", pn1[0].Text);
            Assert.AreEqual("World", pn1[1].Text);
            Assert.AreEqual("cowboy", pn1[2].Text);
            Assert.AreEqual("watermelon", pn1[3].Text);
        }
 public void TestCreateThemeFromPhrases_SecondNull() {
     MethodDeclarationNode mdn = new MethodDeclarationNode("MyMethod");
     PhraseNode pn2 = new PhraseNode(new string[] { "cowboy", "watermelon" });
     mdn.CreateThemeFromPhrases(null, pn2);
     Assert.AreSame(pn2, mdn.Theme);
     Assert.AreEqual(2, pn2.Size());
     Assert.AreEqual("cowboy", pn2[0].Text);
     Assert.AreEqual("watermelon", pn2[1].Text);
 }
 public void TestCreateThemeFromPhrases_FirstNull() {
     MethodDeclarationNode mdn = new MethodDeclarationNode("MyMethod");
     PhraseNode pn1 = new PhraseNode(new string[] { "hello", "World" });
     mdn.CreateThemeFromPhrases(pn1, null);
     Assert.AreSame(pn1, mdn.Theme);
     Assert.AreEqual(2, pn1.Size());
     Assert.AreEqual("hello", pn1[0].Text);
     Assert.AreEqual("World", pn1[1].Text);
 }
 public void TestCreateThemeFromPhrases() {
     MethodDeclarationNode mdn = new MethodDeclarationNode("MyMethod");
     PhraseNode pn1 = new PhraseNode(new string[] { "hello", "World" });
     PhraseNode pn2 = new PhraseNode(new string[] { "cowboy", "watermelon" });
     mdn.CreateThemeFromPhrases(pn1, pn2);
     Assert.AreSame(pn1, mdn.Theme);
     Assert.AreEqual(4, pn1.Size());
     Assert.AreEqual("hello", pn1[0].Text);
     Assert.AreEqual("World", pn1[1].Text);
     Assert.AreEqual("cowboy", pn1[2].Text);
     Assert.AreEqual("watermelon", pn1[3].Text);
 }