Example #1
0
        public void UpdateCurrentType(Type pTypeA, Type pTypeB, Type pExpectType)
        {
            var d = new TravPathData("");

            d.UpdateCurrentType(pTypeA);
            Type resultA = d.CurrType;

            d.UpdateCurrentType(pTypeB);
            Type resultB = d.CurrType;

            Assert.AreEqual(pTypeA, resultA, "Incorrect Result A.");
            Assert.AreEqual(pExpectType, resultB, "Incorrect Result A.");
        }
Example #2
0
        public void IncrementCurrentIndex()
        {
            const int incA = 5;
            const int incB = 3;

            var d = new TravPathData("");

            d.IncrementCurrentIndex(incA);
            int resultA = d.CurrIndex;

            d.IncrementCurrentIndex(incB);
            int resultB = d.CurrIndex;

            Assert.AreEqual(incA, resultA, "Incorrect Result A.");
            Assert.AreEqual(incA + incB, resultB, "Incorrect Result A.");
        }
Example #3
0
        /*--------------------------------------------------------------------------------------------*/
        private static bool IsAcceptableStepForType(ITravStep pStep, Type pFromType)
        {
            if (pStep == null)
            {
                return(false);
            }

            if (!TravPathData.IsSameTypeOrSubclass(pStep.FromType, pFromType))
            {
                return(false);
            }

            if (pStep.FromExactType && pFromType != pStep.FromType)
            {
                return(false);
            }

            return(true);
        }
Example #4
0
        public void New(int?pMemberId)
        {
            var d = new TravPathData(RawPath6, pMemberId);

            Assert.AreEqual(pMemberId, d.MemberId, "Incorrect MemberId.");
            Assert.AreEqual(6, d.Items.Count, "Incorrect Items.Count.");

            for (int i = 0; i < d.Items.Count; ++i)
            {
                Assert.AreEqual(RawPath6Segments[i], d.Items[i].RawText,
                                "Incorrect Items[" + i + "].RawPath.");
            }

            Assert.AreEqual(0, d.Aliases.Count, "Incorrect Aliases.Count.");
            Assert.AreEqual(0, d.Backs.Count, "Incorrect Backs.Count.");
            Assert.AreEqual(1, d.Types.Count, "Incorrect Types.Count.");
            Assert.AreEqual(typeof(FabTravRoot), d.Types[0], "Incorrect Types[0].");
            Assert.AreEqual(0, d.CurrIndex, "Incorrect CurrIndex.");
            Assert.AreEqual(typeof(FabTravRoot), d.CurrType, "Incorrect CurrType.");
        }
Example #5
0
        /*--------------------------------------------------------------------------------------------*/
        private static Type GetStepToType(ITravStep pStep, Type pFromType)
        {
            if (pStep.ToAliasType)
            {
                return(null);
            }

            Type tt = pStep.ToType;

            if (TravPathData.IsSameTypeOrSubclass(typeof(FabTravTypedRoot), pFromType))
            {
                return(FabTravTypedRoot.BaseTypeMap[pFromType]);
            }

            if (TravPathData.IsSameTypeOrSubclass(tt, pFromType))
            {
                return(pFromType);
            }

            return(tt);
        }
Example #6
0
        public void AddScriptAndAddParamsAndBuildQuery()
        {
            const string scriptA   = ".test";
            const string scriptB   = ".this";
            const string param0    = "_P0";
            const string param0Val = "now";
            const string scriptC   = ".path(" + param0 + ")";
            const string script    = "g.V" + scriptA + scriptB + scriptC + ";";

            var d = new TravPathData("");

            d.AddScript(scriptA);
            d.AddScript(scriptB);
            d.AddParam(param0Val);
            d.AddScript(scriptC);

            IWeaverQuery result = d.BuildQuery();

            Assert.NotNull(result, "Result should be filled.");
            Assert.AreEqual(script, result.Script, "Incorrect script.");
            Assert.NotNull(result.Params, "Params should be filled.");
            Assert.AreEqual(1, result.Params.Count, "Incorrect Params count.");
            Assert.AreEqual(param0Val, result.Params[param0].RawText, "Incorrect Param[0] RawText.");
        }
Example #7
0
        public void IsSameTypeOrSubclass(Type pBase, Type pSub, bool pExpectResult)
        {
            bool result = TravPathData.IsSameTypeOrSubclass(pBase, pSub);

            Assert.AreEqual(pExpectResult, result, "Incorrect result.");
        }