mirror of
https://github.com/atom/atom.git
synced 2026-04-28 03:01:47 -04:00
Stringify/parse temporary window state to avoid nulling out references
If the object passed via IPC contains any keys of the same reference, all but one of these keys will be nulled out. Converting to/from a string avoids this problem.
This commit is contained in:
19
spec/application-delegate-spec.js
Normal file
19
spec/application-delegate-spec.js
Normal file
@@ -0,0 +1,19 @@
|
||||
/** @babel */
|
||||
|
||||
import {it, fit, ffit, fffit, beforeEach, afterEach} from './async-spec-helpers'
|
||||
import ApplicationDelegate from '../src/application-delegate'
|
||||
|
||||
describe('ApplicationDelegate', function () {
|
||||
describe('set/getTemporaryWindowState', function () {
|
||||
it('can serialize object trees containing redundant child object references', async function () {
|
||||
const applicationDelegate = new ApplicationDelegate()
|
||||
const childObject = {c: 1}
|
||||
const sentObject = {a: childObject, b: childObject}
|
||||
|
||||
await applicationDelegate.setTemporaryWindowState(sentObject)
|
||||
const receivedObject = await applicationDelegate.getTemporaryWindowState()
|
||||
|
||||
expect(receivedObject).toEqual(sentObject)
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user