From 502c1025d73a6ed7b7b824c859a66d91ef82efab Mon Sep 17 00:00:00 2001 From: Sankha Narayan Guria Date: Sat, 19 Jan 2013 18:49:42 -0500 Subject: [PATCH] Bug 823872 - Add test for OS.Constants.{libc, Win}. r=Yoric --- dom/system/tests/test_constants.xul | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/dom/system/tests/test_constants.xul b/dom/system/tests/test_constants.xul index 42457552f58c..b8696ae5e162 100644 --- a/dom/system/tests/test_constants.xul +++ b/dom/system/tests/test_constants.xul @@ -32,6 +32,33 @@ function test_xul() { ok(true, "test_xul: opened libxul successfully"); } +// Test that OS.Constants.libc is defined +function test_libc() { + isnot(null, OS.Constants.libc, "OS.Constants.libc is defined"); + is(0001, OS.Constants.libc.S_IXOTH, "OS.Constants.libc.S_IXOTH is defined"); + is(0002, OS.Constants.libc.S_IWOTH, "OS.Constants.libc.S_IWOTH is defined"); + is(0007, OS.Constants.libc.S_IRWXO, "OS.Constants.libc.S_IRWXO is defined"); + is(0010, OS.Constants.libc.S_IXGRP, "OS.Constants.libc.S_IXGRP is defined"); + is(0020, OS.Constants.libc.S_IWGRP, "OS.Constants.libc.S_IWGRP is defined"); + is(0040, OS.Constants.libc.S_IRGRP, "OS.Constants.libc.S_IRGRP is defined"); + is(0070, OS.Constants.libc.S_IRWXG, "OS.Constants.libc.S_IRWXG is defined"); + is(0100, OS.Constants.libc.S_IXUSR, "OS.Constants.libc.S_IXUSR is defined"); + is(0200, OS.Constants.libc.S_IWUSR, "OS.Constants.libc.S_IWUSR is defined"); + is(0400, OS.Constants.libc.S_IRUSR, "OS.Constants.libc.S_IRUSR is defined"); + is(0700, OS.Constants.libc.S_IRWXU, "OS.Constants.libc.S_IRWXU is defined"); +} + +// Test that OS.Constants.Win is defined +function test_Win() { + var xulRuntime = Components.classes["@mozilla.org/xre/app-info;1"] + .getService(Components.interfaces.nsIXULRuntime); + if(xulRuntime.OS == "Windows") { + ok("Win" in OS.Constants, "OS.Constants.Win is defined"); + is(OS.Constants.Win.INVALID_HANDLE_VALUE, -1, + "OS.Constants.Win.INVALID_HANDLE_VALUE is defined and correct"); + } +} + function test() { ok(true, "test_constants.xul: Starting test"); @@ -41,6 +68,8 @@ function test() { init(); Components.utils.import("resource://gre/modules/ctypes.jsm"); test_xul(); + test_libc(); + test_Win(); // Test 2: Load libxul from chrome thread worker = new ChromeWorker("worker_constants.js");