예제 #1
0
        public void TestUserWardrobe()
        {
            OneOf <Wardrobe, IFailure> result = new UninitializedVariable();
            Action act = () => result = DressingRoom.ForUser("TestUserOne");

            act.Should().NotThrow();
            var wardrobe = result.AsT0;

            wardrobe.Should().NotBeNull();

            act = () => result = DressingRoom.ForUser("TestUserTwo");

            act.Should().NotThrow();
            var failure = result.AsT1;

            failure.Should().NotBeNull();
        }
예제 #2
0
        public void TestUserGarments()
        {
            OneOf <IEnumerable <Garment>, IFailure> result = new UninitializedVariable();

            Action act = () => result = Users.GarmentsFor("TestUserOne");

            act.Should().NotThrow();

            var garments = result.AsT0;

            garments.Should().NotBeNull();
            garments.Should().HaveCount(2);
            garments.Select(g => g.ID).Should().ContainInOrder("Garment01", "Garment02");
            garments.Select(g => g.Name).Should().ContainInOrder("Blue and white polo", "Plain green t-shirt");

            act = () => result = Users.GarmentsFor("TestUserTwo");
            act.Should().NotThrow();
            var failure = result.AsT1;

            failure.Should().NotBeNull();
        }