]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Amend persistent search tests to use different output files for parallel runs
authorNick Porter <nick@portercomputing.co.uk>
Mon, 24 Oct 2022 08:08:52 +0000 (09:08 +0100)
committerNick Porter <nick@portercomputing.co.uk>
Mon, 24 Oct 2022 10:55:16 +0000 (11:55 +0100)
src/tests/ldap_sync/persistent_search/01_add.ldif
src/tests/ldap_sync/persistent_search/02_mod.ldif
src/tests/ldap_sync/persistent_search/03_mod.ldif
src/tests/ldap_sync/persistent_search/04_del.ldif
src/tests/ldap_sync/persistent_search/05_add.ldif
src/tests/ldap_sync/persistent_search/06_mod.ldif
src/tests/ldap_sync/persistent_search/07_mod.ldif
src/tests/ldap_sync/persistent_search/08_del.ldif
src/tests/ldap_sync/persistent_search/all.mk
src/tests/ldap_sync/persistent_search/config/radiusd.conf

index c6633091b101341a9de65546d8a4fa4052098dea..8655365539a09182ee862a5f8649decb9d7a1546 100644 (file)
@@ -1,5 +1,6 @@
 #
 # ARGV: -x -H ${PERSISTENT_SEARCH_TEST_SERVER} -D "cn=Directory Manager" -w "secret123"
+# OUT:peopleAddfred
 #
 dn: uid=fred,ou=people,dc=example,dc=com
 changeType: add
index f197e50290f52fe40e696e4bc4c6769a85b00e6a..4e9d99085780862bfb56d864cb9d7679f0543d64 100644 (file)
@@ -1,5 +1,6 @@
 #
 # ARGV: -x -H ${PERSISTENT_SEARCH_TEST_SERVER} -D "cn=Directory Manager" -w "secret123"
+# OUT:peopleModifyjane
 #
 dn: uid=jane,ou=people,dc=example,dc=com
 changeType: modify
index 17692898fbb81a3c4255d38dba4069d1dfd1ad07..f77b3ad09e4bbb95c7c77929e58d73b3ae4bdbce 100644 (file)
@@ -1,5 +1,6 @@
 #
 # ARGV: -x -H ${PERSISTENT_SEARCH_TEST_SERVER} -D "cn=Directory Manager" -w "secret123"
+# OUT:peopleModifyanne
 #
 dn: uid=ann,ou=people,dc=example,dc=com
 changeType: modrdn
index 70a9965f2ebb042a3c47ed460c980ee2e38af418..647d38a3110861101f68f0a9476feb1f71a95904 100644 (file)
@@ -1,5 +1,6 @@
 #
 # ARGV: -x -H ${PERSISTENT_SEARCH_TEST_SERVER} -D "cn=Directory Manager" -w "secret123"
+# OUT:peopleDeletebill
 #
 dn: uid=bill,ou=people,dc=example,dc=com
 changetype: delete
index b06d34ffc86a37518150a5f31a2bffaae5c38f85..79fda680be387f19deb277be6af98ca29a382e1e 100644 (file)
@@ -1,5 +1,6 @@
 #
 # ARGV: -x -H ${PERSISTENT_SEARCH_TEST_SERVER} -D "cn=Directory Manager" -w "secret123"
+# OUT:groupAddbosses
 #
 dn: cn=bosses,ou=groups,dc=example,dc=com
 changeType: add
index 13b4ecb03091bd90b9077269b30d3f851b98799e..3dcac48096d5d253ea025ea8fc5ea7ef6462f669 100644 (file)
@@ -1,5 +1,6 @@
 #
 # ARGV: -x -H ${PERSISTENT_SEARCH_TEST_SERVER} -D "cn=Directory Manager" -w "secret123"
+# OUT:groupModifyfoo
 #
 dn: cn=foo,ou=groups,dc=example,dc=com
 changetype: modify
index 6c3e6b8f9b2f6552490b8d734ca2aa00aa528437..57a19260203a86140c5917bda59733153b531731 100644 (file)
@@ -1,5 +1,6 @@
 #
 # ARGV: -x -H ${PERSISTENT_SEARCH_TEST_SERVER} -D "cn=Directory Manager" -w "secret123"
