Page MenuHomePhorge

D1516.1774866063.diff
No OneTemporary

Authored By
Unknown
Size
2 KB
Referenced Files
None
Subscribers
None

D1516.1774866063.diff

diff --git a/src/resources/vue/Widgets/ListInput.vue b/src/resources/vue/Widgets/ListInput.vue
--- a/src/resources/vue/Widgets/ListInput.vue
+++ b/src/resources/vue/Widgets/ListInput.vue
@@ -10,7 +10,7 @@
</div>
</div>
<div class="input-group" v-for="(item, index) in list" :key="index">
- <input type="text" class="form-control" :value="item">
+ <input type="text" class="form-control" v-model="list[index]">
<div class="input-group-append">
<a href="#" class="btn btn-outline-secondary" @click.prevent="deleteItem(index)">
<svg-icon icon="trash-alt"></svg-icon>
diff --git a/src/tests/Browser/UsersTest.php b/src/tests/Browser/UsersTest.php
--- a/src/tests/Browser/UsersTest.php
+++ b/src/tests/Browser/UsersTest.php
@@ -414,6 +414,29 @@
$this->assertSame('Julia', $julia->getSetting('first_name'));
$this->assertSame('Roberts', $julia->getSetting('last_name'));
$this->assertSame('Test Org', $julia->getSetting('organization'));
+
+ // Some additional tests for the list input widget
+ $browser->click('tbody tr:nth-child(4) a')
+ ->on(new UserInfo())
+ ->with(new ListInput('#aliases'), function (Browser $browser) {
+ $browser->assertListInputValue(['julia.roberts2@kolab.org'])
+ ->addListEntry('invalid address')
+ ->type('.input-group:nth-child(2) input', '@kolab.org');
+ })
+ ->click('button[type=submit]')
+ ->assertToast(Toast::TYPE_ERROR, 'Form validation error')
+ ->with(new ListInput('#aliases'), function (Browser $browser) {
+ $browser->assertVisible('.input-group:nth-child(2) input.is-invalid')
+ ->assertVisible('.input-group:nth-child(3) input.is-invalid')
+ ->type('.input-group:nth-child(2) input', 'julia.roberts3@kolab.org')
+ ->type('.input-group:nth-child(3) input', 'julia.roberts4@kolab.org');
+ })
+ ->click('button[type=submit]')
+ ->assertToast(Toast::TYPE_SUCCESS, 'User data updated successfully.');
+
+ $julia = User::where('email', 'julia.roberts@kolab.org')->first();
+ $aliases = $julia->aliases()->orderBy('alias')->get()->pluck('alias')->all();
+ $this->assertSame(['julia.roberts3@kolab.org', 'julia.roberts4@kolab.org'], $aliases);
});
}

File Metadata

Mime Type
text/plain
Expires
Mon, Mar 30, 10:21 AM (2 d, 20 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18803781
Default Alt Text
D1516.1774866063.diff (2 KB)

Event Timeline