示例#1
0
        public void TestKillStageTicketInspector()
        {
            var locks = new[]
            {
                new StageLock
                {
                    KillCount = 10,
                    Stage = 3
                }
            };
            var sg = new StageGate(locks);
            var sti = new StageTicketInspector(sg);
            sti.Initial(
                new[]
                {
                    new Stage
                    {
                        Id = 1,
                        Pass = false
                    },
                    new Stage
                    {
                        Id = 2,
                        Pass = false
                    }
                });

            sti.Kill(1);
            sti.Pass(2);

            Assert.AreEqual(true, sti.PlayableStages.Any(Stage => Stage == 1));
            Assert.AreEqual(true, sti.PlayableStages.Any(Stage => Stage == 2));
            Assert.AreEqual(false, sti.PlayableStages.Any(Stage => Stage == 3));

            sti.Kill(9);

            Assert.AreEqual(true, sti.PlayableStages.Any(Stage => Stage == 1));
            Assert.AreEqual(true, sti.PlayableStages.Any(Stage => Stage == 2));
            Assert.AreEqual(true, sti.PlayableStages.Any(Stage => Stage == 3));
        }
示例#2
0
 private void _Kill(int kill_count)
 {
     _StageTicketInspector.Kill(kill_count);
     _ToSelectStage();
 }