def test_name(self, sample_repair, sample_device, some_devices): merger = Device.merge([ sample_device.id, ] + list(map(lambda d: d.id, some_devices))) assert merger.name == sample_device.name try: merger = Device.merge([ sample_device.id, ]) assert False except IndexError: assert True
def test_repairs(self, sample_device, sample_repair, another_repair, another_device): reps = [sample_repair, another_repair] merger = Device.merge([sample_device.id, another_device.id]) assert list( map(lambda x: x.name, sorted(merger.repairs, key=lambda r: r.id))) == list( map(lambda x: x.name, sorted(reps, key=lambda r: r.id)))
def action_approve(self, ids): try: merger = Device.merge(ids) except (IntegrityError, FlushError) as e: flash("Zusammenführen fehlgeschlagen", "danger") current_app.logger.error(e) return except IndexError: flash("Bitte wähle mindestens 1 Gerät aus.") return flash( f"Die Geräte wurden erfolgreich zu {merger.name} zusammengeführt. Bitte passe den Namen an und prüfe die Bilder." ) return redirect(url_for('device.edit_view', id=merger.id))
def test_delete(self, sample_device, some_devices): Device.merge([ sample_device.id, ] + list(map(lambda d: d.id, some_devices))) assert Device.query.count() == 1
def test_colors(self, sample_device, another_device, sample_color): colors = list(sample_device.colors) + list(another_device.colors) merger = Device.merge([sample_device.id, another_device.id]) assert set(sorted(merger.colors, key=lambda r: r.id)) == set( sorted(colors, key=lambda r: r.id))
def test_is_tablet(self, sample_device, some_devices): merger = Device.merge([ sample_device.id, ] + list(map(lambda d: d.id, some_devices))) assert merger.is_tablet == sample_device.is_tablet