def METHOD_NAME(self, ignite_version, backups, cache_count, entry_count, entry_size, preloaders):
    """
    Basic snapshot test.
    """
    data_gen_params = DataGenerationParams(backups=backups, cache_count=cache_count, entry_count=entry_count,
                                           entry_size=entry_size, preloaders=preloaders)
    version = IgniteVersion(ignite_version)
    ignite_config = IgniteConfiguration(
        version=version,
        data_storage=DataStorageConfiguration(
            default=DataRegionConfiguration(
                persistence_enabled=True,
                max_size=data_gen_params.data_region_max_size
            )
        ),
        metric_exporters={'org.apache.ignite.spi.metric.jmx.JmxMetricExporterSpi'}
    )
    nodes = IgniteService(self.test_context, ignite_config, num_nodes=self.available_cluster_size - 2)
    nodes.start()
    control_utility = ControlUtility(nodes)
    control_utility.activate()
    preload_data(
        self.test_context,
        nodes.config._replace(client_mode=True, discovery_spi=from_ignite_cluster(nodes)),
        data_gen_params=data_gen_params)
    control_utility.validate_indexes()
    control_utility.idle_verify()
    node = nodes.nodes[0]
    dump_1 = control_utility.idle_verify_dump(node)
    control_utility.snapshot_create(self.SNAPSHOT_NAME)
    loader = IgniteApplicationService(
        self.test_context,
        nodes.config._replace(client_mode=True, discovery_spi=from_ignite_cluster(nodes)),
        java_class_name="org.apache.ignite.internal.ducktest.tests.DataGenerationApplication",
        params={"backups": backups, "cacheCount": cache_count, "entrySize": entry_size,
                "from": entry_count, "to": entry_count * 1.2}
    )
    loader.run()
    dump_2 = control_utility.idle_verify_dump(node)
    diff = node.account.ssh_output(f'diff {dump_1} {dump_2}', allow_fail=True)
    assert diff
    nodes.stop()
    nodes.restore_from_snapshot(self.SNAPSHOT_NAME)
    nodes.start(clean=False)
    control_utility.activate()
    control_utility.validate_indexes()
    control_utility.idle_verify()
    dump_3 = control_utility.idle_verify_dump(node)
    diff = node.account.ssh_output(f'diff {dump_1} {dump_3}', allow_fail=True)
    assert not diff, diff