Testing Vuejs EventBua

I have been trying to figure this out for some time already, but I can not make it work! I found some examples on internet, but nothing solves it, every time I run my test I get:

     Expected number of calls: 1
     Received number of calls: 0

    > 186 |        expect(wrapper.vm.EventBus.$on).toHaveBeenCalledTimes(1);

The component looks like this:

    import {EventBus} from 'eventbus';
    export default{
        data(){ return {}},
        mounted(){
            EventBus.$on('saveTerminal', function(){
                 this.someOtherFunction()        
            })
        }
    }

The eventbus file looks like this:

import Vue from 'vue';
export const EventBus = new Vue();

The test looks like this:

const GlobalPlugins = {
     install(v) {
        v.prototype.EventBus = new Vue();
     },
 };
//Vue.prototype.EventBus = new Vue(); <-- I tried this also, didn't do anything

    // Mounting component
    const $t = () => {}
    const params = { localVue, store, router,
        propsData: {
            isEdit: false
        },
        data(){
            return {
                loading: false,
                tabIndex: 1
            };
        },
        mocks:{
            $t,
            EventBus: {
                $on: jest.fn(),
                $off: jest.fn(),
                $emit: jest.fn()
            }
        },
     }

    const wrapper = shallowMount(MyComponent, params)

    it('Event bus', () => {
        wrapper.vm.EventBus.$emit('saveTerminal');

        expect(wrapper.vm.EventBus.$on).toHaveBeenCalledTimes(1);
        expect(wrapper.vm.EventBus.$on).toHaveBeenCalledWith('saveTerminal', expect.any(Function))
    });
    ```