Files
hakorune/local_tests/test_instance_v2_comprehensive.nyash
Moe Charm 5582ad45c0 feat: Phase 9.78e complete - instance_v2 migration with legacy compatibility
- instance_v2 now includes legacy compatibility layer
- All interpreter code migrated to use instance_v2
- Added legacy field access methods (get_fields, set_field_legacy, etc.)
- Fixed type conversion issues (NyashValue vs SharedNyashBox)
- instance.rs still exists but no longer used in interpreter
- TODO: Remove instance.rs completely in next phase
- TODO: Implement proper SharedNyashBox -> NyashValue conversion

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-19 22:35:34 +09:00

80 lines
1.8 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// 🧪 InstanceBox v2包括テスト文字列演算なし
// 複雑なネストしたBox階層のテスト
box DatabaseConnection {
init { host, port, status }
connect(hostname, portnum) {
me.host = hostname
me.port = portnum
me.status = 1
return me.status
}
isConnected() {
return me.status
}
}
box UserService {
init { db_connection, user_cache }
initialize() {
me.db_connection = new DatabaseConnection()
me.user_cache = new MapBox()
local result = me.db_connection.connect("localhost", 5432)
return result
}
getConnectionStatus() {
return me.db_connection.isConnected()
}
addUser(userId, userData) {
me.user_cache.set(userId, userData)
return me.user_cache.size()
}
}
box Application {
init { user_service, logger }
startup() {
me.user_service = new UserService()
me.logger = new ConsoleBox()
local init_result = me.user_service.initialize()
return init_result
}
testComplexOperations() {
// 複雑なネストしたメソッド呼び出し
local status = me.user_service.getConnectionStatus()
// MapBoxとの連携
local cache_size = me.user_service.addUser("user1", "data1")
// ログ出力
me.logger.log("Application test completed")
return cache_size
}
}
// メインテスト
static box Main {
init { app, test_result }
main() {
me.app = new Application()
// 段階的初期化テスト
local startup_result = me.app.startup()
// 複雑な操作テスト
me.test_result = me.app.testComplexOperations()
return me.test_result
}
}