def update(self, *args):
        set_module_args(dict(
            synchronization="yes",
            synchronization_group_name='foo',
            synchronize_zone_files="yes",
            provider=dict(
                server='localhost',
                password='******',
                user='******'
            )
        ))

        current = ApiParameters(params=load_fixture('load_gtm_global_settings_general_1.json'))
        module = AnsibleModule(
            argument_spec=self.spec.argument_spec,
            supports_check_mode=self.spec.supports_check_mode
        )

        # Override methods in the specific type of manager
        mm = ModuleManager(module=module)
        mm.update_on_device = Mock(return_value=True)
        mm.read_current_from_device = Mock(return_value=current)

        results = mm.exec_module()

        assert results['changed'] is True
        assert results['synchronization'] == 'yes'
        assert results['synchronization_group_name'] == 'foo'
        assert results['synchronize_zone_files'] == 'yes'
    def test_api_parameters(self):
        args = load_fixture('load_gtm_global_settings_general_1.json')

        p = ApiParameters(params=args)
        assert p.synchronization is False
        assert p.synchronization_group_name == 'default'
        assert p.synchronize_zone_files is False