SkillTest.pm.svn-base
上传用户:market2
上传日期:2018-11-18
资源大小:18786k
文件大小:3k
源码类别:

外挂编程

开发平台:

Windows_Unix

  1. # Unit test for Skill
  2. package SkillTest;
  3. use Test::More;
  4. use Skill;
  5. sub start {
  6. print "### Starting SkillTestn";
  7. Skill::StaticInfo::parseSkillsDatabase("skills.txt");
  8. Skill::StaticInfo::parseSPDatabase("skillssp.txt");
  9. testStaticInfo();
  10. testStaticSPInfo();
  11. testDynamicInfo();
  12. testUnknownSkills();
  13. }
  14. sub testStaticInfo {
  15. print "Testing static information conversion...n";
  16. my $skill = new Skill(name => "Blessing");
  17. is($skill->getName(), "Blessing");
  18. is($skill->getIDN(), 34);
  19. is($skill->getHandle(), "AL_BLESSING");
  20. $skill = new Skill(name => "blessing");
  21. is($skill->getName(), "Blessing");
  22. is($skill->getIDN(), 34);
  23. is($skill->getHandle(), "AL_BLESSING");
  24. $skill = new Skill(idn => 5);
  25. is($skill->getName(), "Bash");
  26. is($skill->getIDN(), 5);
  27. is($skill->getHandle(), "SM_BASH");
  28. $skill = new Skill(handle => "NV_BASIC");
  29. is($skill->getName(), "Basic Skill");
  30. is($skill->getIDN(), 1);
  31. is($skill->getHandle(), "NV_BASIC");
  32. }
  33. sub testStaticSPInfo {
  34. print "Testing static SP usage information...n";
  35. my $skill = new Skill(name => "Blessing");
  36. is($skill->getSP(1), 28);
  37. is($skill->getSP(5), 44);
  38. is($skill->getSP(10), 64);
  39. my $skill = new Skill(handle => "SM_BASH");
  40. is($skill->getSP(1), 8);
  41. is($skill->getSP(5), 8);
  42. is($skill->getSP(10), 15);
  43. }
  44. sub testDynamicInfo {
  45. print "Testing dynamic information conversion...n";
  46. Skill::DynamicInfo::clear();
  47. Skill::DynamicInfo::add(42, "MC_MAMMONITE", 3, 5, 1, Skill::TARGET_ENEMY);
  48. Skill::DynamicInfo::add(456, "ABC_COMBO_BREAKER", 4, 15, 20, Skill::TARGET_ENEMY);
  49. my $skill = new Skill(idn => 42);
  50. is($skill->getName(), "Mammonite");
  51. is($skill->getIDN(), 42);
  52. is($skill->getHandle(), "MC_MAMMONITE");
  53. is($skill->getSP(1), undef);
  54. is($skill->getSP(3), 5);
  55. is($skill->getRange(), 1);
  56. $skill = new Skill(handle => "ABC_COMBO_BREAKER");
  57. is($skill->getName(), "Combo Breaker");
  58. is($skill->getIDN(), 456);
  59. is($skill->getHandle(), "ABC_COMBO_BREAKER");
  60. is($skill->getSP(1), undef);
  61. is($skill->getSP(4), 15);
  62. is($skill->getRange(), 20);
  63. $skill = new Skill(name => "Mammonite");
  64. is($skill->getName(), "Mammonite");
  65. is($skill->getIDN(), 42);
  66. is($skill->getHandle(), "MC_MAMMONITE");
  67. is($skill->getRange(), 1);
  68. }
  69. sub testUnknownSkills {
  70. print "Testing unknown skills...n";
  71. my $skill = new Skill(handle => "UNKNOWN");
  72. is($skill->getName(), "Unknown");
  73. is($skill->getIDN(), undef);
  74. is($skill->getHandle(), undef);
  75. is($skill->getSP(1), undef);
  76. $skill = new Skill(idn => 1234);
  77. is($skill->getName(), "Unknown 1234");
  78. is($skill->getIDN(), 1234);
  79. is($skill->getHandle(), undef);
  80. is($skill->getSP(1), undef);
  81. }
  82. 1;