Example #1
0
 public FillDescriptor(
     Expression <Func <T, object> > selector,
     IGenerateData generator,
     Action <T, IGenerateData> callback)
 {
     PropertySelector = selector;
     Generator        = generator;
     Callback         = callback;
 }
Example #2
0
        static void Main(string[] args)
        {
            // Part I and II (Part III (QuickSort) looks similar)
            // Fill this array with proper object instances
            IGenerateData[] generators = new IGenerateData[5];

            // Fill this array with proper object instances
            ASorting[] alorithms = new ASorting[4];

            // 3 loops here:
            // 1 - iterate through table sizes,
            // 2 - generators,
            // 3 - algorithms, execute method which measures time in ASorting abstract class)
        }
Example #3
0
        /// <summary>
        /// Configure a property to be generated.
        /// </summary>
        /// <param name="selector">Selects the property against which the generator will be used.</param>
        /// <param name="generator">The instance of the generator to be used on the selected property.</param>
        /// <param name="callback">Overrides the property fill with specified action.</param>
        /// <returns></returns>
        public ObjectFill <T> For(
            Expression <Func <T, object> > selector,
            IGenerateData generator,
            Action <T, IGenerateData> callback)
        {
            if (ContainsSelector(selector.ToString()))
            {
                throw new ArgumentException($"Selector {selector} already registered.");
            }

            _selectors.Add(selector, new FillDescriptor(
                               selector,
                               generator,
                               callback));

            return(this);
        }
Example #4
0
 public PersonService(IGenerateData generateData)
 {
     _generateData = generateData;
     _context      = new MoversDbContext();
 }
Example #5
0
 /// <summary>
 /// Configure a property to be generated.
 /// </summary>
 /// <param name="selector">Selects the property against which the generator will be used.</param>
 /// <param name="generator">The instance of the generator to be used on the selected property.</param>
 /// <returns></returns>
 public ObjectFill <T> For(Expression <Func <T, object> > selector, IGenerateData generator)
 {
     return(For(selector, generator, null));
 }
Example #6
0
 private static void RunCallback(
     T instance, IGenerateData generator,
     Action <T, IGenerateData> callback)
 {
     callback(instance, generator);
 }
Example #7
0
        private static void SetValue(object instance, IGenerateData generator, PropertyInfo property)
        {
            var value = generator.Generate();

            SetValue(instance, value, property);
        }