REST Service for POPCORN - ILIAS
alex
2025-06-22 08186da304e89de3b61d2a2f3b438598856579fc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
const expect = require("chai").expect
 
const settings = require("../settings")
const libIlias = require("../lib/libIlias")
const db = require("../lib/db")
 
/////////////////////////////////////////////////////////////////////////
 
describe("the function importIliasUser", function () {
 
   let lastUserId = null
   const user = {
      // Action: "Insert",
      login: "123456789",
      passwd: "123456789",
      passwd_type: "plain",
      firstname: "Adolfo",
      lastname: "de la Cruz",
      email: "alex@gorillaeis.com",
      gender: "m",
      department: "Bananenpflücker",
      institution: "Globus Budapest",
      roleIdGlobal: 4,
      // udf_Markt: "Markt UDF",
      udf: {
         // ACHTUNG: Die Nummer enspricht der id in der Tabelle udf_definition und kann je nach Reihenfolge anders sein!
         // wird in importIliasUser() aufgelöst aus dem Namen
         // 1: "Markt UDF",
         // 2: "Marktnummer UDF",
         // 3: "Personal UDF",
         "Markt": "Markt UDF 2",
         "Marktnummer": "Marktnummer UDF 2",
         "Personalnummer": "Personal UDF 2",
      },
   }
 
   afterEach(async function () {
      // await deleteUser(lastUserId)
   })
 
   it("should import a new user to ILIAS", async function () {
      const res = await libIlias.importIliasUser(user)
      console.dir(res, {depth:null})
      expect(res).to.have.property("status").and.to.equal("ok")
      expect(res.command).to.equal("importUser")
      expect(res.usr_id).to.be.a("number").above(0)
 
      const {usr_id} = res
      lastUserId = usr_id
      const user2 = await db.getUserByUserId(usr_id)
      console.log(user2)
      expect(user2).to.have.property("login").and.to.equal(user.login)
      expect(user2).to.have.property("usr_id").and.to.equal(res.usr_id)
 
      // const res2 = await libIlias.deleteUser(usr_id)
      // console.log(res2)
      // expect(res2).to.have.property("status").and.to.equal("ok")
      // expect(res2).to.have.property("command").and.to.equal("deleteUser")
   })
 
})
 
 
async function deleteUser (usr_id) {
   const res2 = await libIlias.deleteUser(usr_id)
   console.log(res2)
   expect(res2).to.have.property("status").and.to.equal("ok")
   expect(res2).to.have.property("command").and.to.equal("deleteUser")
}