tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

QuotaManagerTestHelpers.cpp (2744B)


      1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
      2 /* vim: set ts=8 sts=2 et sw=2 tw=80: */
      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 file,
      5 * You can obtain one at http://mozilla.org/MPL/2.0/. */
      6 
      7 #include "QuotaManagerTestHelpers.h"
      8 
      9 #include "mozilla/dom/quota/CommonMetadata.h"
     10 #include "nsIDUtils.h"
     11 #include "nsString.h"
     12 
     13 namespace mozilla::dom::quota::test {
     14 
     15 PrincipalMetadata GetPrincipalMetadata(const nsCString& aGroupNoSuffix,
     16                                       const nsCString& aOriginNoSuffix) {
     17  return PrincipalMetadata{""_ns, aGroupNoSuffix, aOriginNoSuffix,
     18                           aOriginNoSuffix, /* aIsPrivate */ false};
     19 }
     20 
     21 PrincipalMetadata GetPrincipalMetadata(const nsCString& aOriginSuffix,
     22                                       const nsCString& aGroupNoSuffix,
     23                                       const nsCString& aOriginNoSuffix) {
     24  nsCString group = aGroupNoSuffix + aOriginSuffix;
     25  nsCString origin = aOriginNoSuffix + aOriginSuffix;
     26 
     27  return PrincipalMetadata{aOriginSuffix, group, origin, origin,
     28                           /* aIsPrivate */ false};
     29 }
     30 
     31 PrincipalMetadata GetPrincipalMetadata(const nsCString& aOriginSuffix,
     32                                       const nsCString& aGroupNoSuffix,
     33                                       const nsCString& aOriginNoSuffix,
     34                                       bool aIsPrivate) {
     35  nsCString group = aGroupNoSuffix + aOriginSuffix;
     36  nsCString origin = aOriginNoSuffix + aOriginSuffix;
     37  nsCString storageOrigin =
     38      aIsPrivate ? NSID_TrimBracketsASCII(nsID::GenerateUUID()) : origin;
     39 
     40  return PrincipalMetadata{aOriginSuffix, group, origin, storageOrigin,
     41                           aIsPrivate};
     42 }
     43 
     44 OriginMetadata GetOriginMetadata(const nsCString& aOriginSuffix,
     45                                 const nsCString& aGroupNoSuffix,
     46                                 const nsCString& aOriginNoSuffix) {
     47  return {GetPrincipalMetadata(aOriginSuffix, aGroupNoSuffix, aOriginNoSuffix),
     48          PERSISTENCE_TYPE_DEFAULT};
     49 }
     50 
     51 FullOriginMetadata GetFullOriginMetadata(const nsCString& aOriginSuffix,
     52                                         const nsCString& aGroupNoSuffix,
     53                                         const nsCString& aOriginNoSuffix) {
     54  return {
     55      GetOriginMetadata(aOriginSuffix, aGroupNoSuffix, aOriginNoSuffix),
     56      OriginStateMetadata{/* aLastAccessTime */ 0, /* aLastMaintenanceDate */ 0,
     57                          /* aAccessed */ false,
     58                          /* aPersisted */ false},
     59      ClientUsageArray(), /* aUsage */ 0, kCurrentQuotaVersion};
     60 }
     61 
     62 }  // namespace mozilla::dom::quota::test