Пример #1
0
        public static void Generate()
        {
            var productFaker = new ProductFaker();
            var serviceFaker = new ServiceFaker();

            var products = productFaker.Generate(100);
            var services = serviceFaker.Generate(40);

            var customerFaker = new CustomerFaker();
            var customers     = customerFaker.Generate(50);

            //var items = products.OfType<Item>().Union(services).ToList();

            //var orderFaker = new OrderFaker(customers, items);
            //var orders = orderFaker.Generate(10);


            using (var context = new MyContext())
            {
                context.Database.EnsureDeleted();
                context.Database.EnsureCreated();

                context.Products.AddRange(products);
                context.Services.AddRange(services);
                context.SaveChanges();


                context.Customers.AddRange(customers);
                context.SaveChanges();

                //context.Orders.AddRange(orders);
                //context.SaveChanges();
            }
        }
Пример #2
0
        public IHttpActionResult Post(Order order)
        {
            AddressFaker  addressFaker  = new AddressFaker();
            CustomerFaker customerFaker = new CustomerFaker(addressFaker);

            order = new Order
            {
                Customer = new Customer {
                    Id = 4
                },
                Details = new List <OrderDetail>
                {
                    new OrderDetail {
                        Item = new Product {
                            Id = 1
                        }, Quantity = 3, UnitPrice = 2
                    },
                    new OrderDetail {
                        Item = new Product {
                            Id = 2
                        }, Quantity = 5, UnitPrice = 10
                    },
                },
                ShipAddress = addressFaker.Generate()
            };

            orderService.Add(order);
            return(CreatedAtRoute("DefaultApi", new { Id = order.Id }, order));
        }
Пример #3
0
          private static void GeneratingDataTest()
        {
            System.Console.WriteLine("---------------");
            System.Console.WriteLine("Generatind Data Test");

            string connectionString = "Server=127.0.0.1,1433;Database=ZFDb;User Id=sa;Password=P@ssw0rd";

            var optionsBuilder = new DbContextOptionsBuilder<MyContext>();

             var loggerFactory = new LoggerFactory();
                 loggerFactory.AddProvider(new ConsoleLoggerProvider((category, level) => level == LogLevel.Information, true));

            optionsBuilder
                .UseLoggerFactory(loggerFactory)
                .UseSqlServer(connectionString);

             
            var customerFaker = new CustomerFaker();

            var customers = customerFaker.Generate(1000);

            using(var context = new MyContext(optionsBuilder.Options))
            { 
                context.Customers.AddRange(customers);
                context.SaveChanges();
            }
        }
Пример #4
0
        static async Task Main(string[] args)
        {
            Console.BackgroundColor = ConsoleColor.Green;
            Console.ForegroundColor = ConsoleColor.White;

            Console.WriteLine("Hello Signal-R sender!");

            const string url = "http://localhost:5000/hubs/customers";

            // dotnet add package Microsoft.AspNetCore.SignalR.Client

            HubConnection connection = new HubConnectionBuilder()
                                       .WithUrl(url)
                                       .Build();

            Console.WriteLine("Connecting...");
            await connection.StartAsync();

            Console.WriteLine("Connected.");

            CustomerFaker customerFaker = new CustomerFaker(new AddressFaker());
            var           customers     = customerFaker.GenerateForever();

            foreach (var customer in customers)
            {
                await connection.SendAsync("CustomerAdded", customer);

                Console.WriteLine($"Sent {customer.FirstName} {customer.LastName}");

                await Task.Delay(TimeSpan.FromSeconds(1));
            }

            Console.ResetColor();
        }
Пример #5
0
        public static IEnumerable <Customer> GetCustomers(int count)
        {
            var customerFaker = new CustomerFaker();
            var customers     = customerFaker.Generate(count);

            return(customers);
        }
Пример #6
0
        static async Task Main(string[] args)
        {
            const string url = "http://localhost:5000/signalr/customers";


            Console.WriteLine("Hello Signal-R Sender!");

            HubConnection connection = new HubConnectionBuilder()
                                       .WithUrl(url)
                                       .WithAutomaticReconnect()
                                       .Build();

            Console.WriteLine("Connectig...");
            await connection.StartAsync();

            Console.WriteLine("Connected!");

            CustomerFaker customerFaker = new CustomerFaker();
            Customer      customer      = customerFaker.Generate();

            Console.WriteLine($"Sending {customer.FirstName} {customer.LastName}");
            await connection.SendAsync("SendCustomerAdded", customer);

            Console.WriteLine("Customer send");
            Console.ReadKey();
        }
