Browse Source

add tests for View and WebContentsView

Cheng Zhao 7 years ago
parent
commit
300c7a4b04
2 changed files with 39 additions and 0 deletions
  1. 14 0
      spec/api-view-spec.js
  2. 25 0
      spec/api-web-contents-view-spec.js

+ 14 - 0
spec/api-view-spec.js

@@ -0,0 +1,14 @@
+'use strict'
+
+const {closeWindow} = require('./window-helpers')
+const {TopLevelWindow, View} = require('electron').remote
+
+describe('View', () => {
+  let w = null
+  afterEach(() => closeWindow(w).then(() => { w = null }))
+
+  it('can be used as content view', () => {
+    w = new TopLevelWindow({show: false})
+    w.setContentView(new View())
+  })
+})

+ 25 - 0
spec/api-web-contents-view-spec.js

@@ -0,0 +1,25 @@
+'use strict'
+
+const assert = require('assert')
+const {closeWindow} = require('./window-helpers')
+const {webContents, TopLevelWindow, WebContentsView} = require('electron').remote
+
+describe('WebContentsView', () => {
+  let w = null
+  afterEach(() => closeWindow(w).then(() => { w = null }))
+
+  it('can be used as content view', () => {
+    const web = webContents.create({})
+    w = new TopLevelWindow({show: false})
+    w.setContentView(new WebContentsView(web))
+  })
+
+  it('prevents adding same WebContents', () => {
+    const web = webContents.create({})
+    w = new TopLevelWindow({show: false})
+    w.setContentView(new WebContentsView(web))
+    assert.throws(() => {
+      w.setContentView(new WebContentsView(web))
+    }, /The WebContents has already been added to a View/)
+  })
+})