Example #1
0
        public void GetStrongRulesTest()
        {
            //Arrange
            double         minConfidence = .8;
            HashSet <Rule> rules         = new HashSet <Rule>();

            rules.Add(new Rule("a", "c", 0));
            rules.Add(new Rule("b", "c", 0));

            ItemsDictionary allFrequentItems = new ItemsDictionary();

            allFrequentItems.Add(new Item {
                Name = "a", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "b", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "c", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "ac", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "bc", Support = 2
            });

            //Act
            IList <Rule> actual = _target.GetStrongRules(minConfidence, rules, allFrequentItems);

            //Assert
            Assert.AreEqual(1, actual.Count);
        }
Example #2
0
        public void CheckIsClosed_ClosedItemTest()
        {
            //Arrange
            string child = "c";
            Dictionary <string, double> parents = new Dictionary <string, double>();

            parents.Add("ac", 2);
            parents.Add("bc", 2);
            parents.Add("ce", 2);

            ItemsDictionary allFrequentItems = new ItemsDictionary();

            allFrequentItems.Add(new Item {
                Name = "c", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "ac", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "bc", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "ce", Support = 2
            });

            //Act
            bool actual = _target.CheckIsClosed(child, parents, allFrequentItems);

            //Assert
            Assert.IsTrue(actual);
        }
Example #3
0
        public void GenerateRulesTest()
        {
            //Arrange
            ItemsDictionary allFrequentItems = new ItemsDictionary();

            allFrequentItems.Add(new Item {
                Name = "ac", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "bc", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "be", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "ce", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "bce", Support = 2
            });

            //Act
            HashSet <Rule> actual = _target.GenerateRules(allFrequentItems);

            //Assert
            Assert.AreEqual(7, actual.Count);
        }
Example #4
0
 public void SetItemQuantity(ItemName name, uint quantity)
 {
     if (dictionary.ContainsKey(name))
     {
         dictionary[name] = quantity;
     }
     else
     {
         dictionary.Add(name, quantity);
     }
 }
        public void CheckIsClosed_OpenItemTest()
        {
            //Arrange
            string child = "a";
            Dictionary<string, double> parents = new Dictionary<string, double>();
            parents.Add("ac", 2);
            ItemsDictionary allFrequentItems = new ItemsDictionary();
            allFrequentItems.Add(new Item { Name = "a", Support = 2 });
            allFrequentItems.Add(new Item { Name = "ac", Support = 2 });

            //Act
            bool actual = _target.CheckIsClosed(child, parents, allFrequentItems);

            //Assert
            Assert.IsFalse(actual);
        }
Example #6
0
        public void GetItemParentsTest()
        {
            //Arrange
            string child = "a";
            int    index = 1;

            ItemsDictionary allFrequentItems = new ItemsDictionary();

            allFrequentItems.Add(new Item {
                Name = "e", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "ac", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "bc", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "be", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "ce", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "bce", Support = 2
            });

            //Act
            Dictionary <string, double> actual = _target.GetItemParents(child, index, allFrequentItems);

            //Assert
            Assert.AreEqual(1, actual.Count);
            Assert.AreEqual(2, actual["ac"]);
        }
Example #7
0
        public void GetClosedItemSetsTest()
        {
            //Arrange
            ItemsDictionary allFrequentItems = new ItemsDictionary();

            allFrequentItems.Add(new Item {
                Name = "a", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "b", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "c", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "e", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "ac", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "bc", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "be", Support = 3
            });
            allFrequentItems.Add(new Item {
                Name = "ce", Support = 2
            });
            allFrequentItems.Add(new Item {
                Name = "bce", Support = 2
            });

            //Act
            Dictionary <string, Dictionary <string, double> > actual = _target.GetClosedItemSets(allFrequentItems);

            //Assert
            Assert.AreEqual(4, actual.Count, "ClosedItemSets calculation is wrong");
            Assert.IsTrue(actual.ContainsKey("c"));
            Assert.IsTrue(actual.ContainsKey("be"));
            Assert.IsTrue(actual.ContainsKey("ac"));
            Assert.IsTrue(actual.ContainsKey("bce"));
        }
Example #8
0
        protected ItemsDictionary Load()
        {
            // ... initialize data in the test database ...
            Console.WriteLine("INFO: JsonSeededFacetContextFixture");
            var reader = new JsonReaderService(new IgnoreJsonAttributesResolver());
            var items  = new ItemsDictionary();

            foreach (var type in Types)
            {
                var entities = reader.Deserialize(type, Folder).ToArray();
                items.Add(type, entities);
            }
            return(items);
        }
