From 0fc1039f104e6f77f2dc08cf87134a8bf68358af Mon Sep 17 00:00:00 2001 From: Karan Chadha Date: Mon, 8 Sep 2025 21:25:54 +0530 Subject: [PATCH] chore: add GlobalUsings.cs with project-wide using directives in utilities folder --- .../Extensions/DictionaryExtensionsTests.cs | 6 ------ .../Extensions/MatrixExtensionsTests.cs | 5 ----- .../Extensions/RandomExtensionsTests.cs | 5 ----- .../Extensions/VectorExtensionsTests.cs | 5 ----- Utilities.Tests/GlobalUsings.cs | 17 +++++++++++++++++ Utilities/Exceptions/ItemNotFoundException.cs | 2 -- Utilities/Extensions/DictionaryExtensions.cs | 3 --- Utilities/Extensions/MatrixExtensions.cs | 2 -- Utilities/Extensions/RandomExtensions.cs | 3 --- Utilities/Extensions/VectorExtensions.cs | 2 -- Utilities/GlobalUsings.cs | 15 +++++++++++++++ 11 files changed, 32 insertions(+), 33 deletions(-) create mode 100644 Utilities.Tests/GlobalUsings.cs create mode 100644 Utilities/GlobalUsings.cs diff --git a/Utilities.Tests/Extensions/DictionaryExtensionsTests.cs b/Utilities.Tests/Extensions/DictionaryExtensionsTests.cs index 73964a29..d4f44865 100644 --- a/Utilities.Tests/Extensions/DictionaryExtensionsTests.cs +++ b/Utilities.Tests/Extensions/DictionaryExtensionsTests.cs @@ -1,9 +1,3 @@ -using System; -using System.Collections.Generic; -using FluentAssertions; -using NUnit.Framework; -using Utilities.Extensions; - namespace Utilities.Tests.Extensions; public class DictionaryExtensionsTests diff --git a/Utilities.Tests/Extensions/MatrixExtensionsTests.cs b/Utilities.Tests/Extensions/MatrixExtensionsTests.cs index a079299e..83793a54 100644 --- a/Utilities.Tests/Extensions/MatrixExtensionsTests.cs +++ b/Utilities.Tests/Extensions/MatrixExtensionsTests.cs @@ -1,8 +1,3 @@ -using System; -using FluentAssertions; -using NUnit.Framework; -using Utilities.Extensions; - namespace Utilities.Tests.Extensions; public class MatrixExtensionsTests diff --git a/Utilities.Tests/Extensions/RandomExtensionsTests.cs b/Utilities.Tests/Extensions/RandomExtensionsTests.cs index a26922f6..2ca6d346 100644 --- a/Utilities.Tests/Extensions/RandomExtensionsTests.cs +++ b/Utilities.Tests/Extensions/RandomExtensionsTests.cs @@ -1,8 +1,3 @@ -using System; -using FluentAssertions; -using NUnit.Framework; -using Utilities.Extensions; - namespace Utilities.Tests.Extensions; public class RandomExtensionsTests diff --git a/Utilities.Tests/Extensions/VectorExtensionsTests.cs b/Utilities.Tests/Extensions/VectorExtensionsTests.cs index e4c5320f..974cba33 100644 --- a/Utilities.Tests/Extensions/VectorExtensionsTests.cs +++ b/Utilities.Tests/Extensions/VectorExtensionsTests.cs @@ -1,8 +1,3 @@ -using System; -using FluentAssertions; -using NUnit.Framework; -using Utilities.Extensions; - namespace Utilities.Tests.Extensions; public class VectorExtensionsTests diff --git a/Utilities.Tests/GlobalUsings.cs b/Utilities.Tests/GlobalUsings.cs new file mode 100644 index 00000000..c85dacaf --- /dev/null +++ b/Utilities.Tests/GlobalUsings.cs @@ -0,0 +1,17 @@ +// ----------------------------------------------------------------------------- +// Global using directives for the C-Sharp solution. +// These namespaces are imported globally so they don’t need to be repeatedly declared +// in individual files, improving readability and reducing boilerplate. +// +// Guidelines: +// - Keep only the most commonly used namespaces here. +// - Add project-specific namespaces (e.g., Utilities.Extensions) only if they are +// required across the majority of files in the project. +// - Avoid placing rarely used namespaces here to maintain clarity. +// ----------------------------------------------------------------------------- + +global using System; // Core base classes and fundamental types +global using System.Collections.Generic; // Generic collection types (List, Dictionary, etc.) +global using FluentAssertions; // Assertion library for more readable and expressive unit tests +global using NUnit.Framework; // Testing framework providing attributes and assertions for test cases +global using Utilities.Extensions; // Common project-specific extension methods reused across multiple files diff --git a/Utilities/Exceptions/ItemNotFoundException.cs b/Utilities/Exceptions/ItemNotFoundException.cs index 580fc691..c9cc38f8 100644 --- a/Utilities/Exceptions/ItemNotFoundException.cs +++ b/Utilities/Exceptions/ItemNotFoundException.cs @@ -1,5 +1,3 @@ -using System; - namespace Utilities.Exceptions; /// diff --git a/Utilities/Extensions/DictionaryExtensions.cs b/Utilities/Extensions/DictionaryExtensions.cs index 3d040554..ca917348 100644 --- a/Utilities/Extensions/DictionaryExtensions.cs +++ b/Utilities/Extensions/DictionaryExtensions.cs @@ -1,6 +1,3 @@ -using System; -using System.Collections.Generic; - namespace Utilities.Extensions; public static class DictionaryExtensions diff --git a/Utilities/Extensions/MatrixExtensions.cs b/Utilities/Extensions/MatrixExtensions.cs index 780f6e73..96b63d0c 100644 --- a/Utilities/Extensions/MatrixExtensions.cs +++ b/Utilities/Extensions/MatrixExtensions.cs @@ -1,5 +1,3 @@ -using System; - namespace Utilities.Extensions; public static class MatrixExtensions diff --git a/Utilities/Extensions/RandomExtensions.cs b/Utilities/Extensions/RandomExtensions.cs index eb7f7f47..a4bab3c2 100644 --- a/Utilities/Extensions/RandomExtensions.cs +++ b/Utilities/Extensions/RandomExtensions.cs @@ -1,6 +1,3 @@ -using System; -using System.Linq; - namespace Utilities.Extensions; public static class RandomExtensions diff --git a/Utilities/Extensions/VectorExtensions.cs b/Utilities/Extensions/VectorExtensions.cs index bfb807f0..7241bb17 100644 --- a/Utilities/Extensions/VectorExtensions.cs +++ b/Utilities/Extensions/VectorExtensions.cs @@ -1,5 +1,3 @@ -using System; - namespace Utilities.Extensions; public static class VectorExtensions diff --git a/Utilities/GlobalUsings.cs b/Utilities/GlobalUsings.cs new file mode 100644 index 00000000..25845bd1 --- /dev/null +++ b/Utilities/GlobalUsings.cs @@ -0,0 +1,15 @@ +// ----------------------------------------------------------------------------- +// Global using directives for the C-Sharp solution. +// These namespaces are imported globally so they don’t need to be repeatedly declared +// in individual files, improving readability and reducing boilerplate. +// +// Guidelines: +// - Keep only the most commonly used namespaces here. +// - Add project-specific namespaces (e.g., Utilities.Extensions) only if they are +// required across the majority of files in the project. +// - Avoid placing rarely used namespaces here to maintain clarity. +// ----------------------------------------------------------------------------- + +global using System; // Core base classes and fundamental types +global using System.Collections.Generic; // Generic collection types (List, Dictionary, etc.) +global using System.Linq; // LINQ query operators for collections