New user provider for nextcloud migration (#337)

This commit is contained in:
Anton Shepilov
2024-01-22 21:32:32 +03:00
committed by GitHub
parent 18ca9444ca
commit 184b9acbe3
10 changed files with 160 additions and 63 deletions
@@ -0,0 +1,40 @@
import {describe, expect, test} from '@jest/globals';
import { LemonLdapUserProvider, LemonLdapUserProviderConfig } from "../src/user/lemon_ldap_user_provider";
//FOR LOCAL DEBUG PURPOSE ONLY, ITS NOT A TEST
describe.skip('Lemon LDAP User Provider', () => {
test('ldap returns user info', async () => {
const ldap = new LemonLdapUserProvider({
url: "https://auth.avocat.fr/_getldapentries",
auth: "isPnOTuBwjqAlIdCFGNY",
});
const user = await ldap.find("999248");
expect(user.firstName).toBe("Xavier");
expect(user.lastName).toBe("GUIMARD");
expect(user.email).toBe("999248@cnb.linagora.com");
expect(user.uid).toBe("999248");
});
test('ldap returns user info with email', async () => {
const ldap = new LemonLdapUserProvider({
url: "https://auth.avocat.fr/_getldapentries",
auth: "isPnOTuBwjqAlIdCFGNY",
});
const user = await ldap.find("999253");
expect(user.firstName).toBe("Utilisateur4");
expect(user.lastName).toBe("ONBOARDING4");
expect(user.email).toBe("utilisateur4.onboarding4@avocat.fr");
expect(user.uid).toBe("999253");
});
test('ldap returns nothing', async () => {
const ldap = new LemonLdapUserProvider({
url: "https://auth.avocat.fr/_getldapentries",
auth: "isPnOTuBwjqAlIdCFGNY",
});
const user = await ldap.find("NOTHING_HERE");
expect(user.email).toBeUndefined();
});
});
@@ -14,7 +14,12 @@ describe.skip('nextcloud migration module', () => {
appId: "tdrive_onlyoffice",
secret: "c1cc66db78e1d3bb4713c55d5ab2"
}
}
},
userProvider: "lemon",
lemon: {
url: "url",
auth: "key"
},
} as NextcloudMigrationConfiguration);
let user = await subj.driveClient.createUser({firstName: "DWHO", lastName: "DWHO", email: "dwho@example.com", uid: "test"});
@@ -1,24 +1,24 @@
import {describe, expect, test} from '@jest/globals';
import { LdapUser } from '../src/shell_ldap_user';
import { LdapConfiguration } from '../src/ldap_user';
import { ShellLdapUserProvider } from '../src/user/shell_ldap_user';
import { LdapConfiguration } from '../src/user/ldap_user';
//FOR LOCAL DEBUG PURPOSE ONLY, ITS NOT A TEST
describe.skip('ldap module', () => {
describe.skip('Shell LDAP User Provider', () => {
test('ldap returns user info', async () => {
const ldap = new LdapUser({
const ldap = new ShellLdapUserProvider({
url: "ldap://auth.poc-mail-avocat.fr:389",
baseDn: "ou=users,dc=example,dc=com",
} as LdapConfiguration);
const user = await ldap.find("999248");
expect(user.firstName).toBe("Xavier");
expect(user.lastName).toBe("GUIMARD");
expect(user.email).toBe("xguimard@avocat.fr");
expect(user.email).toBe("xguimard@preprod-avocat.fr");
expect(user.uid).toBe("999248");
});
test('ldap returns nothing', async () => {
const ldap = new LdapUser({
const ldap = new ShellLdapUserProvider({
url: "ldap://auth.poc-mail-avocat.fr:389",
baseDn: "ou=users,dc=example,dc=com",
} as LdapConfiguration);