Example #9
0
    public void AddItems(ItemName name, uint quantity)
    {
        if (quantity == 0)
        {
            return;
        }

        if (itemsDictionary.ContainsKey(name))
        {
            itemsDictionary[name] += quantity;
        }
        else
        {
            itemsDictionary.Add(name, quantity);
        }
    }
Example #10
0
    void Start()
    {
        IsConsumingFood = true;

        gameController = GameController.Instance;
        sails          = GetComponentInChildren <Sails> ();
        rudder         = GetComponentInChildren <Rudder> ();

        ItemsDictionary dict = new ItemsDictionary();

        for (int i = 0; i < StartingItems.Length; i++)
        {
            dict.Add(StartingItems [i].name, StartingItems [i].quantity);
        }

        SetupInventory(1000, dict);
    }
        public void GetStrongRulesTest()
        {
            //Arrange
            double minConfidence = .8;
            HashSet<Rule> rules = new HashSet<Rule>();
            rules.Add(new Rule("a", "c", 0));
            rules.Add(new Rule("b", "c", 0));

            ItemsDictionary allFrequentItems = new ItemsDictionary();
            allFrequentItems.Add(new Item { Name = "a", Support = 2 });
            allFrequentItems.Add(new Item { Name = "b", Support = 3 });
            allFrequentItems.Add(new Item { Name = "c", Support = 3 });
            allFrequentItems.Add(new Item { Name = "ac", Support = 2 });
            allFrequentItems.Add(new Item { Name = "bc", Support = 2 });

            //Act
            IList<Rule> actual = _target.GetStrongRules(minConfidence, rules, allFrequentItems);

            //Assert
            Assert.AreEqual(1, actual.Count);
        }
        public void GetItemParentsTest()
        {
            //Arrange
            string child = "a";
            int index = 1;

            ItemsDictionary allFrequentItems = new ItemsDictionary();
            allFrequentItems.Add(new Item { Name = "e", Support = 3 });
            allFrequentItems.Add(new Item { Name = "ac", Support = 2 });
            allFrequentItems.Add(new Item { Name = "bc", Support = 2 });
            allFrequentItems.Add(new Item { Name = "be", Support = 3 });
            allFrequentItems.Add(new Item { Name = "ce", Support = 2 });
            allFrequentItems.Add(new Item { Name = "bce", Support = 2 });

            //Act
            Dictionary<string, double> actual = _target.GetItemParents(child, index, allFrequentItems);

            //Assert
            Assert.AreEqual(1, actual.Count);
            Assert.AreEqual(2, actual["ac"]);
        }
        public void GetClosedItemSetsTest()
        {
            //Arrange
            ItemsDictionary allFrequentItems = new ItemsDictionary();
            allFrequentItems.Add(new Item { Name = "a", Support = 2 });
            allFrequentItems.Add(new Item { Name = "b", Support = 3 });
            allFrequentItems.Add(new Item { Name = "c", Support = 3 });
            allFrequentItems.Add(new Item { Name = "e", Support = 3 });
            allFrequentItems.Add(new Item { Name = "ac", Support = 2 });
            allFrequentItems.Add(new Item { Name = "bc", Support = 2 });
            allFrequentItems.Add(new Item { Name = "be", Support = 3 });
            allFrequentItems.Add(new Item { Name = "ce", Support = 2 });
            allFrequentItems.Add(new Item { Name = "bce", Support = 2 });

            //Act
            Dictionary<string, Dictionary<string, double>> actual = _target.GetClosedItemSets(allFrequentItems);

            //Assert
            Assert.AreEqual(4, actual.Count, "ClosedItemSets calculation is wrong");
            Assert.IsTrue(actual.ContainsKey("c"));
            Assert.IsTrue(actual.ContainsKey("be"));
            Assert.IsTrue(actual.ContainsKey("ac"));
            Assert.IsTrue(actual.ContainsKey("bce"));
        }
        public void GenerateRulesTest()
        {
            //Arrange
            ItemsDictionary allFrequentItems = new ItemsDictionary();
            allFrequentItems.Add(new Item { Name = "ac", Support = 2 });
            allFrequentItems.Add(new Item { Name = "bc", Support = 2 });
            allFrequentItems.Add(new Item { Name = "be", Support = 3 });
            allFrequentItems.Add(new Item { Name = "ce", Support = 2 });
            allFrequentItems.Add(new Item { Name = "bce", Support = 2 });

            //Act
            HashSet<Rule> actual = _target.GenerateRules(allFrequentItems);

            //Assert
            Assert.AreEqual(7, actual.Count);
        }