public void Test_Intersect() { Assert.AreEqual(0x0, CardSet.Intersect(CardSet.Empty, CardSet.Empty).bits); Assert.AreEqual(0x0, CardSet.Intersect(CardSet.Empty, new CardSet { bits = 0x13 }).bits); Assert.AreEqual(0x0, CardSet.Intersect(new CardSet { bits = 0x13 }, CardSet.Empty).bits); Assert.AreEqual(0x13, CardSet.Intersect(new CardSet { bits = 0x13 }, new CardSet { bits = 0x13 }).bits); Assert.AreEqual(0x11, CardSet.Intersect(new CardSet { bits = 0x11 }, new CardSet { bits = 0xFF }).bits); Assert.AreEqual(0x11, CardSet.Intersect(new CardSet { bits = 0xFF }, new CardSet { bits = 0x11 }).bits); Assert.AreEqual(0x11, CardSet.Intersect(new CardSet { bits = 0xF11 }, new CardSet { bits = 0xFF }).bits); Assert.AreEqual(0x11, CardSet.Intersect(new CardSet { bits = 0xFF }, new CardSet { bits = 0xF11 }).bits); Assert.AreEqual(0x10, CardSet.Intersect(new CardSet { bits = 0x11 }, new CardSet { bits = 0xF10 }).bits); Assert.AreEqual(0x10, CardSet.Intersect(new CardSet { bits = 0xF10 }, new CardSet { bits = 0x11 }).bits); }