public ReceivedPurchaseOrderEditorViewModel( EditablePurchaseOrder purchaseOrder, IColorList colorList, IBatchNumberValidator batchNumberValidator, IBatchOperatorSource operatorSource, IActiveInventorySource inventorySource, IReceivedBatchSource receivedBatchSource, IImplementedBatchSource implementedBatchSource ) { this.purchaseOrder = purchaseOrder; this.operatorSource = operatorSource; this.inventorySource = inventorySource; this.receivedBatchSource = receivedBatchSource; this.implementedBatchSource = implementedBatchSource; receivedBatches = new ObservableCollection <ReceivedBatch>(); ReceivedBatch = new ReceivedBatch(); ImportPurchaseOrderInformation(); UpdateReceivedBatchCommand = new UpdatePurchaseOrderReceivingRecordCommand(this); UpdatePurchaseOrderCommand = new UpdatePurchaseOrderHeaderCommand(this); DeleteReceivingRecordCommand = new DeletePurchaseOrderReceivingRecordCommand(this); ReceivedBatchSelectionChanged = new ReceivedBatchForEditingSelectionChangedCommand(this); UpdateText = "Save Item"; this.colorList = colorList; this.batchNumberValidator = batchNumberValidator; SelectedColorIndex = 0; ReceivedBatchesSelectedIndex = -1; }
public void CommandWillExecuteIfSelectedBatchForDeletionHasBeenImplementedButHasAvailableQuantityInInventory() { string batchNumber = viewModel.ReceivedBatches[0].BatchNumber; implementedBatchSource.AddBatchToImplementationLedger(batchNumber, DateTime.Now, operatorSource.FindBatchOperator(1)); receivedBatchSource.SaveReceivedBatch(new ReceivedBatch("White", whiteBatch, activityDate, 5, 22222, operatorSource.FindBatchOperator(1))); viewModel = new ReceivedPurchaseOrderEditorViewModel( receivedBatchSource.GetPurchaseOrderForEditing(22222), new DuracolorIntermixColorList(), new DuracolorIntermixBatchNumberValidator(), operatorSource, inventorySource, receivedBatchSource, implementedBatchSource ); command = new DeletePurchaseOrderReceivingRecordCommand(viewModel); viewModel.ReceivedBatchesSelectedIndex = 0; Assert.True(command.CanExecute(null)); }
public override void SetUp() { sqliteHelper = new SQLiteDatabaseHelper(); sqliteHelper.CreateTestDatabase(); SQLiteStoreContext context = new SQLiteStoreContext(sqliteHelper.DatabaseFile); inventorySource = new SQLiteActiveInventorySource(context); receivedBatchSource = new SQLiteReceivedBatchSource(context, inventorySource); implementedBatchSource = new SQLiteImplementedBatchSource(context, inventorySource); operatorSource = new SQLiteBatchOperatorSource(context); base.SetUp(); viewModel = new ReceivedPurchaseOrderEditorViewModel( receivedBatchSource.GetPurchaseOrderForEditing(originalPONumber), new DuracolorIntermixColorList(), new DuracolorIntermixBatchNumberValidator(), operatorSource, inventorySource, receivedBatchSource, implementedBatchSource ); command = new DeletePurchaseOrderReceivingRecordCommand(viewModel); }