1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 * vim: sw=2 ts=2 et lcs=trail\:.,tab\:>~ :
3 * This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 #include "storage_test_harness.h"
12 * This file tests that the file permissions of the sqlite files match what
19 nsCOMPtr
<mozIStorageConnection
> db(getDatabase());
20 nsCOMPtr
<nsIFile
> dbFile
;
21 do_check_success(db
->GetDatabaseFile(getter_AddRefs(dbFile
)));
24 do_check_success(dbFile
->GetPermissions(&perms
));
26 // This reflexts the permissions defined by SQLITE_DEFAULT_FILE_PERMISSIONS in
27 // db/sqlite3/src/Makefile.in and must be kept in sync with that
29 do_check_true(perms
== (PR_IRUSR
| PR_IWUSR
));
31 do_check_true(perms
== (PR_IRUSR
| PR_IWUSR
| PR_IRGRP
| PR_IWGRP
| PR_IROTH
| PR_IWOTH
));
33 do_check_true(perms
== (PR_IRUSR
| PR_IWUSR
| PR_IRGRP
| PR_IROTH
));
37 void (*gTests
[])(void) = {
41 const char *file
= __FILE__
;
42 #define TEST_NAME "file perms"
43 #define TEST_FILE file
44 #include "storage_test_harness_tail.h"