Ejemplo n.º 1
0
        public void Equals_ReturnsFalse_BecauseTheUnitsAreNotEqual(IUnit first, IUnit second)
        {
            // :::: ARRANGE ::::
            var comparer = new UnitEqualityComparer();

            // :::: ACT ::::
            var actualEquality = comparer.Equals(first, second);

            // :::: ASSERT ::::
            actualEquality.Should().BeFalse();
        }
Ejemplo n.º 2
0
        public void GetHashCode_ReturnsTheSameHashCodeForBothUnits_BecauseTheUnitsAreEqual(IUnit first, IUnit second)
        {
            // :::: ARRANGE ::::
            var comparer = new UnitEqualityComparer();

            // :::: ACT ::::
            var firstHashCode = comparer.GetHashCode(first);
            var secondHashCode = comparer.GetHashCode(second);

            // :::: ASSERT ::::
            firstHashCode.Should().Be(secondHashCode);
        }
Ejemplo n.º 3
0
    public void GetLinkedLists()
    {
        UnitEqualityComparer unitComparer = new UnitEqualityComparer();

        var linkedLists = Blocks
                          .Select(itm => itm.CalculateLinkedUnit())
                          .ToList(); // надо

        try
        {
            linkedLists.ForEach(list => LinkedDownUnit.AddRange(list.Item1.Where(itm => !Equals(itm.Id, Id))));
            linkedLists.ForEach(list => LinkedUpUnit.AddRange(list.Item2.Where(itm => !Equals(itm.Id, Id))));
        }
        catch
        {
            Debug.LogError("Сука " + gameObject.name);
        }



        LinkedDownUnit = LinkedDownUnit.Distinct(unitComparer).ToList();
        LinkedUpUnit   = LinkedUpUnit.Distinct(unitComparer).ToList();
    }