| OLD | NEW | 
|    1 <!DOCTYPE html> |    1 <!DOCTYPE html> | 
|    2 <script src="../resources/testharness.js"></script> |    2 <script src="../resources/testharness.js"></script> | 
|    3 <script src="../resources/testharnessreport.js"></script> |    3 <script src="../resources/testharnessreport.js"></script> | 
|    4 <script src="../resources/mojo-helpers.js"></script> |    4 <script src="../resources/mojo-helpers.js"></script> | 
|    5 <script> |    5 <script> | 
|    6 'use strict'; |    6 'use strict'; | 
|    7  |    7  | 
|    8 function CalculatorImpl() { |    8 function CalculatorImpl() { | 
|    9   this.total = 0; |    9   this.total = 0; | 
|   10 } |   10 } | 
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   75     calcBinding.setConnectionErrorHandler(() => { resolve(); }); |   75     calcBinding.setConnectionErrorHandler(() => { resolve(); }); | 
|   76     calc.ptr.reset(); |   76     calc.ptr.reset(); | 
|   77   }); |   77   }); | 
|   78 }, 'connection error'); |   78 }, 'connection error'); | 
|   79  |   79  | 
|   80 binding_test(async (bindings, math) => { |   80 binding_test(async (bindings, math) => { | 
|   81   var calc = new math.CalculatorPtr(); |   81   var calc = new math.CalculatorPtr(); | 
|   82   var calcBinding = new bindings.Binding(math.Calculator, |   82   var calcBinding = new bindings.Binding(math.Calculator, | 
|   83                                          new CalculatorImpl(), |   83                                          new CalculatorImpl(), | 
|   84                                          bindings.makeRequest(calc)); |   84                                          bindings.makeRequest(calc)); | 
 |   85  | 
 |   86   await new Promise((resolve, reject) => { | 
 |   87     calcBinding.setConnectionErrorHandler(({custom_reason, description}) => { | 
 |   88       assert_equals(custom_reason, 32); | 
 |   89       assert_equals(description, 'goodbye'); | 
 |   90       resolve(); | 
 |   91     }); | 
 |   92     calc.ptr.resetWithReason({custom_reason: 32, description: 'goodbye'}); | 
 |   93   }); | 
 |   94 }, 'connection error with reason'); | 
 |   95  | 
 |   96 binding_test(async (bindings, math) => { | 
 |   97   var calc = new math.CalculatorPtr(); | 
 |   98   var calcBinding = new bindings.Binding(math.Calculator, | 
 |   99                                          new CalculatorImpl(), | 
 |  100                                          bindings.makeRequest(calc)); | 
|   85   assert_equals((await calc.add(2)).value, 2); |  101   assert_equals((await calc.add(2)).value, 2); | 
|   86  |  102  | 
|   87   var interfaceRequest = calcBinding.unbind(); |  103   var interfaceRequest = calcBinding.unbind(); | 
|   88   assert_false(calcBinding.isBound()); |  104   assert_false(calcBinding.isBound()); | 
|   89  |  105  | 
|   90   var newCalcBinding = new bindings.Binding(math.Calculator, |  106   var newCalcBinding = new bindings.Binding(math.Calculator, | 
|   91                                             new CalculatorImpl(), |  107                                             new CalculatorImpl(), | 
|   92                                             interfaceRequest); |  108                                             interfaceRequest); | 
|   93   assert_equals((await calc.add(2)).value, 2); |  109   assert_equals((await calc.add(2)).value, 2); | 
|   94 }, 'unbind'); |  110 }, 'unbind'); | 
| (...skipping 18 matching lines...) Expand all  Loading... | 
|  113     calc1.ptr.reset(); |  129     calc1.ptr.reset(); | 
|  114   }); |  130   }); | 
|  115  |  131  | 
|  116   assert_equals((await calc2.add(5)).value, 12); |  132   assert_equals((await calc2.add(5)).value, 12); | 
|  117  |  133  | 
|  118   bindingSet.closeAllBindings(); |  134   bindingSet.closeAllBindings(); | 
|  119   assert_true(bindingSet.isEmpty()); |  135   assert_true(bindingSet.isEmpty()); | 
|  120 }, 'binding set'); |  136 }, 'binding set'); | 
|  121  |  137  | 
|  122 </script> |  138 </script> | 
| OLD | NEW |