// // When // void When(ManifestDownloaded e) { if (e.RemovedDealerIds.Contains(Id)) { ThenDone(); } }
void Given(ManifestDownloaded e) { foreach (var removedDealerId in e.RemovedDealerIds) { _unenrolledDealerIds.Add(removedDealerId); _campaignsByDealerId.Remove(removedDealerId); } }
void Given(ManifestDownloaded e) { foreach (var added in e.AddedDealers) { _pagesByDealerId.Add(added.Id, Pages.None); } foreach (var removedId in e.RemovedDealerIds) { _pagesByDealerId.Remove(removedId); } }
void When(ManifestDownloaded e) { var enrolledDealerIds = Many.Of( from dealerId in _pagesByDealerId.Keys where _pagesByDealerId[dealerId] != Pages.None select dealerId); if (enrolledDealerIds.Count == 0) { Then(new DealerManifestDownloadsSkipped()); } else { Then(new DealerManifestDownloadsStarted(enrolledDealerIds)); } }
void Given(ManifestDownloaded e) { foreach (var added in e.AddedDealers) { _dealersById[added.Id] = added; } foreach (var updated in e.UpdatedDealers) { _dealersById[updated.Id] = updated; } foreach (var removed in e.RemovedDealerIds) { _dealersById.Remove(removed); } }
void Given(ManifestDownloaded e) { if (e.RemovedDealerIds.Contains(Id)) { ThenDone(); } else { DealerId = Id; var dealer = e.AddedDealers .Concat(e.UpdatedDealers) .Where(d => d.Id == Id) .First(); Code = dealer.Code; Name = dealer.Name; Region = dealer.Region; Hostname = dealer.Hostname; ManifestLink = dealer.ManifestLink; } }
void Given(ManifestDownloaded e) => _dealer = e.AddedDealers .Concat(e.UpdatedDealers) .Where(dealer => dealer.Id == Id) .FirstOrDefault();
static Many <Id> RouteFirst(ManifestDownloaded e) => e.AddedDealers .Concat(e.UpdatedDealers) .Select(dealer => dealer.Id) .Concat(e.RemovedDealerIds) .ToMany();
void Given(ManifestDownloaded e) { var dealers = from region in Regions from dealer in region.Dealers select new { dealer.DealerId, Region = region.Name, dealer.Name, dealer.DetailsLink, dealer.IsEnrolled }; var dealersById = dealers.ToDictionary(dealer => dealer.DealerId); foreach (var added in e.AddedDealers) { dealersById.Add(added.Id, new { DealerId = added.Id, added.Region, added.Name, DetailsLink = $"/api/dealers/{added.Id}", IsEnrolled = false }); } foreach (var updated in e.UpdatedDealers) { var dealer = dealersById[updated.Id]; dealersById[updated.Id] = new { DealerId = updated.Id, updated.Region, updated.Name, dealer.DetailsLink, dealer.IsEnrolled }; } foreach (var removedId in e.RemovedDealerIds) { dealersById.Remove(removedId); } Regions = Many.Of( from dealer in dealersById.Values group dealer by dealer.Region into regionDealers orderby regionDealers.Key select new Region { Name = regionDealers.Key, Dealers = Many.Of( from dealer in regionDealers orderby Int32.Parse(dealer.DealerId.ToString()) select new Dealer { DealerId = dealer.DealerId, Name = dealer.Name, DetailsLink = dealer.DetailsLink, IsEnrolled = dealer.IsEnrolled }) }); }
void Given(ManifestDownloaded e) => _assetsLink = e.AssetsLink;