Пример #7
0
        private static async Task AddCustomerTest(ICustomerRepositoryAsync customerRepository)
        {
            //  ICustomerRepositoryAsync customerRepository = new ApiCustomerRepository(new HttpClient());

            CustomerFaker customerFaker = new CustomerFaker(new AddressFaker());
            Customer      customer      = customerFaker.Generate();
            await customerRepository.AddAsync(customer);
        }
Пример #8
0
        private static async Task UpdateCustomerTest(ICustomerServiceAsync customerService)
        {
            CustomerFaker customerFaker = new CustomerFaker();

            Customer customer = customerFaker.Generate();

            await customerService.UpdateAsync(customer);
        }
        // dotnet add package Microsoft.Extensions.Option
        public FakeCustomerRepository(
            CustomerFaker customerFaker,
            IOptionsSnapshot <FakeCustomerRepositoryOptions> options)
        {
            this.options = options.Value;

            customers = customerFaker.Generate(this.options.Quantity);
        }
Пример #10
0
        public async Task <IActionResult> Generate([FromForm] int count)
        {
            CustomerFaker customerFaker = new CustomerFaker();
            IEnumerable <CustomerWriteModel> generatedCustomers = customerFaker.Generate(count);

            await Task.WhenAll(generatedCustomers.Select(this.customerRepository.Create));

            return(this.RedirectToAction("Index"));
        }
Пример #11
0
        private static async Task AddCustomers()
        {
            var             customerFaker = new CustomerFaker();
            List <Customer> customers     = customerFaker.Generate(10);

            foreach (var customer in customers)
            {
                await AddCustomer(customer);
            }
        }
Пример #12
0
        public FakeCustomerRepository(CustomerFaker customerFaker)
        {
            this.customerFaker = customerFaker;

            customers = customerFaker.Generate(100);

            //customers = Enumerable.Empty<Customer>().ToList();

            //customers.Add(new Customer { Id = 1, FirstName = "Marcin", LastName = "Sulecki", Gender = Gender.Man });
            //customers.Add(new Customer { Id = 2, FirstName = "Bartek", LastName = "Sulecki", Gender = Gender.Man });
            //customers.Add(new Customer { Id = 3, FirstName = "Kasia", LastName = "Sulecka", Gender = Gender.Woman });
        }
        public void Get_WhenCalled_ReturnCustomers()
        {
            // Arrange
            Faker <Customer> faker           = new CustomerFaker();
            ICustomerService customerService = new FakeCustomerService(faker);

            // Act
            var customers = customerService.Get();

            // Assert
            Assert.NotNull(customers);
        }
Пример #14
0
        private static void AddRangeCustomersTest()
        {
            CustomerFaker customerFaker = new CustomerFaker(new AddressFaker());

            var customers = customerFaker.Generate(100);

            ShopContextFactory shopContextFactory = new ShopContextFactory();
            ShopContext        context            = shopContextFactory.Create();

            ICustomerRepository customerRepository = new DbCustomerRepository(context);

            customerRepository.AddRange(customers);
        }
Пример #15
0
        // snippet: ctor
        public FakeCustomerRepository()
        {
            CustomerFaker customerFaker = new CustomerFaker(new AddressFaker());

            customers = customerFaker.Generate(1000);

            //customers = new List<Customer>()
            //{
            //    new Customer (1, "John", "Smith"),
            //    new Customer (2, "Ann", "Smith"),
            //    new Customer (3, "Peter", "Novak"),
            //};
        }
