Makes the output cleaner and won't change unrelated config properties
because of Data::Dumper's space indentation if rule configs are
modified in future patches.

Suggested-by: Thomas Lamprecht <t.lampre...@proxmox.com>
Signed-off-by: Daniel Kral <d.k...@proxmox.com>
---
 ...efaults-for-node-affinity-rules.cfg.expect | 116 ++++----
 ...lts-for-resource-affinity-rules.cfg.expect |  72 ++---
 ...nt-node-resource-affinity-rules.cfg.expect | 130 ++++-----
 ...sistent-resource-affinity-rules.cfg.expect |  10 +-
 ...egative-resource-affinity-rules.cfg.expect |  52 ++--
 ...fective-resource-affinity-rules.cfg.expect |  10 +-
 ...egative-resource-affinity-rules.cfg.expect | 254 +++++++++---------
 ...ositive-resource-affinity-rules.cfg.expect | 218 +++++++--------
 ...egative-resource-affinity-rules.cfg.expect | 142 +++++-----
 ...ositive-resource-affinity-rules.cfg.expect | 136 +++++-----
 ...ty-with-resource-affinity-rules.cfg.expect |  84 +++---
 ...rce-refs-in-node-affinity-rules.cfg.expect | 116 ++++----
 src/test/test_rules_config.pl                 |   9 +-
 13 files changed, 673 insertions(+), 676 deletions(-)

diff --git a/src/test/rules_cfgs/defaults-for-node-affinity-rules.cfg.expect 
b/src/test/rules_cfgs/defaults-for-node-affinity-rules.cfg.expect
index 59a2c364..8ea928f2 100644
--- a/src/test/rules_cfgs/defaults-for-node-affinity-rules.cfg.expect
+++ b/src/test/rules_cfgs/defaults-for-node-affinity-rules.cfg.expect
@@ -1,60 +1,60 @@
 --- Log ---
 --- Config ---
-$VAR1 = {
-          'digest' => 'c96c9de143221a82e44efa8bb4814b8248a8ea11',
-          'ids' => {
-                     'node-affinity-defaults' => {
-                                                   'nodes' => {
-                                                                'node1' => {
-                                                                             
'priority' => 0
-                                                                           }
-                                                              },
-                                                   'resources' => {
-                                                                    'vm:101' 
=> 1
-                                                                  },
-                                                   'type' => 'node-affinity'
-                                                 },
-                     'node-affinity-disabled' => {
-                                                   'disable' => 1,
-                                                   'nodes' => {
-                                                                'node2' => {
-                                                                             
'priority' => 0
-                                                                           }
-                                                              },
-                                                   'resources' => {
-                                                                    'vm:102' 
=> 1
-                                                                  },
-                                                   'type' => 'node-affinity'
-                                                 },
-                     'node-affinity-disabled-explicit' => {
-                                                            'disable' => 1,
-                                                            'nodes' => {
-                                                                         
'node2' => {
-                                                                               
       'priority' => 0
-                                                                               
     }
-                                                                       },
-                                                            'resources' => {
-                                                                             
'vm:103' => 1
-                                                                           },
-                                                            'type' => 
'node-affinity'
-                                                          },
-                     'node-affinity-strict' => {
-                                                 'nodes' => {
-                                                              'node3' => {
-                                                                           
'priority' => 0
-                                                                         }
-                                                            },
-                                                 'resources' => {
-                                                                  'vm:104' => 1
-                                                                },
-                                                 'strict' => 1,
-                                                 'type' => 'node-affinity'
-                                               }
-                   },
-          'order' => {
-                       'node-affinity-defaults' => 1,
-                       'node-affinity-disabled' => 2,
-                       'node-affinity-disabled-explicit' => 3,
-                       'node-affinity-strict' => 4
-                     }
-        };
+{
+   "digest" : "c96c9de143221a82e44efa8bb4814b8248a8ea11",
+   "ids" : {
+      "node-affinity-defaults" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:101" : 1
+         },
+         "type" : "node-affinity"
+      },
+      "node-affinity-disabled" : {
+         "disable" : 1,
+         "nodes" : {
+            "node2" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:102" : 1
+         },
+         "type" : "node-affinity"
+      },
+      "node-affinity-disabled-explicit" : {
+         "disable" : 1,
+         "nodes" : {
+            "node2" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:103" : 1
+         },
+         "type" : "node-affinity"
+      },
+      "node-affinity-strict" : {
+         "nodes" : {
+            "node3" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:104" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      }
+   },
+   "order" : {
+      "node-affinity-defaults" : 1,
+      "node-affinity-disabled" : 2,
+      "node-affinity-disabled-explicit" : 3,
+      "node-affinity-strict" : 4
+   }
+}
diff --git 
a/src/test/rules_cfgs/defaults-for-resource-affinity-rules.cfg.expect 
b/src/test/rules_cfgs/defaults-for-resource-affinity-rules.cfg.expect
index 7384b0b8..7af19a18 100644
--- a/src/test/rules_cfgs/defaults-for-resource-affinity-rules.cfg.expect
+++ b/src/test/rules_cfgs/defaults-for-resource-affinity-rules.cfg.expect
@@ -1,38 +1,38 @@
 --- Log ---
 --- Config ---
