Mocking $sessionStorage for controller testing

HTML

<script src="https://cdn.rawgit.com/jasmine/jasmine/master/lib/jasmine-core/jasmine.js"></script>
<link rel="stylesheet" href="https://cdn.rawgit.com/jasmine/jasmine/master/lib/jasmine-core/jasmine.css">
<script src="https://cdn.rawgit.com/jasmine/jasmine/master/lib/jasmine-core/jasmine-html.js"></script>
<script src="https://cdn.rawgit.com/jasmine/jasmine/master/lib/jasmine-core/boot/boot.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.2/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.2/angular-mocks.js"></script>
<script src="https://cdn.rawgit.com/scriptwerx/angular-swx-session-storage/master/release/swx-session-storage.min.js"></script>

JavaScript

// CODE
(function (angular) {
    
    'use strict';
    
    function MyController($sessionStorage) {
    
        var vm = this;
        
        vm.notifications = {
			      someData: $sessionStorage.get('someData')
        };
        
        vm.updateData = function(data) {
            vm.notifications.someData = $sessionStorage.put('someData', data);
        };
        
        vm.resetData = function() {
		        $sessionStorage.remove('someData');
            vm.notifications.someData = $sessionStorage.get('someData');
        };
    }
    MyController.$inject = ['$sessionStorage'];
    
    angular
        .module('myApp', ['swxSessionStorage'])
        .controller('MyController', MyController);
    
})(window.angular);

// SPECS
describe('myApp', function () {

    'use strict';

    var suite = this,
        tmpStorageData = {
            someData: 'HELLO' // Already populated data
        },
        mockSessionStorage = { // Full mock for $sessionStorage
            get: function(id) {
                return tmpStorageData[id];
            },
            put: function(id, data) {
                return tmpStorageData[id] = data;
            },
            remove: function(id) {
                delete tmpStorageData[id];
            },
            empty: function() {
                tmpStorageData = {};
            }
        };

    beforeEach(function() {
        angular.mock.module('myApp');
        angular.mock.inject(function($controller) {
            suite.controller = $controller;
        });
    });

    function createController() {
        return suite.controller('MyController', {
            $sessionStorage: mockSessionStorage
        });
    }

    describe('MyController', function() {

        var vm;

        beforeEach(function() {
            spyOn(mockSessionStorage, 'get').and.callThrough();
            spyOn(mockSessionStorage, 'put').and.callThrough();
            spyOn(mockSessionStorage, 'remove').and.callThrough();
           ...