1.0.0 • Published 7 years ago
adventure-land-test-helpers v1.0.0
adventure-land-test-helpers
Adventure Land MMORPG test stubs and mock data for unit testing player scripts. For a linting tool, see the ESLint plugin.
Installation
$ npm install adventure-land-test-helpers --save-devUsage
All test helpers work with standard JavaScript object access syntax.
const AdventureLandTestHelpers = require('adventure-land-test-helpers');
const { mocks, stubs } = AdventureLandTestHelpers;
let monster = mocks.data.MockMonster;
stubs.classic.is_monster(monster); // The "classic" stub will always return true.Alternately, stubs may be injected into the global scope to mimic the game environment.
const AdventureLandTestHelpers = require('adventure-land-test-helpers');
const { injectIntoScope, stubs } = AdventureLandTestHelpers;
injectIntoScope(stubs.random, this);
is_monster(); // The "random" stub will return true or false.API
Inject into Scope
- Path:
AdventureLandTestHelpers.injectIntoScope - Description: Inject functions into the desired scope, useful for creating global stubs.
// Inject stubs into the global scope...
const AdventureLandTestHelpers = require('adventure-land-test-helpers');
const { injectIntoScope, stubs } = AdventureLandTestHelpers;
injectIntoScope(stubs.random, this);
// ...then call one of the Adventure Land game functions.
is_monster();Mock Data
- Path:
AdventureLandTestHelpers.mocks.data - Description: Mock game data that can be useful when testing scripts.
| Type | Path |
|---|---|
| Character | mocks.data.MockCharacter |
| Circle | mocks.data.MockCircle |
| ItemStats | mocks.data.MockItemStats |
| Line | mocks.data.MockLine |
| Map | mocks.data.MockMap |
| Monster | mocks.data.MockMonster |
| Player | mocks.data.MockPlayer |
| Socket | mocks.data.MockSocket |
Classic Stubs
- Path:
AdventureLandTestHelpers.stubs.classic - Description: Stubbed game runner functions that return the same value every time when called.
| Return Type | Return Value |
|---|---|
| * | true |
| Character, Monster, Player | MockCharacter |
| { string: string } | { abc: 'xyz' } |
| Boolean | true |
| Character | MockCharacter |
| Circle | MockCircle |
| ItemStats | MockItemStats |
| Line | MockLine |
| Map | MockMap |
| Monster | MockMonster |
| Number | 42 |
| Player | MockPlayer |
| Socket | MockSocket |
| undefined | undefined |
Random Stubs
- Path:
AdventureLandTestHelpers.stubs.classic - Description: Stubbed game runner functions that return a random possible value when called.
| Return Type | Return Value |
|---|---|
| * | * |
| Character, Monster, Player | MockCharacter, MockMonster, MockPlayer, null, undefined |
| { string: string } | { abc: 'xyz' }, null, undefined |
| Boolean | true, false |
| Character | MockCharacter, null, undefined |
| Circle | MockCircle, null, undefined |
| ItemStats | MockItemStats, null, undefined |
| Line | MockLine, null, undefined |
| Map | MockMap, null, undefined |
| Monster | MockMonster, null, undefined |
| Number | 1, 1000 |
| Player | MockPlayer, null, undefined |
| Socket | MockSocket, null, undefined |
| undefined | undefined |
Stubbed Functions
- Path:
AdventureLandTestHelpers.stubs.classic,AdventureLandTestHelpers.stubs.random - Description: Stubbed game runner functions.
| Function Name | Return Type | ||
|---|---|---|---|
| accept_party_invite | undefined | ||
| accept_party_request | undefined | ||
| activate | undefined | ||
| add_bottom_button | undefined | ||
| add_top_button | undefined | ||
| attack | undefined | ||
| auto_reload | undefined | ||
| bank_deposit | undefined | ||
| bank_store | undefined | ||
| bank_withdraw | undefined | ||
| bfs | undefined | ||
| buy_with_gold | undefined | ||
| buy_with_shells | undefined | ||
| buy | undefined | ||
| can_attack | Boolean | ||
| can_heal | Boolean | ||
| can_move_to | Boolean | ||
| can_use | Boolean | ||
| change_server | undefined | ||
| change_target | undefined | ||
| clear_buttons | undefined | ||
| clear_drawings | undefined | ||
| code_draw | undefined | ||
| command_character | undefined | ||
| compound | undefined | ||
| continue_pathfinding | undefined | ||
| craft | undefined | ||
| cruise | undefined | ||
| destroy_item | undefined | ||
| draw_circle | Circle | ||
| draw_line | Line | ||
| equip | undefined | ||
| eval_s | undefined | ||
| exchange | undefined | ||
| game_log | undefined | ||
| get_active_characters | { string, string } | ||
| get_map | Map | ||
| get_nearest_hostile | Character | ||
| get_nearest_monster | Monster | ||
| get_player | Player | ||
| get_socket | Socket | ||
| get_target_of | Character | Monster | Player |
| get_target | Character | Monster | Player |
| get_targeted_monster | Monster | ||
| handle_command | undefined | ||
| handle_death | undefined | ||
| heal | undefined | ||
| in_attack_range | Boolean | ||
| is_character | Boolean | ||
| is_monster | Boolean | ||
| is_moving | Boolean | ||
| is_npc | Boolean | ||
| is_paused | Boolean | ||
| is_player | Boolean | ||
| is_pvp | Boolean | ||
| is_transporting | Boolean | ||
| item_grade | Number | ||
| item_properties | ItemStats | ||
| item_value | Number | ||
| load_code | undefined | ||
| loot | undefined | ||
| map_key | undefined | ||
| move | undefined | ||
| on_cm | undefined | ||
| on_combined_damage | undefined | ||
| on_destroy | undefined | ||
| on_disappear | undefined | ||
| on_draw | undefined | ||
| on_game_event | undefined | ||
| on_party_invite | undefined | ||
| on_party_request | undefined | ||
| pause | undefined | ||
| performance_trick | undefined | ||
| pget | * | ||
| plot | undefined | ||
| pm | undefined | ||
| preview_item | undefined | ||
| proxy | undefined | ||
| pset | undefined | ||
| qpush | Number | ||
| quantity | Number | ||
| reset_mappings | undefined | ||
| respawn | undefined | ||
| say | undefined | ||
| sell | undefined | ||
| send_cm | undefined | ||
| send_gold | undefined | ||
| send_item | undefined | ||
| send_party_invite | undefined | ||
| send_party_request | undefined | ||
| set_button_color | undefined | ||
| set_button_onclick | undefined | ||
| set_button_value | undefined | ||
| set_keymap | undefined | ||
| set_message | undefined | ||
| set_skillbar | undefined | ||
| shift | undefined | ||
| show_json | undefined | ||
| smart_move_logic | undefined | ||
| smart_move | undefined | ||
| smooth_path | undefined | ||
| start_character | undefined | ||
| start_pathfinding | undefined | ||
| stop_character | undefined | ||
| stop | undefined | ||
| swap | undefined | ||
| trade_buy | undefined | ||
| trade | undefined | ||
| transport | undefined | ||
| trigger_event | undefined | ||
| unequip | undefined | ||
| unfriend | undefined | ||
| unmap_key | undefined | ||
| upgrade | undefined | ||
| use_hp_or_mp | undefined | ||
| use_skill | undefined | ||
| use | undefined | ||
| xmove | undefined |
Sources
- Official Adventure Land MMORPG source code by Kaan Soral.
- Unofficial Adventure Land MMORPG code documentation by NexusNull.
1.0.0
7 years ago