-$VAR1 = {
-          'digest' => '9ac7cc517f02c41e3403085ec02f6a9259f2ac94',
-          'ids' => {
-                     'resource-affinity-defaults' => {
-                                                       'affinity' => 
'negative',
-                                                       'resources' => {
-                                                                        
'vm:101' => 1,
-                                                                        
'vm:102' => 1
-                                                                      },
-                                                       'type' => 
'resource-affinity'
-                                                     },
-                     'resource-affinity-disabled' => {
-                                                       'affinity' => 
'negative',
-                                                       'disable' => 1,
-                                                       'resources' => {
-                                                                        
'vm:201' => 1,
-                                                                        
'vm:202' => 1
-                                                                      },
-                                                       'type' => 
'resource-affinity'
-                                                     },
-                     'resource-affinity-disabled-explicit' => {
-                                                                'affinity' => 
'negative',
-                                                                'disable' => 1,
-                                                                'resources' => 
{
-                                                                               
  'vm:301' => 1,
-                                                                               
  'vm:302' => 1
-                                                                               
},
-                                                                'type' => 
'resource-affinity'
-                                                              }
-                   },
-          'order' => {
-                       'resource-affinity-defaults' => 1,
-                       'resource-affinity-disabled' => 2,
-                       'resource-affinity-disabled-explicit' => 3
-                     }
-        };
+{
+   "digest" : "9ac7cc517f02c41e3403085ec02f6a9259f2ac94",
+   "ids" : {
+      "resource-affinity-defaults" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "resource-affinity-disabled" : {
+         "affinity" : "negative",
+         "disable" : 1,
+         "resources" : {
+            "vm:201" : 1,
+            "vm:202" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "resource-affinity-disabled-explicit" : {
+         "affinity" : "negative",
+         "disable" : 1,
+         "resources" : {
+            "vm:301" : 1,
+            "vm:302" : 1
+         },
+         "type" : "resource-affinity"
+      }
+   },
+   "order" : {
+      "resource-affinity-defaults" : 1,
+      "resource-affinity-disabled" : 2,
+      "resource-affinity-disabled-explicit" : 3
+   }
+}
diff --git 
a/src/test/rules_cfgs/inconsistent-node-resource-affinity-rules.cfg.expect 
b/src/test/rules_cfgs/inconsistent-node-resource-affinity-rules.cfg.expect
index 80222c86..ad517077 100644
--- a/src/test/rules_cfgs/inconsistent-node-resource-affinity-rules.cfg.expect
+++ b/src/test/rules_cfgs/inconsistent-node-resource-affinity-rules.cfg.expect
@@ -10,68 +10,68 @@ Drop rule 'vm501-vm502-must-be-kept-together', because 
resources are in multiple
 Drop rule 'vm502-vm503-must-be-kept-together', because resources are in 
multiple node affinity rules.
 Drop rule 'vm503-must-be-on-node2', because at least one resource is in a 
positive resource affinity rule and there are other resources in at least one 
other node affinity rule already.
 --- Config ---
-$VAR1 = {
-          'digest' => '00a70f4c2bdd41aed16b6e5b9860cd9fb7f0f098',
-          'ids' => {
-                     'vm101-vm102-must-be-kept-together' => {
-                                                              'affinity' => 
'positive',
-                                                              'resources' => {
-                                                                               
'vm:101' => 1,
-                                                                               
'vm:102' => 1
-                                                                             },
-                                                              'type' => 
'resource-affinity'
-                                                            },
-                     'vm101-vm102-must-be-on-node1' => {
-                                                         'nodes' => {
-                                                                      'node1' 
=> {
-                                                                               
    'priority' => 0
-                                                                               
  }
-                                                                    },
-                                                         'resources' => {
-                                                                          
'vm:101' => 1,
-                                                                          
'vm:102' => 1
-                                                                        },
-                                                         'strict' => 1,
-                                                         'type' => 
'node-affinity'
-                                                       },
-                     'vm201-must-be-on-node1' => {
-                                                   'nodes' => {
-                                                                'node1' => {
-                                                                             
'priority' => 0
-                                                                           }
-                                                              },
-                                                   'resources' => {
-                                                                    'vm:201' 
=> 1
-                                                                  },
-                                                   'strict' => 1,
-                                                   'type' => 'node-affinity'
-                                                 },
-                     'vm201-vm202-must-be-kept-separate' => {
-                                                              'affinity' => 
'negative',
-                                                              'resources' => {
-                                                                               
'vm:201' => 1,
-                                                                               
'vm:202' => 1
-                                                                             },
-                                                              'type' => 
'resource-affinity'
-                                                            },
-                     'vm202-must-be-on-node2' => {
-                                                   'nodes' => {
-                                                                'node2' => {
-                                                                             
'priority' => 0
-                                                                           }
-                                                              },
-                                                   'resources' => {
-                                                                    'vm:202' 
=> 1
-                                                                  },
-                                                   'strict' => 1,
-                                                   'type' => 'node-affinity'
-                                                 }
-                   },
-          'order' => {
-                       'vm101-vm102-must-be-kept-together' => 2,
-                       'vm101-vm102-must-be-on-node1' => 1,
-                       'vm201-must-be-on-node1' => 3,
-                       'vm201-vm202-must-be-kept-separate' => 5,
-                       'vm202-must-be-on-node2' => 4
-                     }
-        };
+{
+   "digest" : "00a70f4c2bdd41aed16b6e5b9860cd9fb7f0f098",
+   "ids" : {
+      "vm101-vm102-must-be-kept-together" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "vm101-vm102-must-be-on-node1" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      },
+      "vm201-must-be-on-node1" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:201" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      },
+      "vm201-vm202-must-be-kept-separate" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:201" : 1,
+            "vm:202" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "vm202-must-be-on-node2" : {
+         "nodes" : {
+            "node2" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:202" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      }
+   },
+   "order" : {
+      "vm101-vm102-must-be-kept-together" : 2,
+      "vm101-vm102-must-be-on-node1" : 1,
+      "vm201-must-be-on-node1" : 3,
+      "vm201-vm202-must-be-kept-separate" : 5,
+      "vm202-must-be-on-node2" : 4
+   }
+}
diff --git 
a/src/test/rules_cfgs/inconsistent-resource-affinity-rules.cfg.expect 
b/src/test/rules_cfgs/inconsistent-resource-affinity-rules.cfg.expect
index 8f2338d9..f47828c6 100644
--- a/src/test/rules_cfgs/inconsistent-resource-affinity-rules.cfg.expect
+++ b/src/test/rules_cfgs/inconsistent-resource-affinity-rules.cfg.expect
@@ -7,8 +7,8 @@ Drop rule 'split-stick-together2', because rule shares two or 
more resources wit
 Drop rule 'stick-together1', because rule shares two or more resources with a 
negative resource affinity rule.
 Drop rule 'stick-together1', because rule shares two or more resources with a 
negative resource affinity rule.
 --- Config ---
-$VAR1 = {
-          'digest' => '80cdc11a1d5bf2d1d500665af1210cd59aabede6',
-          'ids' => {},
-          'order' => {}
-        };
+{
+   "digest" : "80cdc11a1d5bf2d1d500665af1210cd59aabede6",
+   "ids" : {},
+   "order" : {}
+}
diff --git 
a/src/test/rules_cfgs/ineffective-negative-resource-affinity-rules.cfg.expect 
b/src/test/rules_cfgs/ineffective-negative-resource-affinity-rules.cfg.expect
index 8a2b8797..e2c1ad11 100644
--- 
a/src/test/rules_cfgs/ineffective-negative-resource-affinity-rules.cfg.expect
+++ 
b/src/test/rules_cfgs/ineffective-negative-resource-affinity-rules.cfg.expect
@@ -2,29 +2,29 @@
 Drop rule 'remove-me1', because rule defines more resources than available 
nodes.
 Drop rule 'remove-me2', because rule defines more resources than available 
nodes.
 --- Config ---
-$VAR1 = {
-          'digest' => '68633cedeeb355ef78fe28221ef3f16537b3e788',
-          'ids' => {
-                     'do-not-remove-me1' => {
-                                              'affinity' => 'negative',
-                                              'resources' => {
-                                                               'vm:101' => 1,
-                                                               'vm:102' => 1
-                                                             },
-                                              'type' => 'resource-affinity'
-                                            },
-                     'do-not-remove-me2' => {
-                                              'affinity' => 'negative',
-                                              'resources' => {
-                                                               'vm:101' => 1,
-                                                               'vm:102' => 1,
-                                                               'vm:103' => 1
-                                                             },
-                                              'type' => 'resource-affinity'
-                                            }
-                   },
-          'order' => {
-                       'do-not-remove-me1' => 1,
-                       'do-not-remove-me2' => 2
-                     }
-        };
+{
+   "digest" : "68633cedeeb355ef78fe28221ef3f16537b3e788",
+   "ids" : {
+      "do-not-remove-me1" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-remove-me2" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1,
+            "vm:103" : 1
+         },
+         "type" : "resource-affinity"
+      }
+   },
+   "order" : {
+      "do-not-remove-me1" : 1,
+      "do-not-remove-me2" : 2
+   }
+}
diff --git a/src/test/rules_cfgs/ineffective-resource-affinity-rules.cfg.expect 
b/src/test/rules_cfgs/ineffective-resource-affinity-rules.cfg.expect
index b2d468b2..4bbc782a 100644
--- a/src/test/rules_cfgs/ineffective-resource-affinity-rules.cfg.expect
+++ b/src/test/rules_cfgs/ineffective-resource-affinity-rules.cfg.expect
@@ -2,8 +2,8 @@
 Drop rule 'lonely-resource1', because rule is ineffective as there are less 
than two resources.
 Drop rule 'lonely-resource2', because rule is ineffective as there are less 
than two resources.
 --- Config ---
-$VAR1 = {
-          'digest' => 'fe89f8c8f5acc29f807eaa0cec5974b6e957a596',
-          'ids' => {},
-          'order' => {}
-        };
+{
+   "digest" : "fe89f8c8f5acc29f807eaa0cec5974b6e957a596",
+   "ids" : {},
+   "order" : {}
+}
diff --git 
a/src/test/rules_cfgs/infer-implicit-negative-resource-affinity-rules.cfg.expect
 
b/src/test/rules_cfgs/infer-implicit-negative-resource-affinity-rules.cfg.expect
index 09364d41..d3f1c7c3 100644
--- 
a/src/test/rules_cfgs/infer-implicit-negative-resource-affinity-rules.cfg.expect
+++ 
b/src/test/rules_cfgs/infer-implicit-negative-resource-affinity-rules.cfg.expect
@@ -2,130 +2,130 @@
 Drop rule 'do-not-infer-inconsistent-negative2', because rule shares two or 
more resources with a positive resource affinity rule.
 Drop rule 'do-not-infer-inconsistent-positive1', because rule shares two or 
more resources with a negative resource affinity rule.
 --- Config ---
-$VAR1 = {
-          'digest' => 'd8724dfe2130bb642b98e021da973aa0ec0695f0',
-          'ids' => {
-                     '_implicit-negative-infer-simple-positive1-vm:202-vm:204' 
=> {
-                                                                               
     'affinity' => 'negative',
-                                                                               
     'resources' => {
-                                                                               
                      'vm:202' => 1,
-                                                                               
                      'vm:204' => 1
-                                                                               
                    },
-                                                                               
     'type' => 'resource-affinity'
-                                                                               
   },
-                     '_implicit-negative-infer-simple-positive1-vm:203-vm:204' 
=> {
-                                                                               
     'affinity' => 'negative',
-                                                                               
     'resources' => {
-                                                                               
                      'vm:203' => 1,
-                                                                               
                      'vm:204' => 1
-                                                                               
                    },
-                                                                               
     'type' => 'resource-affinity'
-                                                                               
   },
-                     '_implicit-negative-infer-two-positive1-vm:301-vm:304' => 
{
-                                                                               
  'affinity' => 'negative',
-                                                                               
  'resources' => {
-                                                                               
                   'vm:301' => 1,
-                                                                               
                   'vm:304' => 1
-                                                                               
                 },
-                                                                               
  'type' => 'resource-affinity'
-                                                                               
},
-                     '_implicit-negative-infer-two-positive1-vm:301-vm:305' => 
{
-                                                                               
  'affinity' => 'negative',
-                                                                               
  'resources' => {
-                                                                               
                   'vm:301' => 1,
-                                                                               
                   'vm:305' => 1
-                                                                               
                 },
-                                                                               
  'type' => 'resource-affinity'
-                                                                               
},
-                     '_implicit-negative-infer-two-positive1-vm:302-vm:304' => 
{
-                                                                               
  'affinity' => 'negative',
-                                                                               
  'resources' => {
-                                                                               
                   'vm:302' => 1,
-                                                                               
                   'vm:304' => 1
-                                                                               
                 },
-                                                                               
  'type' => 'resource-affinity'
-                                                                               
},
-                     '_implicit-negative-infer-two-positive1-vm:303-vm:305' => 
{
-                                                                               
  'affinity' => 'negative',
-                                                                               
  'resources' => {
-                                                                               
                   'vm:303' => 1,
-                                                                               
                   'vm:305' => 1
-                                                                               
                 },
-                                                                               
  'type' => 'resource-affinity'
-                                                                               
},
-                     'do-not-infer-inconsistent-negative1' => {
-                                                                'affinity' => 
'negative',
-                                                                'resources' => 
{
-                                                                               
  'vm:401' => 1,
-                                                                               
  'vm:404' => 1
-                                                                               
},
-                                                                'type' => 
'resource-affinity'
-                                                              },
-                     'do-not-infer-positive1' => {
-                                                   'affinity' => 'positive',
-                                                   'resources' => {
-                                                                    'vm:101' 
=> 1,
-                                                                    'vm:102' 
=> 1,
-                                                                    'vm:103' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'infer-simple-negative1' => {
-                                                   'affinity' => 'negative',
-                                                   'resources' => {
-                                                                    'vm:201' 
=> 1,
-                                                                    'vm:204' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'infer-simple-positive1' => {
-                                                   'affinity' => 'positive',
-                                                   'resources' => {
-                                                                    'vm:201' 
=> 1,
-                                                                    'vm:202' 
=> 1,
-                                                                    'vm:203' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'infer-two-negative1' => {
-                                                'affinity' => 'negative',
-                                                'resources' => {
-                                                                 'vm:303' => 1,
-                                                                 'vm:304' => 1
-                                                               },
-                                                'type' => 'resource-affinity'
-                                              },
-                     'infer-two-negative2' => {
-                                                'affinity' => 'negative',
-                                                'resources' => {
-                                                                 'vm:302' => 1,
-                                                                 'vm:305' => 1
-                                                               },
-                                                'type' => 'resource-affinity'
-                                              },
-                     'infer-two-positive1' => {
-                                                'affinity' => 'positive',
-                                                'resources' => {
-                                                                 'vm:301' => 1,
-                                                                 'vm:302' => 1,
-                                                                 'vm:303' => 1
-                                                               },
-                                                'type' => 'resource-affinity'
-                                              }
-                   },
-          'order' => {
-                       
'_implicit-negative-infer-simple-positive1-vm:202-vm:204' => 2,
-                       
'_implicit-negative-infer-simple-positive1-vm:203-vm:204' => 2,
-                       '_implicit-negative-infer-two-positive1-vm:301-vm:304' 
=> 2,
-                       '_implicit-negative-infer-two-positive1-vm:301-vm:305' 
=> 2,
-                       '_implicit-negative-infer-two-positive1-vm:302-vm:304' 
=> 2,
-                       '_implicit-negative-infer-two-positive1-vm:303-vm:305' 
=> 2,
-                       'do-not-infer-inconsistent-negative1' => 8,
-                       'do-not-infer-positive1' => 1,
-                       'infer-simple-negative1' => 3,
-                       'infer-simple-positive1' => 2,
-                       'infer-two-negative1' => 5,
-                       'infer-two-negative2' => 6,
-                       'infer-two-positive1' => 4
-                     }
-        };
+{
+   "digest" : "d8724dfe2130bb642b98e021da973aa0ec0695f0",
+   "ids" : {
+      "_implicit-negative-infer-simple-positive1-vm:202-vm:204" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:202" : 1,
+            "vm:204" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "_implicit-negative-infer-simple-positive1-vm:203-vm:204" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:203" : 1,
+            "vm:204" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "_implicit-negative-infer-two-positive1-vm:301-vm:304" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:301" : 1,
+            "vm:304" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "_implicit-negative-infer-two-positive1-vm:301-vm:305" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:301" : 1,
+            "vm:305" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "_implicit-negative-infer-two-positive1-vm:302-vm:304" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:302" : 1,
+            "vm:304" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "_implicit-negative-infer-two-positive1-vm:303-vm:305" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:303" : 1,
+            "vm:305" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-infer-inconsistent-negative1" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:401" : 1,
+            "vm:404" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-infer-positive1" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1,
+            "vm:103" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-simple-negative1" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:201" : 1,
+            "vm:204" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-simple-positive1" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:201" : 1,
+            "vm:202" : 1,
+            "vm:203" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-two-negative1" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:303" : 1,
+            "vm:304" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-two-negative2" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:302" : 1,
+            "vm:305" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-two-positive1" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:301" : 1,
+            "vm:302" : 1,
+            "vm:303" : 1
+         },
+         "type" : "resource-affinity"
+      }
+   },
+   "order" : {
+      "_implicit-negative-infer-simple-positive1-vm:202-vm:204" : 2,
+      "_implicit-negative-infer-simple-positive1-vm:203-vm:204" : 2,
+      "_implicit-negative-infer-two-positive1-vm:301-vm:304" : 2,
+      "_implicit-negative-infer-two-positive1-vm:301-vm:305" : 2,
+      "_implicit-negative-infer-two-positive1-vm:302-vm:304" : 2,
+      "_implicit-negative-infer-two-positive1-vm:303-vm:305" : 2,
+      "do-not-infer-inconsistent-negative1" : 8,
+      "do-not-infer-positive1" : 1,
+      "infer-simple-negative1" : 3,
+      "infer-simple-positive1" : 2,
+      "infer-two-negative1" : 5,
+      "infer-two-negative2" : 6,
+      "infer-two-positive1" : 4
+   }
+}
diff --git 
a/src/test/rules_cfgs/infer-node-affinity-for-positive-resource-affinity-rules.cfg.expect
 
b/src/test/rules_cfgs/infer-node-affinity-for-positive-resource-affinity-rules.cfg.expect
index 33c56c62..3f5cd6d8 100644
--- 
a/src/test/rules_cfgs/infer-node-affinity-for-positive-resource-affinity-rules.cfg.expect
+++ 
b/src/test/rules_cfgs/infer-node-affinity-for-positive-resource-affinity-rules.cfg.expect
@@ -1,111 +1,111 @@
 --- Log ---
 --- Config ---
-$VAR1 = {
-          'digest' => '32ae135ef2f8bd84cd12c18af6910dce9d6bc9fa',
-          'ids' => {
-                     'do-not-infer-negative1' => {
-                                                   'nodes' => {
-                                                                'node1' => {
-                                                                             
'priority' => 0
-                                                                           },
-                                                                'node2' => {
-                                                                             
'priority' => 0
-                                                                           }
-                                                              },
-                                                   'resources' => {
-                                                                    'vm:203' 
=> 1
-                                                                  },
-                                                   'strict' => 1,
-                                                   'type' => 'node-affinity'
-                                                 },
-                     'do-not-infer-negative2' => {
-                                                   'nodes' => {
-                                                                'node3' => {
-                                                                             
'priority' => 0
-                                                                           }
-                                                              },
-                                                   'resources' => {
-                                                                    'vm:201' 
=> 1
-                                                                  },
-                                                   'type' => 'node-affinity'
-                                                 },
-                     'do-not-infer-negative3' => {
-                                                   'affinity' => 'negative',
-                                                   'resources' => {
-                                                                    'vm:201' 
=> 1,
-                                                                    'vm:203' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'do-not-infer-positive1' => {
-                                                   'affinity' => 'positive',
-                                                   'resources' => {
-                                                                    'vm:101' 
=> 1,
-                                                                    'vm:102' 
=> 1,
-                                                                    'vm:103' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'infer-multi-resources1' => {
-                                                   'nodes' => {
-                                                                'node1' => {
-                                                                             
'priority' => 0
-                                                                           },
-                                                                'node3' => {
-                                                                             
'priority' => 0
-                                                                           }
-                                                              },
-                                                   'resources' => {
-                                                                    'vm:401' 
=> 1,
-                                                                    'vm:402' 
=> 1,
-                                                                    'vm:403' 
=> 1,
-                                                                    'vm:404' 
=> 1,
-                                                                    'vm:405' 
=> 1
-                                                                  },
-                                                   'strict' => 1,
-                                                   'type' => 'node-affinity'
-                                                 },
-                     'infer-multi-resources2' => {
-                                                   'affinity' => 'positive',
-                                                   'resources' => {
-                                                                    'vm:401' 
=> 1,
-                                                                    'vm:402' 
=> 1,
-                                                                    'vm:403' 
=> 1,
-                                                                    'vm:404' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'infer-single-resource1' => {
-                                                   'nodes' => {
-                                                                'node3' => {
-                                                                             
'priority' => 0
-                                                                           }
-                                                              },
-                                                   'resources' => {
-                                                                    'vm:301' 
=> 1,
-                                                                    'vm:302' 
=> 1,
-                                                                    'vm:303' 
=> 1
-                                                                  },
-                                                   'type' => 'node-affinity'
-                                                 },
-                     'infer-single-resource2' => {
-                                                   'affinity' => 'positive',
-                                                   'resources' => {
-                                                                    'vm:301' 
=> 1,
-                                                                    'vm:302' 
=> 1,
-                                                                    'vm:303' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 }
-                   },
-          'order' => {
-                       'do-not-infer-negative1' => 2,
-                       'do-not-infer-negative2' => 3,
-                       'do-not-infer-negative3' => 4,
-                       'do-not-infer-positive1' => 1,
-                       'infer-multi-resources1' => 7,
-                       'infer-multi-resources2' => 8,
-                       'infer-single-resource1' => 5,
-                       'infer-single-resource2' => 6
-                     }
-        };
+{
+   "digest" : "32ae135ef2f8bd84cd12c18af6910dce9d6bc9fa",
+   "ids" : {
+      "do-not-infer-negative1" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 0
+            },
+            "node2" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:203" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      },
+      "do-not-infer-negative2" : {
+         "nodes" : {
+            "node3" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:201" : 1
+         },
+         "type" : "node-affinity"
+      },
+      "do-not-infer-negative3" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:201" : 1,
+            "vm:203" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-infer-positive1" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1,
+            "vm:103" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-multi-resources1" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 0
+            },
+            "node3" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:401" : 1,
+            "vm:402" : 1,
+            "vm:403" : 1,
+            "vm:404" : 1,
+            "vm:405" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      },
+      "infer-multi-resources2" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:401" : 1,
+            "vm:402" : 1,
+            "vm:403" : 1,
+            "vm:404" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-single-resource1" : {
+         "nodes" : {
+            "node3" : {
+               "priority" : 0
+            }
+         },
+         "resources" : {
+            "vm:301" : 1,
+            "vm:302" : 1,
+            "vm:303" : 1
+         },
+         "type" : "node-affinity"
+      },
+      "infer-single-resource2" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:301" : 1,
+            "vm:302" : 1,
+            "vm:303" : 1
+         },
+         "type" : "resource-affinity"
+      }
+   },
+   "order" : {
+      "do-not-infer-negative1" : 2,
+      "do-not-infer-negative2" : 3,
+      "do-not-infer-negative3" : 4,
+      "do-not-infer-positive1" : 1,
+      "infer-multi-resources1" : 7,
+      "infer-multi-resources2" : 8,
+      "infer-single-resource1" : 5,
+      "infer-single-resource2" : 6
+   }
+}
diff --git 
a/src/test/rules_cfgs/merge-and-infer-implicit-negative-resource-affinity-rules.cfg.expect
 
b/src/test/rules_cfgs/merge-and-infer-implicit-negative-resource-affinity-rules.cfg.expect
index 876c2030..0002dc2a 100644
--- 
a/src/test/rules_cfgs/merge-and-infer-implicit-negative-resource-affinity-rules.cfg.expect
+++ 
b/src/test/rules_cfgs/merge-and-infer-implicit-negative-resource-affinity-rules.cfg.expect
@@ -1,73 +1,73 @@
 --- Log ---
 --- Config ---
-$VAR1 = {
-          'digest' => '5695bd62a65966a275a62a01d2d8fbc370d91668',
-          'ids' => {
-                     
'_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:101-vm:105'
 => {
-                                                                               
                                          'affinity' => 'negative',
-                                                                               
                                          'resources' => {
-                                                                               
                                                           'vm:101' => 1,
-                                                                               
                                                           'vm:105' => 1
-                                                                               
                                                         },
-                                                                               
                                          'type' => 'resource-affinity'
-                                                                               
                                        },
-                     
'_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:102-vm:104'
 => {
-                                                                               
                                          'affinity' => 'negative',
-                                                                               
                                          'resources' => {
-                                                                               
                                                           'vm:102' => 1,
-                                                                               
                                                           'vm:104' => 1
-                                                                               
                                                         },
-                                                                               
                                          'type' => 'resource-affinity'
-                                                                               
                                        },
-                     
'_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:103-vm:104'
 => {
-                                                                               
                                          'affinity' => 'negative',
-                                                                               
                                          'resources' => {
-                                                                               
                                                           'vm:103' => 1,
-                                                                               
                                                           'vm:104' => 1
-                                                                               
                                                         },
-                                                                               
                                          'type' => 'resource-affinity'
-                                                                               
                                        },
-                     
'_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:103-vm:105'
 => {
-                                                                               
                                          'affinity' => 'negative',
-                                                                               
                                          'resources' => {
-                                                                               
                                                           'vm:103' => 1,
-                                                                               
                                                           'vm:105' => 1
-                                                                               
                                                         },
-                                                                               
                                          'type' => 'resource-affinity'
-                                                                               
                                        },
-                     
'_merged-infer-connected-positive1-infer-connected-positive2' => {
-                                                                               
         'affinity' => 'positive',
-                                                                               
         'resources' => {
-                                                                               
                          'vm:101' => 1,
-                                                                               
                          'vm:102' => 1,
-                                                                               
                          'vm:103' => 1
-                                                                               
                        },
-                                                                               
         'type' => 'resource-affinity'
-                                                                               
       },
-                     'infer-connected-negative1' => {
-                                                      'affinity' => 'negative',
-                                                      'resources' => {
-                                                                       
'vm:101' => 1,
-                                                                       
'vm:104' => 1
-                                                                     },
-                                                      'type' => 
'resource-affinity'
-                                                    },
-                     'infer-connected-negative2' => {
-                                                      'affinity' => 'negative',
-                                                      'resources' => {
-                                                                       
'vm:102' => 1,
-                                                                       
'vm:105' => 1
-                                                                     },
-                                                      'type' => 
'resource-affinity'
-                                                    }
-                   },
-          'order' => {
-                       
'_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:101-vm:105'
 => 2,
-                       
'_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:102-vm:104'
 => 2,
-                       
'_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:103-vm:104'
 => 2,
-                       
'_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:103-vm:105'
 => 2,
-                       
'_merged-infer-connected-positive1-infer-connected-positive2' => 1,
-                       'infer-connected-negative1' => 3,
-                       'infer-connected-negative2' => 4
-                     }
-        };
+{
+   "digest" : "5695bd62a65966a275a62a01d2d8fbc370d91668",
+   "ids" : {
+      
"_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:101-vm:105"
 : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:105" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      
"_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:102-vm:104"
 : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:102" : 1,
+            "vm:104" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      
"_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:103-vm:104"
 : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:103" : 1,
+            "vm:104" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      
"_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:103-vm:105"
 : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:103" : 1,
+            "vm:105" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "_merged-infer-connected-positive1-infer-connected-positive2" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1,
+            "vm:103" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-connected-negative1" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:104" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "infer-connected-negative2" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:102" : 1,
+            "vm:105" : 1
+         },
+         "type" : "resource-affinity"
+      }
+   },
+   "order" : {
+      
"_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:101-vm:105"
 : 2,
+      
"_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:102-vm:104"
 : 2,
+      
"_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:103-vm:104"
 : 2,
+      
"_implicit-negative-_merged-infer-connected-positive1-infer-connected-positive2-vm:103-vm:105"
 : 2,
+      "_merged-infer-connected-positive1-infer-connected-positive2" : 1,
+      "infer-connected-negative1" : 3,
+      "infer-connected-negative2" : 4
+   }
+}
diff --git 
a/src/test/rules_cfgs/merge-connected-positive-resource-affinity-rules.cfg.expect
 
b/src/test/rules_cfgs/merge-connected-positive-resource-affinity-rules.cfg.expect
index e57a792b..935a4f7c 100644
--- 
a/src/test/rules_cfgs/merge-connected-positive-resource-affinity-rules.cfg.expect
+++ 
b/src/test/rules_cfgs/merge-connected-positive-resource-affinity-rules.cfg.expect
@@ -1,70 +1,70 @@
 --- Log ---
 --- Config ---
-$VAR1 = {
-          'digest' => '920d9caac206fc0dd893753bfb2cab3e6d6a9b9b',
-          'ids' => {
-                     
'_merged-merge-positive1-merge-positive3-merge-positive4-merge-positive2-merge-positive5'
 => {
-                                                                               
                                     'affinity' => 'positive',
-                                                                               
                                     'resources' => {
-                                                                               
                                                      'vm:301' => 1,
-                                                                               
                                                      'vm:302' => 1,
-                                                                               
                                                      'vm:303' => 1,
-                                                                               
                                                      'vm:304' => 1,
-                                                                               
                                                      'vm:305' => 1,
-                                                                               
                                                      'vm:306' => 1,
-                                                                               
                                                      'vm:307' => 1,
-                                                                               
                                                      'vm:308' => 1,
-                                                                               
                                                      'vm:309' => 1
-                                                                               
                                                    },
-                                                                               
                                     'type' => 'resource-affinity'
-                                                                               
                                   },
-                     'do-not-merge-negative1' => {
-                                                   'affinity' => 'negative',
-                                                   'resources' => {
-                                                                    'vm:101' 
=> 1,
-                                                                    'vm:102' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'do-not-merge-negative2' => {
-                                                   'affinity' => 'negative',
-                                                   'resources' => {
-                                                                    'vm:102' 
=> 1,
-                                                                    'vm:103' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'do-not-merge-negative3' => {
-                                                   'affinity' => 'negative',
-                                                   'resources' => {
-                                                                    'vm:104' 
=> 1,
-                                                                    'vm:105' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'do-not-merge-positive1' => {
-                                                   'affinity' => 'positive',
-                                                   'resources' => {
-                                                                    'vm:201' 
=> 1,
-                                                                    'vm:202' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 },
-                     'do-not-merge-positive2' => {
-                                                   'affinity' => 'positive',
-                                                   'resources' => {
-                                                                    'vm:203' 
=> 1,
-                                                                    'vm:204' 
=> 1
-                                                                  },
-                                                   'type' => 
'resource-affinity'
-                                                 }
-                   },
-          'order' => {
-                       
'_merged-merge-positive1-merge-positive3-merge-positive4-merge-positive2-merge-positive5'
 => 6,
-                       'do-not-merge-negative1' => 1,
-                       'do-not-merge-negative2' => 2,
-                       'do-not-merge-negative3' => 3,
-                       'do-not-merge-positive1' => 4,
-                       'do-not-merge-positive2' => 5
-                     }
-        };
+{
+   "digest" : "920d9caac206fc0dd893753bfb2cab3e6d6a9b9b",
+   "ids" : {
+      
"_merged-merge-positive1-merge-positive3-merge-positive4-merge-positive2-merge-positive5"
 : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:301" : 1,
+            "vm:302" : 1,
+            "vm:303" : 1,
+            "vm:304" : 1,
+            "vm:305" : 1,
+            "vm:306" : 1,
+            "vm:307" : 1,
+            "vm:308" : 1,
+            "vm:309" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-merge-negative1" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-merge-negative2" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:102" : 1,
+            "vm:103" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-merge-negative3" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:104" : 1,
+            "vm:105" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-merge-positive1" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:201" : 1,
+            "vm:202" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "do-not-merge-positive2" : {
+         "affinity" : "positive",
+         "resources" : {
+            "vm:203" : 1,
+            "vm:204" : 1
+         },
+         "type" : "resource-affinity"
+      }
+   },
+   "order" : {
+      
"_merged-merge-positive1-merge-positive3-merge-positive4-merge-positive2-merge-positive5"
 : 6,
+      "do-not-merge-negative1" : 1,
+      "do-not-merge-negative2" : 2,
+      "do-not-merge-negative3" : 3,
+      "do-not-merge-positive1" : 4,
+      "do-not-merge-positive2" : 5
+   }
+}
diff --git 
a/src/test/rules_cfgs/multi-priority-node-affinity-with-resource-affinity-rules.cfg.expect
 
b/src/test/rules_cfgs/multi-priority-node-affinity-with-resource-affinity-rules.cfg.expect
index 92d12929..e2d5ee00 100644
--- 
a/src/test/rules_cfgs/multi-priority-node-affinity-with-resource-affinity-rules.cfg.expect
+++ 
b/src/test/rules_cfgs/multi-priority-node-affinity-with-resource-affinity-rules.cfg.expect
@@ -4,45 +4,45 @@ Drop rule 'vm101-vm102-should-be-on-node1-or-node2', because 
resources are in a
 Drop rule 'vm201-vm202-must-be-kept-together', because resources are in node 
affinity rules with multiple priorities.
 Drop rule 'vm201-vm202-must-be-on-node1-or-node2', because resources are in a 
resource affinity rule and cannot be in a node affinity rule with multiple 
priorities.
 --- Config ---
-$VAR1 = {
-          'digest' => '722a98914555f296af0916c980a9d6c780f5f072',
-          'ids' => {
-                     'vm301-must-be-on-node1-with-prio-1' => {
-                                                               'nodes' => {
-                                                                            
'node1' => {
-                                                                               
          'priority' => 1
-                                                                               
        }
-                                                                          },
-                                                               'resources' => {
-                                                                               
 'vm:301' => 1
-                                                                              
},
-                                                               'strict' => 1,
-                                                               'type' => 
'node-affinity'
-                                                             },
-                     'vm301-vm302-must-be-kept-together' => {
-                                                              'affinity' => 
'negative',
-                                                              'resources' => {
-                                                                               
'vm:301' => 1,
-                                                                               
'vm:302' => 1
-                                                                             },
-                                                              'type' => 
'resource-affinity'
-                                                            },
-                     'vm302-must-be-on-node2-with-prio-2' => {
-                                                               'nodes' => {
-                                                                            
'node2' => {
-                                                                               
          'priority' => 2
-                                                                               
        }
-                                                                          },
-                                                               'resources' => {
-                                                                               
 'vm:302' => 1
-                                                                              
},
-                                                               'strict' => 1,
-                                                               'type' => 
'node-affinity'
-                                                             }
-                   },
-          'order' => {
-                       'vm301-must-be-on-node1-with-prio-1' => 5,
-                       'vm301-vm302-must-be-kept-together' => 7,
-                       'vm302-must-be-on-node2-with-prio-2' => 6
-                     }
-        };
+{
+   "digest" : "722a98914555f296af0916c980a9d6c780f5f072",
+   "ids" : {
+      "vm301-must-be-on-node1-with-prio-1" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 1
+            }
+         },
+         "resources" : {
+            "vm:301" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      },
+      "vm301-vm302-must-be-kept-together" : {
+         "affinity" : "negative",
+         "resources" : {
+            "vm:301" : 1,
+            "vm:302" : 1
+         },
+         "type" : "resource-affinity"
+      },
+      "vm302-must-be-on-node2-with-prio-2" : {
+         "nodes" : {
+            "node2" : {
+               "priority" : 2
+            }
+         },
+         "resources" : {
+            "vm:302" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      }
+   },
+   "order" : {
+      "vm301-must-be-on-node1-with-prio-1" : 5,
+      "vm301-vm302-must-be-kept-together" : 7,
+      "vm302-must-be-on-node2-with-prio-2" : 6
+   }
+}
diff --git 
a/src/test/rules_cfgs/multiple-resource-refs-in-node-affinity-rules.cfg.expect 
b/src/test/rules_cfgs/multiple-resource-refs-in-node-affinity-rules.cfg.expect
index 3fd0c9ca..30633d8c 100644
--- 
a/src/test/rules_cfgs/multiple-resource-refs-in-node-affinity-rules.cfg.expect
+++ 
b/src/test/rules_cfgs/multiple-resource-refs-in-node-affinity-rules.cfg.expect
@@ -3,61 +3,61 @@ Drop rule 'same-resource1', because resource 'vm:201' is 
already used in another
 Drop rule 'same-resource2', because resource 'vm:201' is already used in 
another node affinity rule.
 Drop rule 'same-resource3', because resource 'vm:201' is already used in 
another node affinity rule.
 --- Config ---
-$VAR1 = {
-          'digest' => '5865d23b1a342e7f8cfa68bd0e1da556ca8d28a6',
-          'ids' => {
-                     'no-same-resource1' => {
-                                              'nodes' => {
-                                                           'node1' => {
-                                                                        
'priority' => 0
-                                                                      },
-                                                           'node2' => {
-                                                                        
'priority' => 2
-                                                                      }
-                                                         },
-                                              'resources' => {
-                                                               'vm:101' => 1,
-                                                               'vm:102' => 1,
-                                                               'vm:103' => 1
-                                                             },
-                                              'strict' => 0,
-                                              'type' => 'node-affinity'
-                                            },
-                     'no-same-resource2' => {
-                                              'nodes' => {
-                                                           'node1' => {
-                                                                        
'priority' => 0
-                                                                      },
-                                                           'node2' => {
-                                                                        
'priority' => 2
-                                                                      }
-                                                         },
-                                              'resources' => {
-                                                               'vm:104' => 1,
-                                                               'vm:105' => 1
-                                                             },
-                                              'strict' => 0,
-                                              'type' => 'node-affinity'
-                                            },
-                     'no-same-resource3' => {
-                                              'nodes' => {
-                                                           'node1' => {
-                                                                        
'priority' => 0
-                                                                      },
-                                                           'node2' => {
-                                                                        
'priority' => 2
-                                                                      }
-                                                         },
-                                              'resources' => {
-                                                               'vm:106' => 1
-                                                             },
-                                              'strict' => 1,
-                                              'type' => 'node-affinity'
-                                            }
-                   },
-          'order' => {
-                       'no-same-resource1' => 1,
-                       'no-same-resource2' => 2,
-                       'no-same-resource3' => 3
-                     }
-        };
+{
+   "digest" : "5865d23b1a342e7f8cfa68bd0e1da556ca8d28a6",
+   "ids" : {
+      "no-same-resource1" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 0
+            },
+            "node2" : {
+               "priority" : 2
+            }
+         },
+         "resources" : {
+            "vm:101" : 1,
+            "vm:102" : 1,
+            "vm:103" : 1
+         },
+         "strict" : 0,
+         "type" : "node-affinity"
+      },
+      "no-same-resource2" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 0
+            },
+            "node2" : {
+               "priority" : 2
+            }
+         },
+         "resources" : {
+            "vm:104" : 1,
+            "vm:105" : 1
+         },
+         "strict" : 0,
+         "type" : "node-affinity"
+      },
+      "no-same-resource3" : {
+         "nodes" : {
+            "node1" : {
+               "priority" : 0
+            },
+            "node2" : {
+               "priority" : 2
+            }
+         },
+         "resources" : {
+            "vm:106" : 1
+         },
+         "strict" : 1,
+         "type" : "node-affinity"
+      }
+   },
+   "order" : {
+      "no-same-resource1" : 1,
+      "no-same-resource2" : 2,
+      "no-same-resource3" : 3
+   }
+}
diff --git a/src/test/test_rules_config.pl b/src/test/test_rules_config.pl
index 3c2dac4b..edfcb3b7 100755
--- a/src/test/test_rules_config.pl
+++ b/src/test/test_rules_config.pl
@@ -6,11 +6,11 @@ use Getopt::Long;
 
 use lib qw(..);
 
+use JSON;
+
 use Test::More;
 use Test::MockModule;
 
-use Data::Dumper;
-
 use PVE::HA::Rules;
 use PVE::HA::Rules::NodeAffinity;
 use PVE::HA::Rules::ResourceAffinity;
@@ -56,10 +56,7 @@ sub check_cfg {
     my $messages = PVE::HA::Rules->transform($cfg, $nodes);
     print $_ for @$messages;
     print "--- Config ---\n";
-    {
-        local $Data::Dumper::Sortkeys = 1;
-        print Dumper($cfg);
-    }
+    print to_json($cfg, { canonical => 1, pretty => 1, utf8 => 1 });
 
     select(STDOUT);
 }
-- 
2.47.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to