Esempio n. 1
0
        public virtual void testGetAmountPoolSumDouble()
        {
            JDFNode     d = new JDFDoc("JDF").getJDFRoot();
            JDFResource m = d.addResource("Media", EnumUsage.Input);

            m.addPartition(EnumPartIDKey.SignatureName, "1");
            JDFResourceLink rl  = d.getLink(m, EnumUsage.Input);
            JDFAttributeMap map = new JDFAttributeMap("SignatureName", "1");

            map.put("Condition", "Good");

            rl.setActualAmount(12, map);
            VJDFAttributeMap vMap = new VJDFAttributeMap();

            vMap.Add(new JDFAttributeMap("SignatureName", "1"));
            JDFAttributeMap sig1 = new JDFAttributeMap("SignatureName", "2");

            vMap.Add(sig1);

            rl.getAmountPool().getPartAmount(map).setPartMapVector(vMap);
            map.put("Condition", "Waste");
            rl.setActualAmount(14, map);
            Assert.AreEqual(26.0, rl.getAmountPoolSumDouble(AttributeName.ACTUALAMOUNT, null), 0.1);
            Assert.AreEqual(26.0, rl.getAmountPoolSumDouble(AttributeName.ACTUALAMOUNT, vMap), 0.1);
            sig1.put("SheetName", "S1");
            Assert.AreEqual(26.0, rl.getAmountPoolSumDouble(AttributeName.ACTUALAMOUNT, vMap), 0.1, " also when more granular");
            sig1 = new JDFAttributeMap(sig1);
            sig1.put("SheetName", "S2");
            vMap.Add(sig1);
            Assert.AreEqual(26.0, rl.getAmountPoolSumDouble(AttributeName.ACTUALAMOUNT, vMap), 0.1, " also when more granular");
        }