Example #1
0
 public static IVehicle get(this IVehicleStorage vehicleStorage, IEnrollment enrollment)
 {
     return(vehicleStorage
            .get()
            .whereEnrollmentIs(enrollment)
            .Single());
 }
Example #2
0
        public JVBBSqlVehicleStorageTests()
        {
            this.connectionString = ConfigurationManager.AppSettings[CONNECTION_STRING_KEY];

            string scripsFolder = ConfigurationManager.AppSettings[SCRIPTS_FOLDER_KEY];

            this.creationScript = ConfigurationManager.AppSettings[CREATION_SCRIPT_FILE_KEY];
            this.creationScript = Path.Combine(Environment.CurrentDirectory, scripsFolder, this.creationScript);

            this.destructionScript = ConfigurationManager.AppSettings[DESTRUCTION_SCRIPT_FILE_KEY];
            this.destructionScript = Path.Combine(Environment.CurrentDirectory, scripsFolder, this.destructionScript);

            this.fakeStorage        = new ArrayVehicleStorage();
            this.enrollmentProvider = new DefaultEnrollmentProvider();
            this.vehicleBuilder     = new VehicleBuilder(this.enrollmentProvider);
        }
Example #3
0
        public void vehicleStoarge_implementations_must_return_6_items()
        {
            ArrayEnrollmentProvider enrollmentProvider = new ArrayEnrollmentProvider();
            IVehicleBuilder         vehicleBuilder     = new VehicleBuilder(enrollmentProvider);

            IVehicleStorage[] vehicleStorages = new IVehicleStorage[]
            {
                new InMemoryVehicleStorage(),
                new FileVehicleStorage(this.VehiclesFilePath, vehicleBuilder),
            };

            vehicleBuilder.addWheel();
            vehicleBuilder.addWheel();
            vehicleBuilder.setColor(CarColor.Blue);
            vehicleBuilder.setDoors(0);
            vehicleBuilder.setEngine(40);

            for (int i = 0; i < enrollmentProvider.Count; i++)
            {
                IVehicle vehicle = vehicleBuilder.build();
                foreach (IVehicleStorage vehicleStorage in vehicleStorages)
                {
                    vehicleStorage.set(vehicle);
                }
            }

            foreach (IVehicleStorage vehicleStorage in vehicleStorages)
            {
                IEnumerable <IVehicle> vehicles = vehicleStorage.get();
                Assert.AreEqual(enrollmentProvider.Count, vehicles.Count());
            }

            foreach (IVehicleStorage vehicleStorage in vehicleStorages)
            {
                vehicleStorage.Dispose();
            }
        }
Example #4
0
 public VehiclesController()
 {
     this.vehicleStorage = getService <IVehicleStorage>();
 }
Example #5
0
 public MainForm(IVehicleStorage vehicleStorage, IEnrollmentProvider enrollmentProvider)
 {
     this.vehicleStorage     = vehicleStorage;
     this.enrollmentProvider = enrollmentProvider;
     InitializeComponent();
 }
Example #6
0
 public CarDealer(IVehicleStorage storage)
 {
     this.storage = storage;
 }
Example #7
0
        static void Main(string[] args)
        {
            IVehicleStorage storage = JsonStorage.LoadFromFile("/home/joernneumeyer/vehicles");
            CarDealer       dealer  = new CarDealer(storage);
            IMenuCommand    cmd;

            Vehicle v = new Car();

            v.Price        = 200;
            v.Vendor       = "Skoda";
            v.LicensePlate = "ABC";
            dealer.AddVehicle(v);

            v              = new Truck();
            v.Price        = 300;
            v.Vendor       = "MAN";
            v.LicensePlate = "YTG";
            dealer.AddVehicle(v);

            bool repeat = true;

            do
            {
                Console.WriteLine("Please select an option:");
                Console.WriteLine("q: Quit");
                Console.WriteLine("1: Add a new vehicle");
                Console.WriteLine("2: List all available vehicles");
                Console.WriteLine("3: Show number of available vehicles");
                Console.WriteLine("4: Show total value of all vehicles");
                // Console.WriteLine("5: Show price of vehicle by id");
                Console.WriteLine("6: Increase all prices by percentage");
                Console.WriteLine("7: Search for vehicle in price range");

                string choice = Console.ReadLine();

                switch (choice)
                {
                case "1":
                    cmd = new CreateVehicleCommand();
                    break;

                case "2":
                    cmd = new PrintVehiclesCommand();
                    break;

                case "3":
                    cmd = new ShowNumberOfAllVehicles();
                    break;

                case "4":
                    cmd = new ShowTotalValueOfAllVehicles();
                    break;

                case "6":
                    cmd = new IncreasePricesCommand();
                    break;

                case "7":
                    cmd = new SearchVehicleInPriceRangeCommand();
                    break;

                case "q":
                    cmd    = null;
                    repeat = false;
                    break;

                default:
                    cmd = null;
                    break;
                }

                if (cmd != null)
                {
                    cmd.Execute(dealer);
                    Console.Write("\r\n\r\nPress enter...");
                    Console.ReadLine();
                    Console.Clear();
                }
            } while (repeat);
        }