public void SetUp()
        {
            listBuilderImpl = MockRepository.GenerateStub<IListBuilderImpl<MyClass>>();
            objectBuilder = MockRepository.GenerateStub<IObjectBuilder<MyClass>>();
            uniqueRandomGenerator = MockRepository.GenerateMock<IUniqueRandomGenerator>();

            declaration = new RandomDeclaration<MyClass>(listBuilderImpl, objectBuilder, uniqueRandomGenerator, amount, start, end);
        }
        public RandomDeclarationTests()
        {
            listBuilderImpl       = Substitute.For <IListBuilderImpl <MyClass> >();
            objectBuilder         = Substitute.For <IObjectBuilder <MyClass> >();
            uniqueRandomGenerator = Substitute.For <IUniqueRandomGenerator>();

            declaration = new RandomDeclaration <MyClass>(listBuilderImpl, objectBuilder, uniqueRandomGenerator, amount, start, end);
        }
        public void SetUp()
        {
            listBuilderImpl       = MockRepository.GenerateStub <IListBuilderImpl <MyClass> >();
            objectBuilder         = MockRepository.GenerateStub <IObjectBuilder <MyClass> >();
            uniqueRandomGenerator = MockRepository.GenerateMock <IUniqueRandomGenerator>();

            declaration = new RandomDeclaration <MyClass>(listBuilderImpl, objectBuilder, uniqueRandomGenerator, amount, start, end);
        }
Esempio n. 4
0
        public static IOperable <T> Random <T>(this IListBuilder <T> listBuilder, int amount, int start, int end)
        {
            var listBuilderImpl = GetListBuilderImpl <T>(listBuilder);

            // TODO: Put these in a specification
            Guard.Against(amount < 1, "Random amount must be 1 or greater");
            Guard.Against(amount > listBuilderImpl.Capacity, "Random amount must be less than the size of the list that is being generated");

            var declaration = new RandomDeclaration <T>(listBuilderImpl, listBuilderImpl.CreateObjectBuilder(), listBuilderImpl.ScopeUniqueRandomGenerator, amount, start, end);

            return((IOperable <T>)listBuilderImpl.AddDeclaration(declaration));
        }
        public void RandomShouldReturnRandomDeclarationOfRangeOfWholeList()
        {
            const int amount = 5;
            const int end    = listSize;

            var randomDeclaration = new RandomDeclaration <MyClass>(listBuilderImpl, null, null, amount, 0, end);

            listBuilderImpl.BuilderSettings.Returns(new BuilderSettings());
            listBuilderImpl.Capacity.Returns(listSize);
            listBuilderImpl.AddDeclaration(Arg.Is <RandomDeclaration <MyClass> >(y => y.Start == 0 && y.End == end)).Returns(randomDeclaration);

            IDeclaration <MyClass> declaration;

            declaration = (IDeclaration <MyClass>)ListBuilderExtensions.Random(listBuilderImpl, amount);

            Assert.That(declaration.Start, Is.EqualTo(0));
            Assert.That(declaration.End, Is.EqualTo(end));
        }
        public void RandomCanReturnDeclarationForASectionOfTheList()
        {
            const int amount = 5;
            const int start  = 10;
            const int end    = 20;

            var randomDeclaration = new RandomDeclaration <MyClass>(listBuilderImpl, null, null, amount, start, end);


            listBuilderImpl.Capacity.Returns(listSize);
            listBuilderImpl.AddDeclaration(Arg.Is <RandomDeclaration <MyClass> >(y => y.Start == start && y.End == end)).Returns(randomDeclaration);



            var declaration = (IDeclaration <MyClass>)ListBuilderExtensions.Random(listBuilderImpl, amount, start, end);

            Assert.That(declaration.Start, Is.EqualTo(start));
            Assert.That(declaration.End, Is.EqualTo(end));
        }
        public void RandomCanReturnDeclarationForASectionOfTheList()
        {
            const int amount = 5;
            const int start  = 10;
            const int end    = 20;

            var randomDeclaration = new RandomDeclaration <MyClass>(listBuilderImpl, null, null, amount, start, end);

            using (mocks.Record())
            {
                listBuilderImpl.Expect(x => x.Capacity).Return(listSize).Repeat.Any();
                listBuilderImpl.Expect(x => x.AddDeclaration(Arg <RandomDeclaration <MyClass> > .Matches(y => y.Start == start && y.End == end))).Return(randomDeclaration);
            }


            var declaration = (IDeclaration <MyClass>)ListBuilderExtensions.Random(listBuilderImpl, amount, start, end);

            Assert.That(declaration.Start, Is.EqualTo(start));
            Assert.That(declaration.End, Is.EqualTo(end));
        }
Esempio n. 8
0
        public void RandomShouldReturnRandomDeclarationOfRangeOfWholeList()
        {
            const int amount = 5;
            const int end    = listSize;

            var randomDeclaration = new RandomDeclaration <MyClass>(listBuilderImpl, null, null, amount, 0, end);

            using (mocks.Record())
            {
                listBuilderImpl.Expect(x => x.Capacity).Return(listSize).Repeat.Any();
                listBuilderImpl.Expect(x => x.AddDeclaration(Arg <RandomDeclaration <MyClass> > .Matches(y => y.Start == 0 && y.End == end))).Return(randomDeclaration);
            }

            IDeclaration <MyClass> declaration;

            using (mocks.Playback())
            {
                declaration = (IDeclaration <MyClass>)ListBuilderExtensions.Random(listBuilderImpl, amount);
            }

            Assert.That(declaration.Start, Is.EqualTo(0));
            Assert.That(declaration.End, Is.EqualTo(end));
        }
        public void RandomCanReturnDeclarationForASectionOfTheList()
        {
            const int amount = 5;
            const int start = 10;
            const int end = 20;

            var randomDeclaration = new RandomDeclaration<MyClass>(listBuilderImpl, null, null, amount, start, end);

            using (mocks.Record())
            {
                listBuilderImpl.Expect(x => x.Capacity).Return(listSize).Repeat.Any();
                listBuilderImpl.Expect(x => x.AddDeclaration(Arg<RandomDeclaration<MyClass>>.Matches(y => y.Start == start && y.End == end))).Return(randomDeclaration);
            }

            
            var declaration = (IDeclaration<MyClass>)ListBuilderExtensions.Random(listBuilderImpl, amount, start, end);

            Assert.That(declaration.Start, Is.EqualTo(start));
            Assert.That(declaration.End, Is.EqualTo(end));
        }
        public void RandomShouldReturnRandomDeclarationOfRangeOfWholeList()
        {
            const int amount = 5;
            const int end = listSize;

            var randomDeclaration = new RandomDeclaration<MyClass>(listBuilderImpl, null, null, amount, 0, end);

            using (mocks.Record())
            {
                listBuilderImpl.Expect(x => x.Capacity).Return(listSize).Repeat.Any();
                listBuilderImpl.Expect(x => x.AddDeclaration(Arg<RandomDeclaration<MyClass>>.Matches(y => y.Start == 0 && y.End == end))).Return(randomDeclaration);
            }

            IDeclaration<MyClass> declaration;
            using (mocks.Playback())
            {
                declaration = (IDeclaration<MyClass>)ListBuilderExtensions.Random(listBuilderImpl, amount);
            }

            Assert.That(declaration.Start, Is.EqualTo(0));
            Assert.That(declaration.End, Is.EqualTo(end));
        }