Browse Source

Add spec for remote setter not surfacing error

Kevin Sawicki 8 years ago
parent
commit
257f6b142f
2 changed files with 23 additions and 0 deletions
  1. 12 0
      spec/api-ipc-spec.js
  2. 11 0
      spec/fixtures/module/error-properties.js

+ 12 - 0
spec/api-ipc-spec.js

@@ -187,6 +187,18 @@ describe('ipc module', function () {
       property.property = 1127
     })
 
+    it('rethrows errors getting/setting properties', function () {
+      const foo = remote.require(path.join(fixtures, 'module', 'error-properties.js'))
+
+      assert.throws(function () {
+        foo.bar
+      }, /getting error/)
+
+      assert.throws(function () {
+        foo.bar = 'test'
+      }, /setting error/)
+    })
+
     it('can construct an object from its member', function () {
       var call = remote.require(path.join(fixtures, 'module', 'call.js'))
       var obj = new call.constructor()

+ 11 - 0
spec/fixtures/module/error-properties.js

@@ -0,0 +1,11 @@
+class Foo {
+  set bar (value) {
+    throw new Error('setting error')
+  }
+
+  get bar () {
+    throw new Error('getting error')
+  }
+}
+
+module.exports = new Foo()