public async void DeleteAccount_RelatedChargedPaymentsRemoved() { // Arrange var accountService = new AccountService(ambientDbContextLocator, dbContextScopeFactory); var paymentService = new PaymentService(ambientDbContextLocator, dbContextScopeFactory); var account = new Account(new AccountEntity { Name = "Testtext" }); await accountService.SaveAccount(account); var payment = new Payment(new PaymentEntity { Note = "Foo", ChargedAccount = account.Data }); // Act await paymentService.SavePayments(payment); Assert.Equal(1, MvxEnumerableExtensions.Count((await accountService.GetAllAccounts()))); Assert.Equal(1, MvxEnumerableExtensions.Count((await paymentService.GetPaymentsByAccountId(account.Data.Id)))); await accountService.DeleteAccount(account); // Assert Assert.False((await accountService.GetAllAccounts()).Any()); Assert.False((await paymentService.GetPaymentsByAccountId(account.Data.Id)).Any()); }
public Tuple <int, int> GetPositions(object childItem) { int groupPosition = 0; foreach (var item in this._itemsSource) { int childPosition = MvxEnumerableExtensions.GetPosition((IEnumerable)item, childItem); if (childPosition != -1) { return(new Tuple <int, int>(groupPosition, childPosition)); } groupPosition++; } return(null); }
public override void ViewDidLoad() { //base.ViewDidLoad(); var scrollView = new UIScrollView(View.Frame) { ShowsHorizontalScrollIndicator = false, AutoresizingMask = UIViewAutoresizing.FlexibleHeight, BackgroundColor = Style.Menu.BackgroundColor }; int top = 120, left = 30; UIImage divider = UIImage.FromBundle("divider"); MenuViewModel.MenuItems.Add(new MenuItem() { menu_title = Translator.GetText("gallery"), page_title = Translator.GetText("gallery"), url = string.Empty }); for (var i = 0; i < MenuViewModel.MenuItems.Count; i++) { MenuItem item = MenuViewModel.MenuItems[i]; if (MvxEnumerableExtensions.ElementAt(menuIds, i) != null) { var img = UIImage.FromBundle(menuIds[i])?.ImageWithRenderingMode(UIImageRenderingMode.AlwaysTemplate); var btnHeight = img?.Size.Height + 10 ?? 20; var btn = new ButtonMenu(new CGRect(0, top, scrollView.Frame.Width, btnHeight), item, img) { ContentEdgeInsets = new UIEdgeInsets(0, left, 0, 0), ContentMode = UIViewContentMode.ScaleAspectFit }; btn.TouchUpInside += OnMenuItemClick; if (i == 0) { btn.Selected = true; lastSelectedButton = btn; } scrollView.Add(btn); top += (int)btn.Frame.Height; var leftSeparator = left + btn.TitleEdgeInsets.Left; leftSeparator += btn.CurrentImage?.Size.Width ?? 0; var separator = new UIImageView(new CGRect(leftSeparator, top, scrollView.Frame.Width - 160, 5)) { Image = divider }; scrollView.Add(separator); top += (int)separator.Frame.Height + 10; } } Add(scrollView); View.SubviewsDoNotTranslateAutoresizingMaskIntoConstraints(); View.AddConstraints( scrollView.AtLeftOf(View), scrollView.AtTopOf(View), scrollView.WithSameWidth(View), scrollView.WithSameHeight(View)); //scrollView.SubviewsDoNotTranslateAutoresizingMaskIntoConstraints(); // var constraints = scrollView.VerticalStackPanelConstraints(new Margins(20, 120, 0, 10, 5, 5), scrollView.Subviews); // // scrollView.AddConstraints(constraints); }