| <!doctype html> |
| <html> |
| <head> |
| <title>Budget API: Make basic getBudget call.</title> |
| <script src="../resources/testharness.js"></script> |
| <script src="../resources/testharnessreport.js"></script> |
| <script src="/gen/layout_test_data/mojo/public/js/mojo_bindings.js"></script> |
| <script src="/gen/third_party/WebKit/public/platform/modules/budget_service/budget_service.mojom.js"></script> |
| <script src="budget-service-mock.js"></script> |
| </head> |
| <body> |
| <script> |
| promise_test(async function() { |
| assert_own_property(Navigator.prototype, 'budget'); |
| budgetServiceMock.addBudget(TEST_BUDGET_TIME, TEST_BUDGET_AT); |
| |
| let budget = await navigator.budget.getBudget(); |
| assert_equals(budget.length, 1); |
| assert_equals(budget[0].budgetAt, TEST_BUDGET_AT); |
| assert_equals(budget[0].time, TEST_BUDGET_TIME); |
| }, 'BudgetService.GetBudget should return correct results.'); |
| |
| promise_test(async function() { |
| assert_own_property(Navigator.prototype, 'budget'); |
| budgetServiceMock.setError("database-error"); |
| |
| try { |
| let budget = await navigator.budget.getBudget(); |
| assert_unreached('getBudget should have failed.'); |
| } catch (error) { |
| assert_equals(error.name, 'DataError'); |
| assert_equals(error.message, "Error reading the budget database."); |
| }; |
| }, 'BudgetService.GetBudget should return database error.'); |
| </script> |
| </body> |
| </html> |