コード例 #1
0
ファイル: Tests.cs プロジェクト: vlaluch/testlet-randomizer
        public void Randomize_ShouldGenerateDifferentSequencesEveryTime()
        {
            target = new Testlet("testlet", items);

            var firstResult  = target.Randomize();
            var secondResult = target.Randomize();

            Assert.False(firstResult.SequenceEqual(secondResult));
        }
コード例 #2
0
ファイル: Tests.cs プロジェクト: vlaluch/testlet-randomizer
        public void Randomize_ShouldGenerateSequenceWithCorrectOrder()
        {
            target = new Testlet("testlet", items);

            var result = target.Randomize();

            Assert.True(items.All(item => result.Contains(item)));

            var resultItemsWithPredefinedPosition = result.Take(TestletConstants.NumberOfPretestItemsWithPredefinedPosition);

            Assert.True(resultItemsWithPredefinedPosition.All(item => item.ItemType == ItemTypeEnum.Pretest));

            var remainingItems       = items.Skip(TestletConstants.NumberOfPretestItemsWithPredefinedPosition);
            var remainingResultItems = result.Skip(TestletConstants.NumberOfPretestItemsWithPredefinedPosition);

            Assert.False(remainingItems.SequenceEqual(remainingResultItems));
        }
コード例 #3
0
ファイル: Tests.cs プロジェクト: vlaluch/testlet-randomizer
        public void Randomize_WorksWithTooSmallCollection()
        {
            var sourceItems = new List <Item>
            {
                new Item {
                    ItemId = "item 1", ItemType = ItemTypeEnum.Operational
                },
                new Item {
                    ItemId = "item 2", ItemType = ItemTypeEnum.Pretest
                }
            };

            target = new Testlet("testlet", sourceItems);
            target.Randomize();

            // Items should be shuffled, but for just 2 elements result of randomize will often produce the same sequence
            // That's why only check that it works without exceptions
            Assert.Pass();
        }
コード例 #4
0
ファイル: Tests.cs プロジェクト: vlaluch/testlet-randomizer
 public void Randomize_WorksWithEmptyItemsList()
 {
     target = new Testlet("testlet", new List <Item>());
     target.Randomize();
     Assert.Pass();
 }