Browse Source

Add spec for remote setter with remote object

Kevin Sawicki 8 years ago
parent
commit
e5f70f90a4
2 changed files with 19 additions and 0 deletions
  1. 8 0
      spec/api-ipc-spec.js
  2. 11 0
      spec/fixtures/module/remote-object-set.js

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

@@ -199,6 +199,14 @@ describe('ipc module', function () {
       }, /setting error/)
     })
 
+    it('can set a remote property with a remote object', function () {
+      const foo = remote.require(path.join(fixtures, 'module', 'remote-object-set.js'))
+
+      assert.doesNotThrow(function () {
+        foo.bar = remote.getCurrentWindow()
+      })
+    })
+
     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/remote-object-set.js

@@ -0,0 +1,11 @@
+const {BrowserWindow} = require('electron')
+
+class Foo {
+  set bar (value) {
+    if (!(value instanceof BrowserWindow)) {
+      throw new Error('setting error')
+    }
+  }
+}
+
+module.exports = new Foo()