• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

microsoft / botbuilder-js / 6124258740

08 Sep 2023 04:40PM CUT coverage: 84.866%. Remained the same
6124258740

Pull #4534

github

web-flow
Merge dd3872b14 into 3685e5ee5
Pull Request #4534: fix: [#4525] Replace read-text-file package to avoid using LGPL

9912 of 12925 branches covered (0.0%)

Branch coverage included in aggregate %.

3 of 3 new or added lines in 1 file covered. (100.0%)

20167 of 22518 relevant lines covered (89.56%)

7187.34 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

4.76
/libraries/botbuilder-azure-blobs/src/sanitizeBlobKey.ts
1
// Copyright (c) Microsoft Corporation.
2
// Licensed under the MIT License.
3

4
import { BlobsTranscriptStoreOptions } from './blobsTranscriptStore';
5

6
/**
7
 * Ensures that `key` is a properly sanitized Azure Blob Storage key. It should be URI encoded,
8
 * no longer than 1024 characters, and contain no more than 254 slash ("/") chars.
9
 *
10
 * @param {string} key string blob key to sanitize
11
 * @param {BlobsTranscriptStoreOptions} options Optional settings for BlobsTranscriptStore
12
 * @returns {string} sanitized blob key
13
 */
14
export function sanitizeBlobKey(key: string, options?: BlobsTranscriptStoreOptions): string {
2✔
15
    if (!key || !key.length) {
×
16
        throw new Error('Please provide a non-empty key');
×
17
    }
18

19
    const sanitized = key.split('/').reduce((acc, part, idx) => (part ? [acc, part].join(idx < 255 ? '/' : '') : acc));
×
20

21
    // Options settings to decode key in order to support previous Blob
22
    if (options?.decodeTranscriptKey) {
×
23
        return decodeURIComponent(sanitized).substr(0, 1024);
×
24
    }
25
    return encodeURIComponent(sanitized).substr(0, 1024);
×
26
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc