home *** CD-ROM | disk | FTP | other *** search
/ Computer Shopper 275 / DPCS0111DVD.ISO / Toolkit / Audio-Visual / VirtualDub / Source / VirtualDub-1.9.10-src.7z / publish / languagetest.script < prev   
Encoding:
Text File  |  2009-09-14  |  1.5 KB  |  67 lines

  1. declare s = Sylia;
  2. declare a = s.Assert;
  3. declare tn = s.TypeName;
  4. declare ts = s.ToString;
  5. declare l = VirtualDub.Log;
  6.  
  7. // test basic value types
  8. a(tn(1) == "int");
  9. a(tn(0x80000000) == "long");
  10. a(tn(1.0) == "double");
  11.  
  12. // test basic type promotion
  13. a(tn(1+1) == "int");
  14. a(tn(1+0x80000000) == "long");
  15. a(tn(1+1.0) == "double");
  16. a(tn(0x80000000+0x80000000) == "long");
  17. a(tn(0x80000000+1.0) == "double");
  18. a(tn(1.0+1.0) == "double");
  19.  
  20. a(tn(~0) == "int");
  21. a(tn(~0x80000000) == "long");
  22. a(tn(!0) == "int");
  23. a(tn(!0x80000000) == "int");
  24. a(tn(+0) == "int");
  25. a(tn(+0x80000000) == "long");
  26. a(tn(+1.0) == "double");
  27. a(tn(-0) == "int");
  28. a(tn(-0x80000000) == "long");
  29. a(tn(-1.0) == "double");
  30.  
  31. // test basic type coercion
  32. declare to = s.TestOverloading;
  33. a(to() == 1);
  34. a(to(1) == 2);
  35. a(to(0x80000000) == 3);
  36. a(to(1.0) == 4); 
  37.  
  38. a(to(1,1) == 5);
  39. a(to(1,0x80000000) == 6);
  40. a(to(1,1.0) == 7);
  41.  
  42. a(to(0x80000000,1) == 8);
  43. a(to(0x80000000,0x80000000) == 9);
  44. a(to(0x80000000,1.0) == 10);
  45.  
  46. a(to(1.0,1) == 11);
  47. a(to(1.0,0x80000000) == 12);
  48. a(to(1.0,1.0) == 13);
  49.  
  50. a(to(1.0,1,0) == 14);
  51.  
  52. // test casting
  53. a(tn((int)1) == "int");
  54. a(tn((int)0x80000000) == "int");
  55. a(tn((int)1.0) == "int");
  56. a(tn((long)1) == "long");
  57. a(tn((long)0x80000000) == "long");
  58. a(tn((long)1.0) == "long");
  59. a(tn((double)1) == "double");
  60. a(tn((double)0x80000000) == "double");
  61. a(tn((double)1.0) == "double");
  62. a(ts((int)1.5) == "1");
  63. a(ts((int)0x80000000) == "-2147483648");
  64. a((double)0x80000000 == 2147483648.0);
  65.  
  66. l("Basic language test successful.");
  67.