diff --git a/test/runtime/samples/select-change-handler/_config.js b/test/runtime/samples/select-change-handler/_config.js
new file mode 100644
index 0000000000..2a9bb61bd1
--- /dev/null
+++ b/test/runtime/samples/select-change-handler/_config.js
@@ -0,0 +1,22 @@
+export default {
+ data: {
+ options: [ { id: 'a' }, { id: 'b' }, { id: 'c' } ],
+ selected: 'b'
+ },
+
+ test ( assert, component, target, window ) {
+ const select = target.querySelector( 'select' );
+ assert.equal( select.value, 'b' );
+
+ const event = new window.Event( 'update' );
+
+ select.value = 'c';
+ select.dispatchEvent( event );
+
+ assert.equal( select.value, 'c' );
+ assert.equal( component.get( 'lastChangedTo' ), 'c' );
+ assert.equal( component.get( 'selected' ), 'c' );
+
+ component.destroy();
+ }
+};
diff --git a/test/runtime/samples/select-change-handler/main.html b/test/runtime/samples/select-change-handler/main.html
new file mode 100644
index 0000000000..8a62fd2635
--- /dev/null
+++ b/test/runtime/samples/select-change-handler/main.html
@@ -0,0 +1,15 @@
+
+
+
\ No newline at end of file