main screen
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
extends SceneTree
|
||||
|
||||
func _init():
|
||||
#print("Testing SaveManager...")
|
||||
|
||||
# Instantiate Global manually
|
||||
var global_script = load("res://Autoload/Global.gd")
|
||||
var global_instance = global_script.new()
|
||||
|
||||
# Manually call _ready because we are not adding it to the scene tree
|
||||
global_instance._ready()
|
||||
|
||||
# Check what is in Global.Owniverse
|
||||
#print("Global.Owniverse: ", global_instance.Owniverse)
|
||||
#print("Type of datetime: ", typeof(global_instance.Owniverse.datetime))
|
||||
|
||||
# Mock Global in SaveManager? SaveManager uses "Global" name.
|
||||
# In GDScript, "Global" refers to the Autoload name.
|
||||
# If we just instantiate SaveManager, it will fail to find "Global" if it's not in the tree or global scope.
|
||||
|
||||
# Workaround: I'll just copy the logic I want to test.
|
||||
|
||||
var data = global_instance.Owniverse
|
||||
#print("Data to save: ", data)
|
||||
|
||||
var filename = "user://test_save_check.dat"
|
||||
var password = "test"
|
||||
|
||||
var file = FileAccess.open_encrypted_with_pass(filename, FileAccess.WRITE, password)
|
||||
if file == null:
|
||||
print("Error opening file for write: ", FileAccess.get_open_error())
|
||||
quit(1)
|
||||
return
|
||||
|
||||
#print("Saving...")
|
||||
file.store_var(data)
|
||||
file.close()
|
||||
|
||||
#print("Loading...")
|
||||
file = FileAccess.open_encrypted_with_pass(filename, FileAccess.READ, password)
|
||||
if file == null:
|
||||
printerr("Error opening file for read")
|
||||
quit(1)
|
||||
return
|
||||
|
||||
var loaded_data = file.get_var()
|
||||
#print("Loaded data: ", loaded_data)
|
||||
|
||||
if str(data) == str(loaded_data):
|
||||
print("SUCCESS: Data matches.")
|
||||
else:
|
||||
printerr("FAILURE: Data mismatch.")
|
||||
print("Original: ", data)
|
||||
print("Loaded: ", loaded_data)
|
||||
|
||||
quit()
|
||||
Reference in New Issue
Block a user