From 871ba99a300cba5dc1b0db805ae05bc12649cd80 Mon Sep 17 00:00:00 2001 From: Steve Gravrock Date: Wed, 17 Nov 2021 12:50:16 -0800 Subject: [PATCH] Allow custom spy strategies to be inherited like other runnable resources --- lib/jasmine-core/jasmine.js | 3 +++ spec/core/integration/CustomSpyStrategiesSpec.js | 2 +- src/core/Env.js | 3 +++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/jasmine-core/jasmine.js b/lib/jasmine-core/jasmine.js index 0a679f7c..eefa05e0 100644 --- a/lib/jasmine-core/jasmine.js +++ b/lib/jasmine-core/jasmine.js @@ -1604,6 +1604,9 @@ getJasmineRequireObj().Env = function(j$) { resources.customObjectFormatters = j$.util.clone( runnableResources[parentRunnableId].customObjectFormatters ); + resources.customSpyStrategies = j$.util.clone( + runnableResources[parentRunnableId].customSpyStrategies + ); resources.defaultStrategyFn = runnableResources[parentRunnableId].defaultStrategyFn; } diff --git a/spec/core/integration/CustomSpyStrategiesSpec.js b/spec/core/integration/CustomSpyStrategiesSpec.js index 92372c3f..9b6d1eec 100644 --- a/spec/core/integration/CustomSpyStrategiesSpec.js +++ b/spec/core/integration/CustomSpyStrategiesSpec.js @@ -16,7 +16,7 @@ describe('Custom Spy Strategies (Integration)', function() { var jasmineDone = jasmine.createSpy('jasmineDone'); env.describe('suite defining a custom spy strategy', function() { - env.beforeEach(function() { + env.beforeAll(function() { env.addSpyStrategy('frobnicate', strategy); }); diff --git a/src/core/Env.js b/src/core/Env.js index ddd9d4ee..394b5363 100644 --- a/src/core/Env.js +++ b/src/core/Env.js @@ -441,6 +441,9 @@ getJasmineRequireObj().Env = function(j$) { resources.customObjectFormatters = j$.util.clone( runnableResources[parentRunnableId].customObjectFormatters ); + resources.customSpyStrategies = j$.util.clone( + runnableResources[parentRunnableId].customSpyStrategies + ); resources.defaultStrategyFn = runnableResources[parentRunnableId].defaultStrategyFn; }