run.js 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /*
  2. * Copyright 2011 Jacek Caban for CodeWeavers
  3. *
  4. * This library is free software; you can redistribute it and/or
  5. * modify it under the terms of the GNU Lesser General Public
  6. * License as published by the Free Software Foundation; either
  7. * version 2.1 of the License, or (at your option) any later version.
  8. *
  9. * This library is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  12. * Lesser General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU Lesser General Public
  15. * License along with this library; if not, write to the Free Software
  16. * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  17. */
  18. var winetest = new ActiveXObject("Wine.Test");
  19. function ok(expr, msg) {
  20. winetest.ok(expr, msg);
  21. }
  22. ok(typeof(WScript) === "object", "typeof(WScript) = " + typeof(WScript));
  23. ok(typeof(WSH) === "object", "typeof(WSH) = " + typeof(WSH));
  24. ok(WScript === WSH, "WScript !== WSH");
  25. ok(WScript.Name === "Windows Script Host", "WScript.Name = " + WScript.Name);
  26. ok(typeof(WScript.Version) === "string", "typeof(WScript.Version) = " + typeof(WScript.Version));
  27. ok(typeof(WScript.BuildVersion) === "number", "typeof(WScript.BuildVersion) = " + typeof(WScript.BuildVersion));
  28. ok(WScript.FullName.toUpperCase() === winetest.wscriptFullName.toUpperCase(), "WScript.FullName = " + WScript.FullName);
  29. ok(WScript.Path.toUpperCase() === winetest.wscriptPath.toUpperCase(), "WScript.Path = " + WScript.Path);
  30. ok(WScript.ScriptName === winetest.wscriptScriptName, "WScript.ScriptName = " + WScript.ScriptName);
  31. ok(WScript.ScriptFullName === winetest.wscriptScriptFullName, "WScript.ScriptFullName = " + WScript.ScriptFullName);
  32. ok(typeof(WScript.Arguments) === "object", "typeof(WScript.Arguments) = " + typeof(WScript.Arguments));
  33. ok(WScript.Arguments.Item(0) === "arg1", "WScript.Arguments.Item(0) = " + WScript.Arguments.Item(0));
  34. ok(WScript.Arguments.Item(1) === "2", "WScript.Arguments.Item(1) = " + WScript.Arguments.Item(1));
  35. ok(WScript.Arguments.Item(2) === "ar3", "WScript.Arguments.Item(2) = " + WScript.Arguments.Item(2));
  36. try {
  37. WScript.Arguments.Item(3);
  38. ok(false, "expected exception");
  39. }catch(e) {}
  40. ok(WScript.Arguments.Count() === 3, "WScript.Arguments.Count() = " + WScript.Arguments.Count());
  41. ok(WScript.Arguments.length === 3, "WScript.Arguments.length = " + WScript.Arguments.length);
  42. ok(WScript.Interactive === true, "WScript.Interactive = " + WScript.Interactive);
  43. WScript.Interactive = false;
  44. ok(WScript.Interactive === false, "WScript.Interactive = " + WScript.Interactive);
  45. WScript.Interactive = true;
  46. ok(WScript.Interactive === true, "WScript.Interactive = " + WScript.Interactive);
  47. ok(WScript.Application === WScript, "WScript.Application = " + WScript.Application);
  48. var obj = WScript.CreateObject("Wine.Test");
  49. obj.ok(true, "Broken WScript.CreateObject object?");
  50. try {
  51. obj = WScript.CreateObject("nonexistent");
  52. ok(false, "Expected exception for CreateObject('nonexistent')");
  53. }catch(e) {}
  54. winetest.reportSuccess();