diff --git a/tests/depcheck_scenarios/scenarios/pass/08_recommends_present.yaml b/tests/depcheck_scenarios/scenarios/pass/08_recommends_present.yaml
new file mode 100644
--- /dev/null
+++ b/tests/depcheck_scenarios/scenarios/pass/08_recommends_present.yaml
@@ -0,0 +1,13 @@
+name: weak dependency recommends
+description:
+    This is a simple case in which the rpm recommends foo as a dep
+expected_outcome: pass
+
+current_repo:
+  -
+    envra: foo-0.1-1.fc19.noarch
+
+update_repo:
+  -
+    envra: bar-0.1-1.fc19.noarch
+    recommends: foo
diff --git a/tests/depcheck_scenarios/scenarios/pass/09_recommends_not_present.yaml b/tests/depcheck_scenarios/scenarios/pass/09_recommends_not_present.yaml
new file mode 100644
--- /dev/null
+++ b/tests/depcheck_scenarios/scenarios/pass/09_recommends_not_present.yaml
@@ -0,0 +1,13 @@
+name: weak dependency recommends not present
+description:
+    This is a simple case in which the rpm recommends foo as a dep
+expected_outcome: pass
+
+current_repo:
+  -
+    envra: bar-0.1-0.fc19.noarch
+
+update_repo:
+  -
+    envra: bar-0.1-1.fc19.noarch
+    recommends: foo
diff --git a/tests/depcheck_scenarios/scenarios/pass/10_suggests_present.yaml b/tests/depcheck_scenarios/scenarios/pass/10_suggests_present.yaml
new file mode 100644
--- /dev/null
+++ b/tests/depcheck_scenarios/scenarios/pass/10_suggests_present.yaml
@@ -0,0 +1,13 @@
+name: weak dependency suggests
+description:
+    This is a simple case in which the rpm suggests foo as a dep
+expected_outcome: pass
+
+current_repo:
+  -
+    envra: foo-0.1-1.fc19.noarch
+
+update_repo:
+  -
+    envra: bar-0.1-1.fc19.noarch
+    suggests: foo
diff --git a/tests/depcheck_scenarios/scenarios/pass/11_suggests_not_present.yaml b/tests/depcheck_scenarios/scenarios/pass/11_suggests_not_present.yaml
new file mode 100644
--- /dev/null
+++ b/tests/depcheck_scenarios/scenarios/pass/11_suggests_not_present.yaml
@@ -0,0 +1,13 @@
+name: weak dependency suggests not present
+description:
+    This is a simple case in which the rpm suggests foo as a dep
+expected_outcome: pass
+
+current_repo:
+  -
+    envra: bar-0.1-0.fc19.noarch
+
+update_repo:
+  -
+    envra: bar-0.1-1.fc19.noarch
+    suggests: foo
diff --git a/tests/depcheck_scenarios/scenarios/pass/12_supplements_present.yaml b/tests/depcheck_scenarios/scenarios/pass/12_supplements_present.yaml
new file mode 100644
--- /dev/null
+++ b/tests/depcheck_scenarios/scenarios/pass/12_supplements_present.yaml
@@ -0,0 +1,13 @@
+name: weak dependency supplements
+description:
+    This is a simple case in which the rpm supplements foo
+expected_outcome: pass
+
+current_repo:
+  -
+    envra: baz-0.1-1.fc19.noarch
+
+update_repo:
+  -
+    envra: bar-0.1-1.fc19.noarch
+    supplements: foo
diff --git a/tests/depcheck_scenarios/scenarios/pass/13_supplements_not_present.yaml b/tests/depcheck_scenarios/scenarios/pass/13_supplements_not_present.yaml
new file mode 100644
--- /dev/null
+++ b/tests/depcheck_scenarios/scenarios/pass/13_supplements_not_present.yaml
@@ -0,0 +1,13 @@
+name: weak dependency supplements not present
+description:
+    This is a simple case in which the rpm supplements foo
+expected_outcome: pass
+
+current_repo:
+  -
+    envra: bar-0.1-1.fc19.noarch
+
+update_repo:
+  -
+    envra: baz-0.1-1.fc19.noarch
+    supplements: foo
diff --git a/tests/depcheck_scenarios/yaml_to_repos.py b/tests/depcheck_scenarios/yaml_to_repos.py
--- a/tests/depcheck_scenarios/yaml_to_repos.py
+++ b/tests/depcheck_scenarios/yaml_to_repos.py
@@ -92,6 +92,10 @@
     provides = package.get('provides', None)
     conflicts = package.get('conflicts', None)
     obsoletes = package.get('obsoletes', None)
+    recommends = package.get('recommends', None)
+    suggests = package.get('suggests', None)
+    supplements = package.get('supplements', None)
+    enhances = package.get('enhances', None)
 
     if requires:
         if isinstance(requires, list):
@@ -99,6 +103,25 @@
                 p.add_requires(require)
         else:
             p.add_requires(requires)
+    if recommends:
+        if isinstance(recommends, list):
+            for recommendation in recommends:
+                p.add_recommends(recommendation)
+        else:
+            p.add_recommends(recommends)
+    if suggests:
+        if isinstance(suggests, list):
+            for suggestion in suggests:
+                p.add_suggests(suggestion)
+        else:
+            p.add_suggests(suggests)
+    if supplements:
+        if isinstance(supplements, list):
+            for supplement in supplements:
+                p.add_supplements(supplement)
+        else:
+            p.add_supplements(supplements)
+
     if provides:
         if isinstance(provides, list):
             for provide in provides:

