public PlanetPresenter(AsyncPlanet planet, Action <PlanetPresenter> delete) { _planet = planet; EditName = new EditPlanetName(_planet); DeleteItem = new DeletePlanet(_planet); _planet.PlanetRenamed += (sender, args) => { this.RaisePropertyChanged(nameof(Text)); }; _planet.PlanetDeleted += (sender, args) => { delete(this); }; }
public void Delete_InvokeEvent(UniverseSources source) { var planets = Universe(source).Planets(); var planet = new AsyncPlanet(planets.Create("")); var invoked = false; planet.PlanetDeleted += (sender, args) => invoked = true; planet.Delete(); Assert.IsTrue(invoked); Assert.IsFalse(planets.Any()); }
public async Task RenameAsync_InvokeEvent(UniverseSources source) { var planet = new AsyncPlanet(Universe(source).Planets().Create("")); var invoked = false; planet.PlanetRenamed += (sender, args) => invoked = true; var name = "Test"; await planet.RenameAsync(name); Assert.AreEqual(name, await planet.NameAsync()); Assert.IsTrue(invoked); }
public async Task EditPlanetName_Execute_ChangeName(UniverseSources source) { var name = "Test"; var asyncPlanet = new AsyncPlanet(Universe(source).Planets().Create(name)); var command = new EditPlanetName(asyncPlanet); name = "Test2"; Assert.IsTrue(command.CanExecute(name)); await command.ExecuteAsync(name); Assert.AreEqual(name, asyncPlanet.Name()); }
public EditPlanetName(AsyncPlanet planet) { _planet = planet; }
public DeletePlanet(AsyncPlanet planet) { _planet = planet; }