diff --git a/src/Ombi.Schedule.Tests/PlexUserImporterTests.cs b/src/Ombi.Schedule.Tests/PlexUserImporterTests.cs index 72cacbc50..022190bd2 100644 --- a/src/Ombi.Schedule.Tests/PlexUserImporterTests.cs +++ b/src/Ombi.Schedule.Tests/PlexUserImporterTests.cs @@ -232,6 +232,37 @@ namespace Ombi.Schedule.Tests _mocker.Verify(x => x.CreateAsync(It.IsAny()), Times.Never); } + [Test(Description = "You can have home users that are now unmanaged and can actually log into Plex")] + public async Task Imports_Unmanaged_Home_User() + { + _mocker.Setup, Task>(x => x.GetSettingsAsync()) + .ReturnsAsync(new UserManagementSettings { ImportPlexAdmin = false, ImportPlexUsers = true }); + _mocker.Setup>(x => x.GetUsers(It.IsAny())).ReturnsAsync(new PlexUsers + { + User = new UserFriends[] + { + new UserFriends + { + Email = "email", + Id = "id", + Title = "title", + Username = "username", + HomeUser = true + } + } + }); + _mocker.Setup>(x => x.CreateAsync(It.Is(x => x.UserName == "username" && x.Email == "email" && x.ProviderUserId == "id" && x.UserType == UserType.PlexUser))) + .ReturnsAsync(IdentityResult.Success); + + _mocker.Setup>(x => x.AddToRoleAsync(It.Is(x => x.UserName == "plex"), OmbiRoles.RequestMovie)) + .ReturnsAsync(IdentityResult.Success); + + + await _subject.Execute(null); + + _mocker.Verify(x => x.CreateAsync(It.IsAny()), Times.Once); + } + [Test] public async Task Import_Doesnt_Import_DuplicateEmail() {