| using System; |
| using default_argsNamespace; |
| |
| public class runme |
| { |
| static void Main() |
| { |
| if (default_args.anonymous() != 7771) |
| throw new Exception("anonymous (1) failed"); |
| if (default_args.anonymous(1234) != 1234) |
| throw new Exception("anonymous (2) failed"); |
| |
| if (default_args.booltest() != true) |
| throw new Exception("booltest (1) failed"); |
| if (default_args.booltest(true) != true) |
| throw new Exception("booltest (2) failed"); |
| if (default_args.booltest(false) != false) |
| throw new Exception("booltest (3) failed"); |
| |
| EnumClass ec = new EnumClass(); |
| if (ec.blah() != true) |
| throw new Exception("EnumClass failed"); |
| |
| if (default_args.casts1() != null) |
| throw new Exception("casts1 failed"); |
| |
| if (default_args.casts2() != "Hello") |
| throw new Exception("casts2 failed"); |
| |
| if (default_args.casts1("Ciao") != "Ciao") |
| throw new Exception("casts1 not default failed"); |
| |
| if (default_args.chartest1() != 'x') |
| throw new Exception("chartest1 failed"); |
| |
| if (default_args.chartest2() != '\0') |
| throw new Exception("chartest2 failed"); |
| |
| if (default_args.chartest1('y') != 'y') |
| throw new Exception("chartest1 not default failed"); |
| |
| if (default_args.chartest1('y') != 'y') |
| throw new Exception("chartest1 not default failed"); |
| |
| if (default_args.reftest1() != 42) |
| throw new Exception("reftest1 failed"); |
| |
| if (default_args.reftest1(400) != 400) |
| throw new Exception("reftest1 not default failed"); |
| |
| if (default_args.reftest2() != "hello") |
| throw new Exception("reftest2 failed"); |
| |
| // rename |
| Foo foo = new Foo(); |
| foo.newname(); |
| foo.newname(10); |
| foo.renamed3arg(10, 10.0); |
| foo.renamed2arg(10); |
| foo.renamed1arg(); |
| |
| // exception specifications |
| try { |
| default_args.exceptionspec(); |
| throw new Exception("exceptionspec 1 failed"); |
| } catch (Exception) { |
| } |
| try { |
| default_args.exceptionspec(-1); |
| throw new Exception("exceptionspec 2 failed"); |
| } catch (Exception) { |
| } |
| try { |
| default_args.exceptionspec(100); |
| throw new Exception("exceptionspec 3 failed"); |
| } catch (Exception) { |
| } |
| Except ex = new Except(false); |
| try { |
| ex.exspec(); |
| throw new Exception("exspec 1 failed"); |
| } catch (Exception) { |
| } |
| try { |
| ex.exspec(-1); |
| throw new Exception("exspec 2 failed"); |
| } catch (Exception) { |
| } |
| try { |
| ex.exspec(100); |
| throw new Exception("exspec 3 failed"); |
| } catch (Exception) { |
| } |
| try { |
| ex = new Except(true); |
| throw new Exception("Except constructor 1 failed"); |
| } catch (Exception) { |
| } |
| try { |
| ex = new Except(true, -2); |
| throw new Exception("Except constructor 2 failed"); |
| } catch (Exception) { |
| } |
| |
| // Default parameters in static class methods |
| if (Statics.staticmethod() != 10+20+30) |
| throw new Exception("staticmethod 1 failed"); |
| if (Statics.staticmethod(100) != 100+20+30) |
| throw new Exception("staticmethod 2 failed"); |
| if (Statics.staticmethod(100,200,300) != 100+200+300) |
| throw new Exception("staticmethod 3 failed"); |
| |
| |
| Tricky tricky = new Tricky(); |
| if (tricky.privatedefault() != 200) |
| throw new Exception("privatedefault failed"); |
| if (tricky.protectedint() != 2000) |
| throw new Exception("protectedint failed"); |
| if (tricky.protecteddouble() != 987.654) |
| throw new Exception("protecteddouble failed"); |
| if (tricky.functiondefault() != 500) |
| throw new Exception("functiondefault failed"); |
| if (tricky.contrived() != 'X') |
| throw new Exception("contrived failed"); |
| |
| if (default_args.constructorcall().val != -1) |
| throw new Exception("constructorcall test 1 failed"); |
| |
| if (default_args.constructorcall(new Klass(2222)).val != 2222) |
| throw new Exception("constructorcall test 2 failed"); |
| |
| if (default_args.constructorcall(new Klass()).val != -1) |
| throw new Exception("constructorcall test 3 failed"); |
| |
| // const methods |
| ConstMethods cm = new ConstMethods(); |
| if (cm.coo() != 20) |
| throw new Exception("coo test 1 failed"); |
| if (cm.coo(1.0) != 20) |
| throw new Exception("coo test 2 failed"); |
| } |
| } |
| |