Пример #16
0
        // dotnet add package Microsoft.AspNetCore.SignalR.Client

        static async Task Main(string[] args)
        {
            Console.BackgroundColor = ConsoleColor.DarkBlue;
            Console.ForegroundColor = ConsoleColor.White;

            Console.WriteLine("Hello Signal-R Sender!");


            string url = "http://localhost:5000/signalr/customers";

            HubConnection connection = new HubConnectionBuilder()
                                       .WithUrl(url)
                                       .Build();

            // HubConnection<ICustomerServer>
            // connection.OnYouHaveGotMessage(customer => => Console.WriteLine($"Received {customer.FirstName} {customer.LastName}"));

            connection.On <Customer>(nameof(ICustomerClient.YouHaveGotMessage),
                                     customer => Console.WriteLine($"Received {customer.FirstName} {customer.LastName}"));

            connection.On(nameof(ICustomerClient.Pong),
                          () => Console.WriteLine("Pong"));

            Console.WriteLine("Connecting...");
            await connection.StartAsync();

            string groupName = string.Format("Grupa {0}", connection.ConnectionId[0] % 3);

            Console.WriteLine($"Connected {groupName}.");

            await connection.SendAsync("Ping");

            CustomerFaker customerFaker = new CustomerFaker();

            var customers = customerFaker.GenerateForever();

            foreach (var customer in customers)
            {
                Console.WriteLine($"Send {customer.FirstName} {customer.LastName}");
                await connection.SendAsync(nameof(ICustomerServer.SendCustomerAdded), customer);

                // await connection.SendAsync("SendCustomerAddedToGroup", customer, groupName);

                await Task.Delay(TimeSpan.FromMilliseconds(100));
            }

            Console.WriteLine("Press any key to exit.");
            Console.ReadKey();

            Console.ResetColor();
        }
Пример #17
0
        private static async Task AddCustomerTest()
        {
            CustomerFaker customerFaker = new CustomerFaker();
            Customer      customer      = customerFaker.Generate();

            using (HttpClient client = new HttpClient())
            {
                client.BaseAddress = new Uri("https://localhost:5001");

                HttpResponseMessage response = await client.PostAsJsonAsync("api/customers", customer);

                string content = await response.RequestMessage.Content.ReadAsStringAsync();

                if (response.IsSuccessStatusCode)
                {
                }
            }
        }
Пример #18
0
        // >= C# 7.1
        static async Task Main(string[] args)
        {
            const string url = "http://localhost:5000/signalr/customers";

            Console.BackgroundColor = ConsoleColor.Green;
            Console.ForegroundColor = ConsoleColor.White;

            Console.WriteLine("Hello Signal-R Sender!");

            // dotnet add package Microsoft.AspNetCore.SignalR.Client

            HubConnection connection = new HubConnectionBuilder()
                                       .WithUrl(url)
                                       .WithAutomaticReconnect()
                                       .Build();

            connection.Reconnected += connectionId =>
            {
                if (connection.State == HubConnectionState.Connected)
                {
                    // TODO: Przesylanie danych z kolejki
                }

                return(Task.CompletedTask);
            };

            connection.Closed += error =>
            {
                if (connection.State == HubConnectionState.Disconnected)
                {
                    // TODO: Powiadomienie użytkownika
                }

                return(Task.CompletedTask);
            };


            Console.WriteLine("Connecting...");
            await connection.StartAsync();

            Console.WriteLine("Connected.");

            CustomerFaker customerFaker = new CustomerFaker();

            // Customer customer = customerFaker.Generate();

            var customers = customerFaker.GenerateForever();

            foreach (var customer in customers)
            {
                Console.WriteLine($"Sending {customer.FirstName} {customer.LastName}");
                await connection.SendAsync("SendAddedCustomer", customer);

                Console.WriteLine($"Sent.");

                await Task.Delay(TimeSpan.FromSeconds(1));
            }



            Console.WriteLine("Press any key to exit.");
            Console.ReadKey();
        }
Пример #19
0
        public FakeCustomersService(CustomerFaker customerFaker)
        {
            this.customerFaker = customerFaker;

            customers = customerFaker.Generate(100);
        }
 public FakeCustomerRepository(CustomerFaker customerFaker)
 {
     this.customerFaker = customerFaker;
     this.customers     = customerFaker.Generate(100).OfType <ICustomer>().ToList();
 }
Пример #21
0
 // dotnet add package Microsoft.Extensions.Options
 public FakeCustomerRepository(IOptions <CustomerOptions> options, CustomerFaker customerFaker)
 {
     customers = customerFaker.Generate(options.Value.Count);
 }
Пример #22
0
 public FakeCustomerRepository(CustomerFaker faker) : base(faker)
 {
 }
Пример #23
0
        //public FakeCustomersService
        //    (IOptions<MyOptions> options, CustomerFaker faker) : base(options, faker)
        //{
        //}

        public FakeCustomersService
            (MyOptions options, CustomerFaker faker) : base(options, faker)
        {
        }
Пример #24
0
 public FakeCustomerService(IOptions <EntityOptions> options, CustomerFaker faker) : base(options, faker)
 {
 }
 public CustomerConfiguration(CustomerFaker customerFaker)
 {
     this.customerFaker = customerFaker;
 }