From 17cfe3aef9d38f1aa9dc642a3e1c209253be44c7 Mon Sep 17 00:00:00 2001 From: n9 Date: Tue, 8 Feb 2022 21:00:09 +0100 Subject: [PATCH] change: AsyncQueue.ToArray() made public + some tests (#986) --- src/Microsoft.VisualStudio.Threading/AsyncQueue`1.cs | 2 +- .../net472/PublicAPI.Unshipped.txt | 1 + .../netcoreapp3.1/PublicAPI.Unshipped.txt | 1 + .../netstandard2.0/PublicAPI.Unshipped.txt | 1 + test/Microsoft.VisualStudio.Threading.Tests/AsyncQueueTests.cs | 3 +++ 5 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Microsoft.VisualStudio.Threading/AsyncQueue`1.cs b/src/Microsoft.VisualStudio.Threading/AsyncQueue`1.cs index fea615b3f..53dd5914b 100644 --- a/src/Microsoft.VisualStudio.Threading/AsyncQueue`1.cs +++ b/src/Microsoft.VisualStudio.Threading/AsyncQueue`1.cs @@ -324,7 +324,7 @@ public bool TryDequeue([MaybeNullWhen(false)] out T value) /// /// Returns a copy of this queue as an array. /// - internal T[] ToArray() + public T[] ToArray() { lock (this.SyncRoot) { diff --git a/src/Microsoft.VisualStudio.Threading/net472/PublicAPI.Unshipped.txt b/src/Microsoft.VisualStudio.Threading/net472/PublicAPI.Unshipped.txt index e85d3c718..ffcf5d4cb 100644 --- a/src/Microsoft.VisualStudio.Threading/net472/PublicAPI.Unshipped.txt +++ b/src/Microsoft.VisualStudio.Threading/net472/PublicAPI.Unshipped.txt @@ -1,3 +1,4 @@ +Microsoft.VisualStudio.Threading.AsyncQueue.ToArray() -> T[]! Microsoft.VisualStudio.Threading.AsyncReaderWriterLock.AsyncReaderWriterLock(Microsoft.VisualStudio.Threading.JoinableTaskContext? joinableTaskContext, bool captureDiagnostics = false) -> void Microsoft.VisualStudio.Threading.AsyncReaderWriterResourceLock.AsyncReaderWriterResourceLock(Microsoft.VisualStudio.Threading.JoinableTaskContext? joinableTaskContext, bool captureDiagnostics) -> void Microsoft.VisualStudio.Threading.JoinableTaskContext.IsMainThreadMaybeBlocked() -> bool diff --git a/src/Microsoft.VisualStudio.Threading/netcoreapp3.1/PublicAPI.Unshipped.txt b/src/Microsoft.VisualStudio.Threading/netcoreapp3.1/PublicAPI.Unshipped.txt index e85d3c718..ffcf5d4cb 100644 --- a/src/Microsoft.VisualStudio.Threading/netcoreapp3.1/PublicAPI.Unshipped.txt +++ b/src/Microsoft.VisualStudio.Threading/netcoreapp3.1/PublicAPI.Unshipped.txt @@ -1,3 +1,4 @@ +Microsoft.VisualStudio.Threading.AsyncQueue.ToArray() -> T[]! Microsoft.VisualStudio.Threading.AsyncReaderWriterLock.AsyncReaderWriterLock(Microsoft.VisualStudio.Threading.JoinableTaskContext? joinableTaskContext, bool captureDiagnostics = false) -> void Microsoft.VisualStudio.Threading.AsyncReaderWriterResourceLock.AsyncReaderWriterResourceLock(Microsoft.VisualStudio.Threading.JoinableTaskContext? joinableTaskContext, bool captureDiagnostics) -> void Microsoft.VisualStudio.Threading.JoinableTaskContext.IsMainThreadMaybeBlocked() -> bool diff --git a/src/Microsoft.VisualStudio.Threading/netstandard2.0/PublicAPI.Unshipped.txt b/src/Microsoft.VisualStudio.Threading/netstandard2.0/PublicAPI.Unshipped.txt index e85d3c718..ffcf5d4cb 100644 --- a/src/Microsoft.VisualStudio.Threading/netstandard2.0/PublicAPI.Unshipped.txt +++ b/src/Microsoft.VisualStudio.Threading/netstandard2.0/PublicAPI.Unshipped.txt @@ -1,3 +1,4 @@ +Microsoft.VisualStudio.Threading.AsyncQueue.ToArray() -> T[]! Microsoft.VisualStudio.Threading.AsyncReaderWriterLock.AsyncReaderWriterLock(Microsoft.VisualStudio.Threading.JoinableTaskContext? joinableTaskContext, bool captureDiagnostics = false) -> void Microsoft.VisualStudio.Threading.AsyncReaderWriterResourceLock.AsyncReaderWriterResourceLock(Microsoft.VisualStudio.Threading.JoinableTaskContext? joinableTaskContext, bool captureDiagnostics) -> void Microsoft.VisualStudio.Threading.JoinableTaskContext.IsMainThreadMaybeBlocked() -> bool diff --git a/test/Microsoft.VisualStudio.Threading.Tests/AsyncQueueTests.cs b/test/Microsoft.VisualStudio.Threading.Tests/AsyncQueueTests.cs index a039a09eb..f4a61f9a2 100644 --- a/test/Microsoft.VisualStudio.Threading.Tests/AsyncQueueTests.cs +++ b/test/Microsoft.VisualStudio.Threading.Tests/AsyncQueueTests.cs @@ -25,6 +25,7 @@ public void JustInitialized() Assert.Equal(0, this.queue.Count); Assert.True(this.queue.IsEmpty); Assert.False(this.queue.Completion.IsCompleted); + Assert.Empty(this.queue.ToArray()); } [Fact] @@ -34,6 +35,7 @@ public void Enqueue() this.queue.Enqueue(value); Assert.Equal(1, this.queue.Count); Assert.False(this.queue.IsEmpty); + Assert.Single(this.queue.ToArray()); } [Fact] @@ -43,6 +45,7 @@ public void TryEnqueue() Assert.True(this.queue.TryEnqueue(value)); Assert.Equal(1, this.queue.Count); Assert.False(this.queue.IsEmpty); + Assert.Single(this.queue.ToArray()); } [Fact]