<?xml version="1.0" encoding="utf-8" ?><configuration><appSettings><addkey="APP_VERSION"value="2.0.99.9"/><addkey="CLIENT_VERSION"value="0.0.1"/><addkey="APP_NAME"value="Drag Spin Exp"/><addkey="NEWS"value="^8/1/2015^Fork - This experimental version is a fork of verion 2.0.16.5 of Dragon's Spine^^"/><addkey="APP_PROTOCOL"value="Kesmai"/><addkey="ClearStores"value="False"/><addkey="RestockStores"value="True"/><addkey="ColorLog"value="True"/><addkey="RequireMakeRecallReagent"value="False"/><addkey="DisplayCombatDamage"value="True"/><addkey="UnderworldEnabled"value="False"/><addkey="NPCSkillGain"value="False"/><addkey="SQL_CONNECTION"value="User ID='db_user';Password='db_password';Initial Catalog='drag-spin-exp';Data Source='localhost\SQLEXPRESS';Connect Timeout=15"/></appSettings><runtime><gcServerenabled="True"/><disableCachingBindingFailuresenabled="1"/></runtime></configuration>
APP_VERSION, huh? Shows up in the log, in the welcome message for new connections, and various
menus. It also gets sent over in a “world information” block if the client is using the specified
APP_PROTOCOL, but we’ll set that aside for now.
Scenario: APP_VERSION reflected in the log
Given I use the "minimal" database
And I set "APP_VERSION" in the config file to "12.34.567"
When the server executable is started
And I allow time for the server to complete startup
Then the log shows the application version as "12.34.567"
Scenario: APP_VERSION reflected in the welcome message
Given I use the "minimal" database as-is
And I set "APP_VERSION" in the config file to "34.56.789"
And the server executable is started
And I allow time for the server to complete startup
When a telnet connection
Then I see a welcome message with version "34.56.789"
Scenario: APP_VERSION reflected in the main menu
Given I use the "minimal" database as-is
And I set "APP_VERSION" in the config file to "45.56.789"
And the server executable is started
And I allow time for the server to complete startup
When I log on using a standard account
Then I saw a main menu with version "45.56.789"
Scenario: APP_VERSION reflected in the account menu
Given I use the "minimal" database as-is
And I set "APP_VERSION" in the config file to "56.56.789"
And the server executable is started
And I allow time for the server to complete startup
When I log on using a standard account
And I go to the account menu from the main menu
Then I saw an account menu with version "56.56.789"
Scenario: APP_VERSION reflected in the character menu
Given I use the "minimal" database as-is
And I set "APP_VERSION" in the config file to "66.56.789"
And the server executable is started
And I allow time for the server to complete startup
When I log on using a standard account
And I go to the character menu from the main menu
Then I saw a character menu with version "66.56.789"
And the test code grows and morphs some more. The highlights: abstracted out a general
set_value_in_configfile method, added a @last_resp instance variable so we can check what was
seen in response to the last command in a subsequent test step, and found out that the Character
Menu doesn’t end with a command prompt for some reason.