+# OUT:groupModifybar
 #
 dn: cn=bar,ou=groups,dc=example,dc=com
 changetype: modify
index 0bec02be7ba6098963452bdf0e9483091869e8a6..0f8b2e23469ee88ee16f57af350452b2929fda35 100644 (file)
@@ -1,5 +1,6 @@
 #
 # ARGV: -x -H ${PERSISTENT_SEARCH_TEST_SERVER} -D "cn=Directory Manager" -w "secret123"
+# OUT:groupDeletebaz
 #
 dn: cn=baz,ou=groups,dc=example,dc=com
 changetype: delete
index ca73d366790467ff4df6e12caf802c891046a793..f30e34c82268f91e418dfeeac0cf14baffd43ac2 100644 (file)
@@ -22,13 +22,15 @@ $(OUTPUT)/%: $(DIR)/% | $(TEST).radiusd_kill $(TEST).radiusd_start
        $(eval FOUND    := $(patsubst %.ldif,%.out,$@))
        $(eval ARGV     := $(shell grep "#.*ARGV:" $< | cut -f2 -d ':'))
        $(eval OUT_DIR  := $(BUILD_DIR)/tests/ldap_sync/persistent_search)
+       $(eval OUT      := $(shell grep "#.*OUT:" $< | cut -f2 -d ':'))
 
        $(Q)echo "LDAPSYNC-TEST persistent_search $(TARGET)"
        $(Q)[ -f $(dir $@)/radiusd.pid ] || exit 1
-       $(Q)rm -f $(OUT_DIR)/linelog.out
+       $(Q)rm -f $(OUT_DIR)/$(OUT).out
+       $(Q)sleep 1
        $(Q)ldapmodify $(ARGV) -f $< > /dev/null
-       $(Q)i=0; while [ $$i -lt 300 ] ; \
-               do if [ -e $(OUT_DIR)/linelog.out ] ;   \
+       $(Q)i=0; while [ $$i -lt 600 ] ; \
+               do if [ -e $(OUT_DIR)/$(OUT).out ] ;    \
                then                                    \
                break;                                  \
                fi;                                     \
@@ -36,7 +38,7 @@ $(OUTPUT)/%: $(DIR)/% | $(TEST).radiusd_kill $(TEST).radiusd_start
                i=$$((i+1));                            \
        done ;
        $(Q)sleep .1
-       $(Q)mv $(OUT_DIR)/linelog.out $(FOUND)
+       $(Q)mv $(OUT_DIR)/$(OUT).out $(FOUND)
 
        $(Q)if [ -e "$(EXPECTED)" ] && ! cmp -s $(FOUND) $(EXPECTED); then      \
                echo "LDAP_SYNC FAILED $@";                                     \
index 7c91938c5729f5be89f5f23eb11d79a9356aba99..f2321adfcdf9610c4080a477214256ceac862c65 100644 (file)
@@ -42,6 +42,12 @@ global {
 
 policy {
        linelogprep {
+               &request.Tmp-String-8 := &LDAP-Sync.DN
+               if (&Tmp-String-8 == "ou=people,dc=example,dc=com") {
+                       &control.Tmp-String-9 := "people"
+               } else {
+                       &control.Tmp-String-9 := "group"
+               }
                &control.Tmp-String-0 := "%{Packet-Type} %{LDAP-Sync.DN} %{LDAP-Sync.Entry-DN} %{LDAP-Sync.Original-DN} %{Proto.radius.User-Name}"
        }
 
@@ -67,7 +73,7 @@ modules {
                destination = file
 
                file {
-                       filename = ${run_dir}/linelog.out
+                       filename = ${run_dir}/%{control.Tmp-String-9}%{Packet-Type}%{Proto.radius.User-Name}%{Tmp-String-2}.out
                }
        }
 
@@ -143,6 +149,7 @@ server test {
 
                        update {
                                &Tmp-String-1 += "member"
+                               &Tmp-String-2 = 'cn'
                        }
                }
        }