Ejemplo n.º 1
0
            public void Can_Check_Stat_Prereqs_When_False()
            {
                var       character = new Character(StatBlock.With().Default().Str(14).Build());
                StatBlock prereq    = StatBlock.With().Str(15).Build();
                Feat      sut       = FeatBuilder.Get().Build();

                sut.AddStatPrereq(prereq);

                Check.That(sut.CanBeTakenBy(character)).IsFalse();
            }
Ejemplo n.º 2
0
            public void Can_Check_Complex_Prereqs_When_Satisfies()
            {
                Feat feat      = FeatBuilder.Get().Build();
                var  character = new Character(StatBlock.With().Default().Str(14).Build(),
                                               new[] { feat });
                StatBlock stat = StatBlock.With().Str(13).Build();
                Feat      sut  = FeatBuilder.Get().Build();

                sut.AddFeatPrereq(feat);
                sut.AddStatPrereq(stat);

                Check.That(sut.CanBeTakenBy(character)).IsTrue();
            }
Ejemplo n.º 3
0
            public void Can_Add_Stat_Prereqs()
            {
                StatBlock stat = StatBlock.With().Str(15).Bab(6).Build();
                Feat      sut  = FeatBuilder.Get().Build();

                sut.AddStatPrereq(stat);

                Check.That(sut.Prereqs).HasSize(1);
                Check.That(sut.PrereqFeats).IsEmpty();
                Check.That(sut.Prereqs.First()).IsInstanceOf <StatPrereq>();
                Check.That(((StatPrereq)sut.Prereqs.First()).Constraints)
                .HasSize(2).And.ContainsPair(Stat.Str, 15)
                .And.ContainsPair(Stat.Bab, 6);
            }
Ejemplo n.º 4
0
            public void Can_Check_Complex_Prereqs_When_Does_Not_Satisfy(bool goodFeat, bool goodStat)
            {
                Feat feat      = FeatBuilder.Get().Build();
                var  character = new Character(
                    StatBlock.With().Default()
                    .Str(goodStat ? 14 : 12).Build(),
                    goodFeat ? new[] { feat } : new Feat[] {}
                    );
                StatBlock stat = StatBlock.With().Str(13).Build();
                Feat      sut  = FeatBuilder.Get().Build();

                sut.AddFeatPrereq(feat);
                sut.AddStatPrereq(stat);

                Check.That(sut.CanBeTakenBy(character)).IsFalse();
            }