From d345f388b4920a240ba648eb4c5ad58b803e10e9 Mon Sep 17 00:00:00 2001 From: Anthony RICHARD Date: Sat, 6 Apr 2024 20:18:16 -0400 Subject: [PATCH] remaining models UT --- Project/adminBlazor/TestUnit/AppUser_UT.cs | 28 +++++++++++++++ .../adminBlazor/TestUnit/CreatorOptions_UT.cs | 24 +++++++++++++ .../adminBlazor/TestUnit/CurrentUser_UT.cs | 28 +++++++++++++++ .../adminBlazor/TestUnit/Translation_UT.cs | 28 +++++++++++++++ .../adminBlazor/TestUnit/UserFactory_UT.cs | 20 +++++++++++ Project/adminBlazor/TestUnit/User_UT.cs | 26 ++++++++++++++ .../TestUnit/VocabularyListModel_UT.cs | 26 ++++++++++++++ .../adminBlazor/TestUnit/VocabularyList_UT.cs | 34 +++++++++++++++++++ 8 files changed, 214 insertions(+) create mode 100644 Project/adminBlazor/TestUnit/AppUser_UT.cs create mode 100644 Project/adminBlazor/TestUnit/CreatorOptions_UT.cs create mode 100644 Project/adminBlazor/TestUnit/CurrentUser_UT.cs create mode 100644 Project/adminBlazor/TestUnit/Translation_UT.cs create mode 100644 Project/adminBlazor/TestUnit/User_UT.cs create mode 100644 Project/adminBlazor/TestUnit/VocabularyList_UT.cs diff --git a/Project/adminBlazor/TestUnit/AppUser_UT.cs b/Project/adminBlazor/TestUnit/AppUser_UT.cs new file mode 100644 index 0000000..3572d68 --- /dev/null +++ b/Project/adminBlazor/TestUnit/AppUser_UT.cs @@ -0,0 +1,28 @@ +using adminBlazor.Models; + +namespace TestUnit +{ + public class AppUser_UT + { + public static IEnumerable SimpleAttributes() + { + yield return new object[] + { + "password", + new List(), + "username" + }; + } + + [Theory] + [MemberData(nameof(SimpleAttributes))] + public void SimpleAttribut_Validation(string password, List roles, string username) + { + var appUser = new AppUser { Password = password, Roles = roles, UserName = username }; + + Assert.Equal(password, appUser.Password); + Assert.Equal(roles, appUser.Roles); + Assert.Equal(username, appUser.UserName); + } + } +} diff --git a/Project/adminBlazor/TestUnit/CreatorOptions_UT.cs b/Project/adminBlazor/TestUnit/CreatorOptions_UT.cs new file mode 100644 index 0000000..e4646bd --- /dev/null +++ b/Project/adminBlazor/TestUnit/CreatorOptions_UT.cs @@ -0,0 +1,24 @@ +using adminBlazor.Models; + +namespace TestUnit +{ + public class CreatorOptions_UT + { + public static IEnumerable SimpleAttributes() + { + yield return new object[] + { + new List() + }; + } + + [Theory] + [MemberData(nameof(SimpleAttributes))] + public void SimpleAttribute_Validation(List name) + { + var creatorOptions = new CreatorOptions { Name = name }; + + Assert.Equal(name, creatorOptions.Name); + } + } +} diff --git a/Project/adminBlazor/TestUnit/CurrentUser_UT.cs b/Project/adminBlazor/TestUnit/CurrentUser_UT.cs new file mode 100644 index 0000000..568712d --- /dev/null +++ b/Project/adminBlazor/TestUnit/CurrentUser_UT.cs @@ -0,0 +1,28 @@ +using adminBlazor.Models; + +namespace TestUnit +{ + public class CurrentUser_UT + { + public static IEnumerable SimpleAttributes() + { + yield return new object[] + { + new Dictionary(), + false, + "username" + }; + } + + [Theory] + [MemberData(nameof(SimpleAttributes))] + public void SimpleAttribut_Validation(Dictionary claims, bool isAuthenticated, string username) + { + var currentUser = new CurrentUser { Claims = claims, IsAuthenticated = isAuthenticated, UserName = username }; + + Assert.Equal(claims, currentUser.Claims); + Assert.Equal(isAuthenticated, currentUser.IsAuthenticated); + Assert.Equal(username, currentUser.UserName); + } + } +} diff --git a/Project/adminBlazor/TestUnit/Translation_UT.cs b/Project/adminBlazor/TestUnit/Translation_UT.cs new file mode 100644 index 0000000..40d3b2c --- /dev/null +++ b/Project/adminBlazor/TestUnit/Translation_UT.cs @@ -0,0 +1,28 @@ +using adminBlazor.Models; + +namespace TestUnit +{ + public class Translation_UT + { + public static IEnumerable SimpleAttributes() + { + yield return new object[] + { + 10, + "firstword", + "secondword" + }; + } + + [Theory] + [MemberData(nameof(SimpleAttributes))] + public void SimpleAttribut_Validation(int id, string firstWord, string secondWord) + { + var translation = new Translation { Id = id, FirstWord = firstWord, SecondWord = secondWord }; + + Assert.Equal(id, translation.Id); + Assert.Equal(firstWord, translation.FirstWord); + Assert.Equal(secondWord, translation.SecondWord); + } + } +} diff --git a/Project/adminBlazor/TestUnit/UserFactory_UT.cs b/Project/adminBlazor/TestUnit/UserFactory_UT.cs index b9d6ec5..f9a493c 100644 --- a/Project/adminBlazor/TestUnit/UserFactory_UT.cs +++ b/Project/adminBlazor/TestUnit/UserFactory_UT.cs @@ -65,6 +65,7 @@ namespace TestUnit Assert.Equal(userMdl.Group, user.Group); } } + [Theory] [MemberData(nameof(Dataset))] public void Update_Validation(UserModel[] userMdls) @@ -92,5 +93,24 @@ namespace TestUnit Assert.Equal(userMdl.Group, user.Group); } } + + [Theory] + [MemberData(nameof(Dataset))] + public void ToModel_Validation(UserModel[] userMdls) + { + foreach (var userMdl in userMdls) + { + var user = UserFactory.Create(userMdl); + var userMdl2 = UserFactory.ToModel(user, Array.Empty()); + + Assert.Equal(userMdl.Password, userMdl2.Password); + Assert.Equal(userMdl.Email, userMdl2.Email); + Assert.Equal(userMdl.Name, userMdl2.Name); + Assert.Equal(userMdl.Surname, userMdl2.Surname); + Assert.Equal(userMdl.Nickname, userMdl2.Nickname); + Assert.Equal(userMdl.ExtraTime, userMdl2.ExtraTime); + Assert.Equal(userMdl.Group, userMdl2.Group); + } + } } } \ No newline at end of file diff --git a/Project/adminBlazor/TestUnit/User_UT.cs b/Project/adminBlazor/TestUnit/User_UT.cs new file mode 100644 index 0000000..938636e --- /dev/null +++ b/Project/adminBlazor/TestUnit/User_UT.cs @@ -0,0 +1,26 @@ +using adminBlazor.Models; + +namespace TestUnit +{ + public class User_UT + { + public static IEnumerable SimpleAttributes() + { + yield return new object[] + { + new List(), + "imageBase64" + }; + } + + [Theory] + [MemberData(nameof(SimpleAttributes))] + public void SimpleAttribut_Validation(List roles, string imageBase64) + { + var user = new User { Roles = roles, ImageBase64 = imageBase64 }; + + Assert.Equal(roles, user.Roles); + Assert.Equal(imageBase64, user.ImageBase64); + } + } +} diff --git a/Project/adminBlazor/TestUnit/VocabularyListModel_UT.cs b/Project/adminBlazor/TestUnit/VocabularyListModel_UT.cs index 2b28a52..6b58d71 100644 --- a/Project/adminBlazor/TestUnit/VocabularyListModel_UT.cs +++ b/Project/adminBlazor/TestUnit/VocabularyListModel_UT.cs @@ -1,10 +1,24 @@ using adminBlazor.Models; +using System.ComponentModel; using System.ComponentModel.DataAnnotations; +using System.Data; +using System.Runtime.Serialization; namespace TestUnit { public class VocabularyListModel_UT { + public static IEnumerable SimpleAttributes() + { + yield return new object[] + { + new byte[] { 0x00, 0x01, 0x02 }, + 42, + "base64encodedstring", + new List() + }; + } + [Theory] //correct [InlineData(true, 0, "name")] @@ -23,6 +37,18 @@ namespace TestUnit Assert.Equal(isValid, ValidateModel(vocabularyListModel)); } + [Theory] + [MemberData(nameof(SimpleAttributes))] + public void SimpleAttribute_Validation(byte[] image, int aut, string imageBase64, List translations) + { + var vocabularyListModel = new VocabularyListModel { Image = image, Aut = aut, ImageBase64 = imageBase64, Translations = translations }; + + Assert.Equal(image, vocabularyListModel.Image); + Assert.Equal(aut, vocabularyListModel.Aut); + Assert.Equal(imageBase64, vocabularyListModel.ImageBase64); + Assert.Equal(translations, vocabularyListModel.Translations); + } + public static bool ValidateModel(VocabularyListModel vocabularyListModel) { var validationContext = new ValidationContext(vocabularyListModel, serviceProvider: null, items: null); diff --git a/Project/adminBlazor/TestUnit/VocabularyList_UT.cs b/Project/adminBlazor/TestUnit/VocabularyList_UT.cs new file mode 100644 index 0000000..cca112f --- /dev/null +++ b/Project/adminBlazor/TestUnit/VocabularyList_UT.cs @@ -0,0 +1,34 @@ +using adminBlazor.Models; + +namespace TestUnit +{ + public class VocabularyList_UT + { + public static IEnumerable SimpleAttributes() + { + yield return new object[] + { + 10, + "name", + new byte[] { 0x00, 0x01, 0x02 }, + 15, + "imageBase64", + new List() + }; + } + + [Theory] + [MemberData(nameof(SimpleAttributes))] + public void SimpleAttribut_Validation(int id, string name, byte[] image, int aut, string imageBase64, List translations) + { + var vocabularyList = new VocabularyList { Id = id, Name = name, Image = image, Aut = aut, ImageBase64 = imageBase64, Translations = translations }; + + Assert.Equal(id, vocabularyList.Id); + Assert.Equal(name, vocabularyList.Name); + Assert.Equal(image, vocabularyList.Image); + Assert.Equal(aut, vocabularyList.Aut); + Assert.Equal(imageBase64, vocabularyList.ImageBase64); + Assert.Equal(translations, vocabularyList.Translations); + } + } +}