From 40309462f12828aff0a026a9bbfba5886982c134 Mon Sep 17 00:00:00 2001 From: Lachlan Crawford Date: Mon, 25 Oct 2021 15:00:39 +0100 Subject: [PATCH 1/2] Added null check when trying to get the language from a file extension --- .../LicenseHeaderReplacerTest.cs | 18 ++++++++++++++---- .../LicenseHeaderReplacer.cs | 3 +++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/LicenseHeaderManager.Core.Tests/LicenseHeaderReplacerTest.cs b/LicenseHeaderManager.Core.Tests/LicenseHeaderReplacerTest.cs index 845726a..2aa3e7a 100644 --- a/LicenseHeaderManager.Core.Tests/LicenseHeaderReplacerTest.cs +++ b/LicenseHeaderManager.Core.Tests/LicenseHeaderReplacerTest.cs @@ -55,13 +55,23 @@ public void TearDown () } [Test] - public void GetLanguageFromExtension_LanguagesAreEmpty_ReturnsNull () + public void GetLanguageFromExtension_LanguagesAreEmpty_ReturnsNull() { - var replacer = new LicenseHeaderReplacer (Enumerable.Empty(), Enumerable.Empty()); + var replacer = new LicenseHeaderReplacer(Enumerable.Empty(), Enumerable.Empty()); - var language = replacer.GetLanguageFromExtension (".cs"); + var language = replacer.GetLanguageFromExtension(".cs"); - Assert.That (language, Is.Null); + Assert.That(language, Is.Null); + } + + [Test] + public void GetLanguageFromExtension_NullExtension_ReturnsNull() + { + var replacer = new LicenseHeaderReplacer(_languages, Enumerable.Empty()); + + var language = replacer.GetLanguageFromExtension(null); + + Assert.That(language, Is.Null); } [Test] diff --git a/LicenseHeaderManager.Core/LicenseHeaderReplacer.cs b/LicenseHeaderManager.Core/LicenseHeaderReplacer.cs index f3170ca..2103c45 100644 --- a/LicenseHeaderManager.Core/LicenseHeaderReplacer.cs +++ b/LicenseHeaderManager.Core/LicenseHeaderReplacer.cs @@ -62,6 +62,9 @@ protected LicenseHeaderReplacer () public Language GetLanguageFromExtension (string extension) { + if (extension == null) + return null; + return _languages?.FirstOrDefault (x => x.Extensions.Any (y => extension.EndsWith (y, StringComparison.OrdinalIgnoreCase))); } From 82013f90d6294d9f43560451ccf2c07ac033b5d3 Mon Sep 17 00:00:00 2001 From: Lachlan Crawford Date: Mon, 25 Oct 2021 15:03:05 +0100 Subject: [PATCH 2/2] Revert whitespace changes from previous commit --- .../LicenseHeaderReplacerTest.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/LicenseHeaderManager.Core.Tests/LicenseHeaderReplacerTest.cs b/LicenseHeaderManager.Core.Tests/LicenseHeaderReplacerTest.cs index 2aa3e7a..cbcc28a 100644 --- a/LicenseHeaderManager.Core.Tests/LicenseHeaderReplacerTest.cs +++ b/LicenseHeaderManager.Core.Tests/LicenseHeaderReplacerTest.cs @@ -55,13 +55,13 @@ public void TearDown () } [Test] - public void GetLanguageFromExtension_LanguagesAreEmpty_ReturnsNull() + public void GetLanguageFromExtension_LanguagesAreEmpty_ReturnsNull () { - var replacer = new LicenseHeaderReplacer(Enumerable.Empty(), Enumerable.Empty()); + var replacer = new LicenseHeaderReplacer (Enumerable.Empty(), Enumerable.Empty()); - var language = replacer.GetLanguageFromExtension(".cs"); + var language = replacer.GetLanguageFromExtension (".cs"); - Assert.That(language, Is.Null); + Assert.That (language, Is.Null); } [Test]