Example #1
0
        public void MtchTest_C245()
        {
            //arrange Group, Components, CompSet, Rule
            var Im   = new IMIT();
            var rule = Im.IM_Rule();
            var syns = rule.synonyms[SType.Profile].ToList();

            Assert.AreEqual(syns[0], "угoлoк");
            Assert.AreEqual(syns[1], "l");
            Comp comp = rule.CompSet.Components[1];

            Assert.AreEqual(comp.Str(SType.Profile), "Уголок 20x5");
            Assert.AreEqual(comp.compDP.dpar[SType.Profile], "угoлoк20x5");
            var gr = Im.IM_Group("C245");

            Assert.AreEqual(gr.mat, "c245");
            Assert.AreEqual(gr.prf, "l20x5");
            //act
            Mtch m = new Mtch(gr, rule);

            //assert
            Assert.AreEqual(m.ok, Mtch.OK.Match);
            Assert.AreEqual(m.group.guids.Count, 2);
            Assert.AreEqual(m.component.Str(SType.Profile), "Уголок 20x5");
            Assert.AreEqual(m.group.totalPrice, 2020);
        }
Example #2
0
        public void UT_FP_Component_constr2()
        {
            var Im = new IMIT();
            var rule = Im.IM_Rule("M:*;Проф:Уголок равнопол.=Уголок *x*c*");
            var sec = new Sec("M:");

            var fpMat = new FP("Уголок 75х6 6м Ст3пс/сп5", rule, sec);

            //////////////////var csFPmat = new FP(FPtype.CompSet, "M:{2}");
            // 27/3 //////////var csFPprf = new FP(FPtype.CompSet, "Prf:Уголок {1}");
            //////////////////var csFPs = new List<FP> { csFPmat, csFPprf };
            
            // 23.3.2017 пока решил не позволять использовать несколько параметров в строке
            //xr1 = new FP(FPtype.CompSet, "Цена: {4} НДС {12}{14}%");
            //Assert.AreEqual(xr1.pars.Count, 3);
            //Assert.AreEqual(xr1.txs[3], "%");
            //Assert.AreEqual(xr1.Col(2), 14);
            //Assert.AreEqual(xr1.txs.Count, 4);
            //Assert.AreEqual(xr1.typeFP.ToString(), "CompSet");
            //Assert.AreEqual(xr1.section.type.ToString(), "Price");
            //Assert.AreEqual(xr1.Col(), 4);
            //var sec = new Sec("Prf: L12x5");
            //19/3            FP fp = new FP(sec);
            Assert.Fail();
        }
Example #3
0
        public void MtchTest_B20()
        {
            var Im   = new IMIT();
            var rule = Im.IM_Rule("Mat: B*");
            var gr   = Im.IM_Group("B20");  //Prf "1900x1600" set in Im

            Assert.AreEqual(gr.mat, "b20");
            Assert.AreEqual(gr.prf, "1900x1600");

            Mtch m = new Mtch(gr, rule);

            Assert.AreEqual(m.ok, Mtch.OK.NoMatch);
        }