コード例 #1
0
        public void GetFlags_DoesNotReturnUnsetFields()
        {
            NoZeroFlags nzf = NoZeroFlags.One | NoZeroFlags.Three;

            Assert.That(nzf.GetFlags(),
                        Has.No.Member(NoZeroFlags.Two)
                        .And.No.Member(NoZeroFlags.Four));

            ZeroFlags zf = ZeroFlags.One | ZeroFlags.Three;

            Assert.That(zf.GetFlags(), Has
                        .No.Member(ZeroFlags.Two)
                        .And.No.Member(ZeroFlags.Four)
                        .And.Member(ZeroFlags.Zero));
        }
コード例 #2
0
        public void GetFlags_ReturnsSetFieldsInOrderOfDefinition()
        {
            NoZeroFlags nzf = NoZeroFlags.One | NoZeroFlags.Three;

            Assert.That(nzf.GetFlags(true), Is.EquivalentTo(new[] { NoZeroFlags.One, NoZeroFlags.Three }));
            Assert.That(nzf.GetFlags(false), Is.EquivalentTo(new[] { NoZeroFlags.One, NoZeroFlags.Three }));

            nzf = NoZeroFlags.Four | NoZeroFlags.One;
            Assert.That(nzf.GetFlags(true), Is.EquivalentTo(new[] { NoZeroFlags.One, NoZeroFlags.Four }));
            Assert.That(nzf.GetFlags(false), Is.EquivalentTo(new[] { NoZeroFlags.One, NoZeroFlags.Four }));

            ZeroFlags zf = ZeroFlags.One | ZeroFlags.Three;

            Assert.That(zf.GetFlags(true), Is.EquivalentTo(new[] { ZeroFlags.One, ZeroFlags.Three }));
            Assert.That(zf.GetFlags(false), Is.EquivalentTo(new[] { ZeroFlags.Zero, ZeroFlags.One, ZeroFlags.Three }));
            Assert.That(zf.GetFlags(), Is.EquivalentTo(new[] { ZeroFlags.Zero, ZeroFlags.One, ZeroFlags.Three }));

            zf = ZeroFlags.Four | ZeroFlags.One;
            Assert.That(zf.GetFlags(true), Is.EquivalentTo(new[] { ZeroFlags.One, ZeroFlags.Four }));
            Assert.That(zf.GetFlags(false), Is.EquivalentTo(new[] { ZeroFlags.Zero, ZeroFlags.One, ZeroFlags.Four }));
            Assert.That(zf.GetFlags(), Is.EquivalentTo(new[] { ZeroFlags.Zero, ZeroFlags.One, ZeroFlags.Four }));
        }