public void RecordingSessionSanitizeTextBody(string jsonPath, string body, string expected)
        {
            var sanitizer = new RecordedTestSanitizer();

            sanitizer.JsonPathSanitizers.Add(jsonPath);

            string response = sanitizer.SanitizeTextBody(default, body);
 public EventGridLiveTestBase(bool isAsync) : base(isAsync /*, RecordedTestMode.Record*/)
 {
     Sanitizer = new RecordedTestSanitizer();
     Sanitizer.SanitizedHeaders.Add(Constants.SasKeyName);
     Sanitizer.SanitizedHeaders.Add(Constants.SasTokenName);
     Sanitizer.JsonPathSanitizers.Add("$..traceparent");
 }
Exemplo n.º 3
0
        public void AddSanitizerToRecording(string recordingId, RecordedTestSanitizer sanitizer)
        {
            if (PlaybackSessions.TryGetValue(recordingId, out var playbackSession))
            {
                lock (playbackSession)
                {
                    playbackSession.AdditionalSanitizers.Add(sanitizer);
                }
            }

            if (RecordingSessions.TryGetValue(recordingId, out var recordingSession))
            {
                lock (recordingSession)
                {
                    recordingSession.AdditionalSanitizers.Add(sanitizer);
                }
            }

            if (InMemorySessions.TryGetValue(recordingId, out var inMemSession))
            {
                lock (inMemSession)
                {
                    inMemSession.AdditionalSanitizers.Add(sanitizer);
                }
            }

            if (inMemSession == null && recordingSession == null && playbackSession == null)
            {
                throw new HttpException(HttpStatusCode.BadRequest, $"{recordingId} is not an active session for either record or playback. Check the value being passed and try again.");
            }
        }
Exemplo n.º 4
0
        public async Task AddSanitizer()
        {
            await DebugLogger.LogRequestDetailsAsync(_logger, Request);

            var sName       = RecordingHandler.GetHeader(Request, "x-abstraction-identifier");
            var recordingId = RecordingHandler.GetHeader(Request, "x-recording-id", allowNulls: true);

            RecordedTestSanitizer s = (RecordedTestSanitizer)GetSanitizer(sName, await HttpRequestInteractions.GetBody(Request));

            if (recordingId != null)
            {
                _recordingHandler.AddSanitizerToRecording(recordingId, s);
            }
            else
            {
                _recordingHandler.Sanitizers.Add(s);
            }
        }
        /// <summary>
        /// Creates a new StorageRecordMatcher to determine whether recordings
        /// have been meaningfully updated.
        /// </summary>
        /// <param name="sanitizer">The test record sanitizer.</param>
        public StorageRecordMatcher(RecordedTestSanitizer sanitizer)
            : base(sanitizer)
        {
            // Storage specific request headers to ignore
            VolatileHeaders.Add("x-ms-source-if-match");
            VolatileHeaders.Add("x-ms-source-if-none-match");
            VolatileHeaders.Add("x-ms-source-if-modified-since");
            VolatileHeaders.Add("x-ms-source-if-unmodified-since");
            VolatileHeaders.Add("x-ms-copy-source");

            // Storage specific response headers to ignore
            VolatileResponseHeaders.Add("Server");
            VolatileResponseHeaders.Add("x-ms-snapshot");
            VolatileResponseHeaders.Add("x-ms-copy-id");
            VolatileResponseHeaders.Add("x-ms-creation-time");
            VolatileResponseHeaders.Add("x-ms-copy-completion-time");
            VolatileResponseHeaders.Add("x-ms-copy-destination-snapshot");
            VolatileResponseHeaders.Add("x-ms-copy-source");
            VolatileResponseHeaders.Add("Set-Cookie");
            VolatileResponseHeaders.Add("Referrer-Policy");
        }
 public ConfigurationRecordMatcher(RecordedTestSanitizer sanitizer) : base(sanitizer)
 {
     VolatileResponseHeaders.Add("Sync-Token");
 }
Exemplo n.º 7
0
 public TablesRecordMatcher(RecordedTestSanitizer sanitizer) : base(sanitizer)
 {
     ExcludeHeaders.Add("Content-Type");
 }