All of lore.kernel.org
 help / color / mirror / Atom feed
* [review request] [PATCH 00/11] ed/toaster/fix-orm-tests
@ 2015-08-06  7:27 Ed Bartosh
  2015-08-06  7:27 ` [PATCH 01/11] toaster: remove prints from the test code Ed Bartosh
                   ` (10 more replies)
  0 siblings, 11 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Hi,

This patchset contains fixes and code cleanups for Toaster ORM tests.
Some tests were completely rewritten.

Now all 7 test cases are passed and pylint score is 10.

The following changes since commit a8b723498c9a7106210db140452886894494b4d6:

  bitbake: cooker: Resolve file monitoring race issues when using memres bitbake (2015-08-03 07:36:25 +0100)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib ed/toaster/fix-orm-tests
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=ed/toaster/fix-orm-tests

Ed Bartosh (11):
  toaster: remove prints from the test code
  toaster: fix test_build_layerversion test case
  toaster: rewrite test for LayerSource model
  toaster: rewrite LILSUpdateTestCase
  toaster: reformat LayerVersionEquivalenceTestCase
  toaster: reuse common code
  toaster: remove duplicated code
  toaster: simplify testcase code
  toaster: add header to orm/test.py
  toaster: remove ProjectLVSelectionTestCase
  toaster: move code from setup_lv_tests to setUp

 bitbake/lib/toaster/orm/tests.py | 272 ++++++++++++++++++++-------------------
 1 file changed, 143 insertions(+), 129 deletions(-)

--
Regards,
Ed



^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 01/11] toaster: remove prints from the test code
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 02/11] toaster: fix test_build_layerversion test case Ed Bartosh
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Removed prints as they make test output harder to understand.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index d4d97ee..df9a2a9 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -18,9 +18,6 @@ class LayerSourceVerifyInheritanceSaveLoad(TestCase):
         lils = LayerSource.objects.create(name = "a2", sourcetype = LayerSource.TYPE_LAYERINDEX, apiurl = "")
         imls = LayerSource.objects.create(name = "a3", sourcetype = LayerSource.TYPE_IMPORTED, apiurl = "")
 
-        import pprint
-        pprint.pprint([(x.__class__,vars(x)) for x in LayerSource.objects.all()])
-
         self.assertTrue(True in map(lambda x: isinstance(x, LocalLayerSource), LayerSource.objects.all()))
         self.assertTrue(True in map(lambda x: isinstance(x, LayerIndexLayerSource), LayerSource.objects.all()))
         self.assertTrue(True in map(lambda x: isinstance(x, ImportedLayerSource), LayerSource.objects.all()))
@@ -42,7 +39,6 @@ class LILSUpdateTestCase(TransactionTestCase):
     def test_update(self):
         layer_index_url = os.getenv("TTS_LAYER_INDEX")
         if layer_index_url == None:
-            print "Using layers.openembedded.org for layer index. override with TTS_LAYER_INDEX enviroment variable"
             layer_index_url = "http://layers.openembedded.org/"
 
         lils = LayerSource.objects.create(name = "b1", sourcetype = LayerSource.TYPE_LAYERINDEX, apiurl = layer_index_url + "layerindex/api/")
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 02/11] toaster: fix test_build_layerversion test case
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
  2015-08-06  7:27 ` [PATCH 01/11] toaster: remove prints from the test code Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 03/11] toaster: rewrite test for LayerSource model Ed Bartosh
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

The reason of test failure is that Django querysets are
different even if they contain the same objects.

Fixed by converting querysets into lists.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index df9a2a9..8bb5dec 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -117,7 +117,7 @@ class LayerVersionEquivalenceTestCase(TestCase):
         # getting the build layerversion equivalent list must return the same list as the original layer
         build_equivalent_list = self.layerversion_build.get_equivalents_wpriority(self.project)
 
-        self.assertTrue(equivalent_list == build_equivalent_list, "%s is not %s" % (equivalent_list, build_equivalent_list))
+        self.assertEqual(list(equivalent_list), list(build_equivalent_list))
 
 class ProjectLVSelectionTestCase(TestCase):
     def setUp(self):
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 03/11] toaster: rewrite test for LayerSource model
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
  2015-08-06  7:27 ` [PATCH 01/11] toaster: remove prints from the test code Ed Bartosh
  2015-08-06  7:27 ` [PATCH 02/11] toaster: fix test_build_layerversion test case Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 04/11] toaster: rewrite LILSUpdateTestCase Ed Bartosh
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Rewritten LayerSourceVerifyInheritanceSaveLoad class from scratch.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 30 ++++++++++++++++++------------
 1 file changed, 18 insertions(+), 12 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index 8bb5dec..b0c01db 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -6,28 +6,34 @@ from orm.models import Project, Build, Layer, Layer_Version, Branch, ProjectLaye
 from orm.models import Release, ReleaseLayerSourcePriority, BitbakeVersion
 
 from django.utils import timezone
+from django.db import IntegrityError
 
 import os
 
 # set TTS_LAYER_INDEX to the base url to use a different instance of the layer index
 
-# tests to verify inheritance for the LayerSource proxy-inheritance classes
 class LayerSourceVerifyInheritanceSaveLoad(TestCase):
+    """
+    Tests to verify inheritance for the LayerSource proxy-inheritance classes.
+    """
     def test_object_creation(self):
-        lls = LayerSource.objects.create(name = "a1", sourcetype = LayerSource.TYPE_LOCAL, apiurl = "")
-        lils = LayerSource.objects.create(name = "a2", sourcetype = LayerSource.TYPE_LAYERINDEX, apiurl = "")
-        imls = LayerSource.objects.create(name = "a3", sourcetype = LayerSource.TYPE_IMPORTED, apiurl = "")
+        """Test LayerSource object creation."""
+        for name, sourcetype in [("a1", LayerSource.TYPE_LOCAL),
+                                 ("a2", LayerSource.TYPE_LAYERINDEX),
+                                 ("a3", LayerSource.TYPE_IMPORTED)]:
+            LayerSource.objects.create(name=name, sourcetype=sourcetype)
 
-        self.assertTrue(True in map(lambda x: isinstance(x, LocalLayerSource), LayerSource.objects.all()))
-        self.assertTrue(True in map(lambda x: isinstance(x, LayerIndexLayerSource), LayerSource.objects.all()))
-        self.assertTrue(True in map(lambda x: isinstance(x, ImportedLayerSource), LayerSource.objects.all()))
+        objects = LayerSource.objects.all()
+        self.assertTrue(isinstance(objects[0], LocalLayerSource))
+        self.assertTrue(isinstance(objects[1], LayerIndexLayerSource))
+        self.assertTrue(isinstance(objects[2], ImportedLayerSource))
 
     def test_duplicate_error(self):
-        def duplicate():
-            LayerSource.objects.create(name = "a1", sourcetype = LayerSource.TYPE_LOCAL, apiurl = "")
-            LayerSource.objects.create(name = "a1", sourcetype = LayerSource.TYPE_LOCAL, apiurl = "")
-
-        self.assertRaises(Exception, duplicate)
+        """Test creation of duplicate LayerSource objects."""
+        stype = LayerSource.TYPE_LOCAL
+        LayerSource.objects.create(name="a1", sourcetype=stype)
+        with self.assertRaises(IntegrityError):
+            LayerSource.objects.create(name="a1", sourcetype=stype)
 
 
 class LILSUpdateTestCase(TransactionTestCase):
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 04/11] toaster: rewrite LILSUpdateTestCase
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
                   ` (2 preceding siblings ...)
  2015-08-06  7:27 ` [PATCH 03/11] toaster: rewrite test for LayerSource model Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 05/11] toaster: reformat LayerVersionEquivalenceTestCase Ed Bartosh
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Reformatted code. Added docstings.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 30 +++++++++++++++++-------------
 1 file changed, 17 insertions(+), 13 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index b0c01db..3384f01 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -37,22 +37,26 @@ class LayerSourceVerifyInheritanceSaveLoad(TestCase):
 
 
 class LILSUpdateTestCase(TransactionTestCase):
+    """Test Layer Source update."""
+
     def setUp(self):
-        # create release
-        bbv = BitbakeVersion.objects.create(name="master", giturl="git://git.openembedded.org/bitbake")
-        release = Release.objects.create(name="default-release", bitbake_version = bbv, branch_name = "master")
+        """Create release."""
+        bbv = BitbakeVersion.objects.create(\
+                  name="master", giturl="git://git.openembedded.org/bitbake")
+        Release.objects.create(name="default-release", bitbake_version=bbv,
+                               branch_name="master")
 
     def test_update(self):
-        layer_index_url = os.getenv("TTS_LAYER_INDEX")
-        if layer_index_url == None:
-            layer_index_url = "http://layers.openembedded.org/"
-
-        lils = LayerSource.objects.create(name = "b1", sourcetype = LayerSource.TYPE_LAYERINDEX, apiurl = layer_index_url + "layerindex/api/")
-        lils.update()
-
-        # run asserts
-        self.assertTrue(lils.branch_set.all().count() > 0, "update() needs to fetch some branches")
-
+        """Check if LayerSource.update can fetch branches."""
+        url = os.getenv("TTS_LAYER_INDEX",
+                        default="http://layers.openembedded.org/")
+
+        lsobj = LayerSource.objects.create(\
+                    name="b1", sourcetype=LayerSource.TYPE_LAYERINDEX,
+                    apiurl=url + "layerindex/api/")
+        lsobj.update()
+        self.assertTrue(lsobj.branch_set.all().count() > 0,
+                        "no branches fetched")
 
 
 # tests to verify layer_version priority selection
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 05/11] toaster: reformat LayerVersionEquivalenceTestCase
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
                   ` (3 preceding siblings ...)
  2015-08-06  7:27 ` [PATCH 04/11] toaster: rewrite LILSUpdateTestCase Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 06/11] toaster: reuse common code Ed Bartosh
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Reformatted to increase readability and satisfy pylint.
Added docstings.
Shortened variable names.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 124 +++++++++++++++++++++++----------------
 1 file changed, 74 insertions(+), 50 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index 3384f01..75783ce 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -59,75 +59,99 @@ class LILSUpdateTestCase(TransactionTestCase):
                         "no branches fetched")
 
 
-# tests to verify layer_version priority selection
 class LayerVersionEquivalenceTestCase(TestCase):
-    def setUp(self):
-        # create layer sources
-        ls = LayerSource.objects.create(name = "dummy-layersource", sourcetype = LayerSource.TYPE_LOCAL)
+    """Verify Layer_Version priority selection."""
 
-        # create bitbake version
-        bbv = BitbakeVersion.objects.create(name="master", giturl="git://git.openembedded.org/bitbake")
+    def setUp(self):
+        """Create required objects."""
+        # create layer source
+        lsrc = LayerSource.objects.create(name="dummy-layersource",
+                                          sourcetype=LayerSource.TYPE_LOCAL)
         # create release
-        release = Release.objects.create(name="default-release", bitbake_version = bbv, branch_name = "master")
+        bbv = BitbakeVersion.objects.create(\
+                  name="master", giturl="git://git.openembedded.org/bitbake")
+        self.release = Release.objects.create(name="default-release",
+                                              bitbake_version=bbv,
+                                              branch_name="master")
         # attach layer source to release
-        ReleaseLayerSourcePriority.objects.create(release = release, layer_source = ls, priority = 1)
+        ReleaseLayerSourcePriority.objects.create(\
+            release=self.release, layer_source=lsrc, priority=1)
 
-
-        # create layer attach
-        self.layer = Layer.objects.create(name="meta-testlayer", layer_source = ls)
-        # create branch
-        self.branch = Branch.objects.create(name="master", layer_source = ls)
-
-        # set a layer version for the layer on the specified branch
-        self.layerversion = Layer_Version.objects.create(layer = self.layer, layer_source = ls, up_branch = self.branch)
+        # create a layer version for the layer on the specified branch
+        self.layer = Layer.objects.create(name="meta-testlayer",
+                                          layer_source=lsrc)
+        self.branch = Branch.objects.create(name="master", layer_source=lsrc)
+        self.lver = Layer_Version.objects.create(\
+            layer=self.layer, layer_source=lsrc, up_branch=self.branch)
 
         # create spoof layer that should not appear in the search results
-        Layer_Version.objects.create(layer = Layer.objects.create(name="meta-notvalid", layer_source = ls), layer_source = ls, up_branch = self.branch)
+        layer = Layer.objects.create(name="meta-notvalid", layer_source=lsrc)
+        Layer_Version.objects.create(layer=layer, layer_source=lsrc,
+                                     up_branch=self.branch)
 
-
-        # create a project ...
-        self.project = Project.objects.create_project(name="test-project", release = release)
-        # ... and set it up with a single layer version
-        ProjectLayer.objects.create(project=  self.project, layercommit = self.layerversion)
+        # create project and project layer
+        self.project = Project.objects.create_project(name="test-project",
+                                                      release=self.release)
+        ProjectLayer.objects.create(project=self.project,
+                                    layercommit=self.lver)
 
     def test_single_layersource(self):
-        # when we have a single layer version, get_equivalents_wpriority() should return a list with just this layer_version
-        equivalent_list = self.layerversion.get_equivalents_wpriority(self.project)
-        self.assertTrue(len(equivalent_list) == 1)
-        self.assertTrue(equivalent_list[0] == self.layerversion)
+        """
+        When we have a single layer version,
+        get_equivalents_wpriority() should return a list with
+        just this layer_version.
+        """
+        equivqs = self.lver.get_equivalents_wpriority(self.project)
+        self.assertEqual(list(equivqs), [self.lver])
 
     def test_dual_layersource(self):
-        # if we have two layers with the same name, from different layer sources, we expect both layers in, in increasing priority of the layer source
-        ls2 = LayerSource.objects.create(name = "dummy-layersource2", sourcetype = LayerSource.TYPE_LOCAL, apiurl="test")
+        """
+        If we have two layers with the same name, from different layer sources,
+        we expect both layers in, in increasing priority of the layer source.
+        """
+        lsrc2 = LayerSource.objects.create(\
+                    name="dummy-layersource2",
+                    sourcetype=LayerSource.TYPE_LOCAL,
+                    apiurl="test")
 
         # assign a lower priority for the second layer source
-        Release.objects.get(name="default-release").releaselayersourcepriority_set.create(layer_source = ls2, priority = 2)
+        self.release.releaselayersourcepriority_set.create(layer_source=lsrc2,
+                                                           priority=2)
 
-        # create a new layer_version for a layer with the same name coming from the second layer source
-        self.layer2 = Layer.objects.create(name="meta-testlayer", layer_source = ls2)
-        self.layerversion2 = Layer_Version.objects.create(layer = self.layer2, layer_source = ls2, up_branch = self.branch)
+        # create a new layer_version for a layer with the same name
+        # coming from the second layer source
+        layer2 = Layer.objects.create(name="meta-testlayer",
+                                      layer_source=lsrc2)
+        lver2 = Layer_Version.objects.create(layer=layer2, layer_source=lsrc2,
+                                             up_branch=self.branch)
 
         # expect two layer versions, in the priority order
-        equivalent_list = self.layerversion.get_equivalents_wpriority(self.project)
-        self.assertTrue(len(equivalent_list) == 2)
-        self.assertTrue(equivalent_list[0] == self.layerversion2)
-        self.assertTrue(equivalent_list[1] == self.layerversion)
+        equivqs = self.lver.get_equivalents_wpriority(self.project)
+        self.assertEqual(list(equivqs), [lver2, self.lver])
 
     def test_build_layerversion(self):
-        # any layer version coming from the build should show up before any layer version coming from upstream
-        build = Build.objects.create(project = self.project, started_on = timezone.now(), completed_on = timezone.now())
-        self.layerversion_build = Layer_Version.objects.create(layer = self.layer, build = build, commit = "deadbeef")
-
-        # a build layerversion must be in the equivalence list for the original layerversion
-        equivalent_list = self.layerversion.get_equivalents_wpriority(self.project)
-        self.assertTrue(len(equivalent_list) == 2)
-        self.assertTrue(equivalent_list[0] == self.layerversion)
-        self.assertTrue(equivalent_list[1] == self.layerversion_build)
-
-        # getting the build layerversion equivalent list must return the same list as the original layer
-        build_equivalent_list = self.layerversion_build.get_equivalents_wpriority(self.project)
-
-        self.assertEqual(list(equivalent_list), list(build_equivalent_list))
+        """
+        Any layer version coming from the build should show up
+        before any layer version coming from upstream
+        """
+        build = Build.objects.create(project=self.project,
+                                     started_on=timezone.now(),
+                                     completed_on=timezone.now())
+        lvb = Layer_Version.objects.create(layer=self.layer, build=build,
+                                           commit="deadbeef")
+
+        # a build layerversion must be in the equivalence
+        # list for the original layerversion
+        equivqs = self.lver.get_equivalents_wpriority(self.project)
+        self.assertTrue(len(equivqs) == 2)
+        self.assertTrue(equivqs[0] == self.lver)
+        self.assertTrue(equivqs[1] == lvb)
+
+        # getting the build layerversion equivalent list must
+        # return the same list as the original layer
+        bequivqs = lvb.get_equivalents_wpriority(self.project)
+
+        self.assertEqual(list(equivqs), list(bequivqs))
 
 class ProjectLVSelectionTestCase(TestCase):
     def setUp(self):
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 06/11] toaster: reuse common code
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
                   ` (4 preceding siblings ...)
  2015-08-06  7:27 ` [PATCH 05/11] toaster: reformat LayerVersionEquivalenceTestCase Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 07/11] toaster: remove duplicated code Ed Bartosh
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Moved setup code of LayerVersion tests to a function
and call it from setUp methods of 2 classes.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 90 ++++++++++++++++------------------------
 1 file changed, 36 insertions(+), 54 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index 75783ce..168bafa 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -59,42 +59,45 @@ class LILSUpdateTestCase(TransactionTestCase):
                         "no branches fetched")
 
 
+def setup_lv_tests(self):
+    """Create required objects."""
+    # create layer source
+    self.lsrc = LayerSource.objects.create(name="dummy-layersource",
+                                           sourcetype=LayerSource.TYPE_LOCAL)
+    # create release
+    bbv = BitbakeVersion.objects.create(\
+              name="master", giturl="git://git.openembedded.org/bitbake")
+    self.release = Release.objects.create(name="default-release",
+                                          bitbake_version=bbv,
+                                          branch_name="master")
+    # attach layer source to release
+    ReleaseLayerSourcePriority.objects.create(\
+        release=self.release, layer_source=self.lsrc, priority=1)
+
+    # create a layer version for the layer on the specified branch
+    self.layer = Layer.objects.create(name="meta-testlayer",
+                                      layer_source=self.lsrc)
+    self.branch = Branch.objects.create(name="master", layer_source=self.lsrc)
+    self.lver = Layer_Version.objects.create(\
+        layer=self.layer, layer_source=self.lsrc, up_branch=self.branch)
+
+    # create project and project layer
+    self.project = Project.objects.create_project(name="test-project",
+                                                  release=self.release)
+    ProjectLayer.objects.create(project=self.project,
+                                layercommit=self.lver)
+
 class LayerVersionEquivalenceTestCase(TestCase):
     """Verify Layer_Version priority selection."""
 
     def setUp(self):
-        """Create required objects."""
-        # create layer source
-        lsrc = LayerSource.objects.create(name="dummy-layersource",
-                                          sourcetype=LayerSource.TYPE_LOCAL)
-        # create release
-        bbv = BitbakeVersion.objects.create(\
-                  name="master", giturl="git://git.openembedded.org/bitbake")
-        self.release = Release.objects.create(name="default-release",
-                                              bitbake_version=bbv,
-                                              branch_name="master")
-        # attach layer source to release
-        ReleaseLayerSourcePriority.objects.create(\
-            release=self.release, layer_source=lsrc, priority=1)
-
-        # create a layer version for the layer on the specified branch
-        self.layer = Layer.objects.create(name="meta-testlayer",
-                                          layer_source=lsrc)
-        self.branch = Branch.objects.create(name="master", layer_source=lsrc)
-        self.lver = Layer_Version.objects.create(\
-            layer=self.layer, layer_source=lsrc, up_branch=self.branch)
-
+        setup_lv_tests(self)
         # create spoof layer that should not appear in the search results
-        layer = Layer.objects.create(name="meta-notvalid", layer_source=lsrc)
-        Layer_Version.objects.create(layer=layer, layer_source=lsrc,
+        layer = Layer.objects.create(name="meta-notvalid",
+                                     layer_source=self.lsrc)
+        Layer_Version.objects.create(layer=layer, layer_source=self.lsrc,
                                      up_branch=self.branch)
 
-        # create project and project layer
-        self.project = Project.objects.create_project(name="test-project",
-                                                      release=self.release)
-        ProjectLayer.objects.create(project=self.project,
-                                    layercommit=self.lver)
-
     def test_single_layersource(self):
         """
         When we have a single layer version,
@@ -154,35 +157,14 @@ class LayerVersionEquivalenceTestCase(TestCase):
         self.assertEqual(list(equivqs), list(bequivqs))
 
 class ProjectLVSelectionTestCase(TestCase):
-    def setUp(self):
-        # create layer sources
-        ls = LayerSource.objects.create(name = "dummy-layersource", sourcetype = LayerSource.TYPE_LOCAL)
 
-        # create bitbake version
-        bbv = BitbakeVersion.objects.create(name="master", giturl="git://git.openembedded.org/bitbake")
-        # create release
-        release = Release.objects.create(name="default-release", bitbake_version = bbv, branch_name="master")
-        # attach layer source to release
-        ReleaseLayerSourcePriority.objects.create(release = release, layer_source = ls, priority = 1)
-
-        # create layer attach
-        self.layer = Layer.objects.create(name="meta-testlayer", layer_source = ls)
-        # create branch
-        self.branch = Branch.objects.create(name="master", layer_source = ls)
-
-        # set a layer version for the layer on the specified branch
-        self.layerversion = Layer_Version.objects.create(layer = self.layer, layer_source = ls, up_branch = self.branch)
-
-
-        # create a project ...
-        self.project = Project.objects.create_project(name="test-project", release = release)
-        # ... and set it up with a single layer version
-        ProjectLayer.objects.create(project=  self.project, layercommit = self.layerversion)
+    def setUp(self):
+        setup_lv_tests(self)
 
     def test_single_layersource(self):
         compatible_layerversions = self.project.compatible_layerversions()
         self.assertTrue(len(compatible_layerversions) == 1)
-        self.assertTrue(compatible_layerversions[0] == self.layerversion)
+        self.assertTrue(compatible_layerversions[0] == self.lver)
 
 
     def test_dual_layersource(self):
@@ -200,4 +182,4 @@ class ProjectLVSelectionTestCase(TestCase):
         equivalent_list = self.project.compatible_layerversions()
         self.assertTrue(len(equivalent_list) == 2)
         self.assertTrue(equivalent_list[0] == self.layerversion2)
-        self.assertTrue(equivalent_list[1] == self.layerversion)
+        self.assertTrue(equivalent_list[1] == self.lver)
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 07/11] toaster: remove duplicated code
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
                   ` (5 preceding siblings ...)
  2015-08-06  7:27 ` [PATCH 06/11] toaster: reuse common code Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 08/11] toaster: simplify testcase code Ed Bartosh
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Removed test_dual_layersource method from ProjectLVSelectionTestCase
as identical method presents in LayerVersionEquivalenceTestCase.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 17 -----------------
 1 file changed, 17 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index 168bafa..6837038 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -166,20 +166,3 @@ class ProjectLVSelectionTestCase(TestCase):
         self.assertTrue(len(compatible_layerversions) == 1)
         self.assertTrue(compatible_layerversions[0] == self.lver)
 
-
-    def test_dual_layersource(self):
-         # if we have two layers with the same name, from different layer sources, we expect both layers in, in increasing priority of the layer source
-        ls2 = LayerSource.objects.create(name = "dummy-layersource2", sourcetype = LayerSource.TYPE_LOCAL, apiurl="testing")
-
-        # assign a lower priority for the second layer source
-        Release.objects.get(name="default-release").releaselayersourcepriority_set.create(layer_source = ls2, priority = 2)
-
-        # create a new layer_version for a layer with the same name coming from the second layer source
-        self.layer2 = Layer.objects.create(name="meta-testlayer", layer_source = ls2)
-        self.layerversion2 = Layer_Version.objects.create(layer = self.layer2, layer_source = ls2, up_branch = self.branch)
-
-         # expect two layer versions, in the priority order
-        equivalent_list = self.project.compatible_layerversions()
-        self.assertTrue(len(equivalent_list) == 2)
-        self.assertTrue(equivalent_list[0] == self.layerversion2)
-        self.assertTrue(equivalent_list[1] == self.lver)
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 08/11] toaster: simplify testcase code
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
                   ` (6 preceding siblings ...)
  2015-08-06  7:27 ` [PATCH 07/11] toaster: remove duplicated code Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 09/11] toaster: add header to orm/test.py Ed Bartosh
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Replaced 2 asserts with one in test_single_layersource method
of ProjectLVSelectionTestCase.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index 6837038..a57a62c 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -162,7 +162,6 @@ class ProjectLVSelectionTestCase(TestCase):
         setup_lv_tests(self)
 
     def test_single_layersource(self):
-        compatible_layerversions = self.project.compatible_layerversions()
-        self.assertTrue(len(compatible_layerversions) == 1)
-        self.assertTrue(compatible_layerversions[0] == self.lver)
+        compat_lv = self.project.compatible_layerversions()
+        self.assertEqual(list(compat_lv), [self.lver])
 
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 09/11] toaster: add header to orm/test.py
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
                   ` (7 preceding siblings ...)
  2015-08-06  7:27 ` [PATCH 08/11] toaster: simplify testcase code Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 10/11] toaster: remove ProjectLVSelectionTestCase Ed Bartosh
  2015-08-06  7:27 ` [PATCH 11/11] toaster: move code from setup_lv_tests to setUp Ed Bartosh
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Added header and module docstring.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index a57a62c..99f4fa0 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -1,3 +1,26 @@
+#! /usr/bin/env python
+# ex:ts=4:sw=4:sts=4:et
+# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*-
+#
+# BitBake Toaster Implementation
+#
+# Copyright (C) 2013-2015 Intel Corporation
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+"""Test cases for Toaster ORM."""
+
 from django.test import TestCase, TransactionTestCase
 from orm.models import LocalLayerSource, LayerIndexLayerSource, ImportedLayerSource, LayerSource
 from orm.models import Branch
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 10/11] toaster: remove ProjectLVSelectionTestCase
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
                   ` (8 preceding siblings ...)
  2015-08-06  7:27 ` [PATCH 09/11] toaster: add header to orm/test.py Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-06  7:27 ` [PATCH 11/11] toaster: move code from setup_lv_tests to setUp Ed Bartosh
  10 siblings, 0 replies; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

Moved code from ProjectLVSelectionTestCase.test_single_layersource to
LayerVersionEquivalenceTestCase.test_compatible_layerversions.

Removed ProjectLVSelectionTestCase.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index 99f4fa0..5246909 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -118,8 +118,9 @@ class LayerVersionEquivalenceTestCase(TestCase):
         # create spoof layer that should not appear in the search results
         layer = Layer.objects.create(name="meta-notvalid",
                                      layer_source=self.lsrc)
-        Layer_Version.objects.create(layer=layer, layer_source=self.lsrc,
-                                     up_branch=self.branch)
+        self.lver2 = Layer_Version.objects.create(layer=layer,
+                                                  layer_source=self.lsrc,
+                                                  up_branch=self.branch)
 
     def test_single_layersource(self):
         """
@@ -179,12 +180,11 @@ class LayerVersionEquivalenceTestCase(TestCase):
 
         self.assertEqual(list(equivqs), list(bequivqs))
 
-class ProjectLVSelectionTestCase(TestCase):
-
-    def setUp(self):
-        setup_lv_tests(self)
-
-    def test_single_layersource(self):
+    def test_compatible_layerversions(self):
+        """
+        When we have a 2 layer versions, compatible_layerversions()
+        should return a queryset with both.
+        """
         compat_lv = self.project.compatible_layerversions()
-        self.assertEqual(list(compat_lv), [self.lver])
+        self.assertEqual(list(compat_lv), [self.lver, self.lver2])
 
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [PATCH 11/11] toaster: move code from setup_lv_tests to setUp
  2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
                   ` (9 preceding siblings ...)
  2015-08-06  7:27 ` [PATCH 10/11] toaster: remove ProjectLVSelectionTestCase Ed Bartosh
@ 2015-08-06  7:27 ` Ed Bartosh
  2015-08-10 14:53   ` Michael Wood
  10 siblings, 1 reply; 14+ messages in thread
From: Ed Bartosh @ 2015-08-06  7:27 UTC (permalink / raw)
  To: toaster

As ProjectLVSelectionTestCase was removed there is no point
to keep this function. Moved code back to setUp method.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
---
 bitbake/lib/toaster/orm/tests.py | 57 +++++++++++++++++++---------------------
 1 file changed, 27 insertions(+), 30 deletions(-)

diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
index 5246909..783aea8 100644
--- a/bitbake/lib/toaster/orm/tests.py
+++ b/bitbake/lib/toaster/orm/tests.py
@@ -81,40 +81,37 @@ class LILSUpdateTestCase(TransactionTestCase):
         self.assertTrue(lsobj.branch_set.all().count() > 0,
                         "no branches fetched")
 
-
-def setup_lv_tests(self):
-    """Create required objects."""
-    # create layer source
-    self.lsrc = LayerSource.objects.create(name="dummy-layersource",
-                                           sourcetype=LayerSource.TYPE_LOCAL)
-    # create release
-    bbv = BitbakeVersion.objects.create(\
-              name="master", giturl="git://git.openembedded.org/bitbake")
-    self.release = Release.objects.create(name="default-release",
-                                          bitbake_version=bbv,
-                                          branch_name="master")
-    # attach layer source to release
-    ReleaseLayerSourcePriority.objects.create(\
-        release=self.release, layer_source=self.lsrc, priority=1)
-
-    # create a layer version for the layer on the specified branch
-    self.layer = Layer.objects.create(name="meta-testlayer",
-                                      layer_source=self.lsrc)
-    self.branch = Branch.objects.create(name="master", layer_source=self.lsrc)
-    self.lver = Layer_Version.objects.create(\
-        layer=self.layer, layer_source=self.lsrc, up_branch=self.branch)
-
-    # create project and project layer
-    self.project = Project.objects.create_project(name="test-project",
-                                                  release=self.release)
-    ProjectLayer.objects.create(project=self.project,
-                                layercommit=self.lver)
-
 class LayerVersionEquivalenceTestCase(TestCase):
     """Verify Layer_Version priority selection."""
 
     def setUp(self):
-        setup_lv_tests(self)
+        """Create required objects."""
+        # create layer source
+        self.lsrc = LayerSource.objects.create(name="dummy-layersource",
+                                               sourcetype=LayerSource.TYPE_LOCAL)
+        # create release
+        bbv = BitbakeVersion.objects.create(\
+                  name="master", giturl="git://git.openembedded.org/bitbake")
+        self.release = Release.objects.create(name="default-release",
+                                              bitbake_version=bbv,
+                                              branch_name="master")
+        # attach layer source to release
+        ReleaseLayerSourcePriority.objects.create(\
+            release=self.release, layer_source=self.lsrc, priority=1)
+
+        # create a layer version for the layer on the specified branch
+        self.layer = Layer.objects.create(name="meta-testlayer",
+                                          layer_source=self.lsrc)
+        self.branch = Branch.objects.create(name="master", layer_source=self.lsrc)
+        self.lver = Layer_Version.objects.create(\
+            layer=self.layer, layer_source=self.lsrc, up_branch=self.branch)
+
+        # create project and project layer
+        self.project = Project.objects.create_project(name="test-project",
+                                                      release=self.release)
+        ProjectLayer.objects.create(project=self.project,
+                                    layercommit=self.lver)
+
         # create spoof layer that should not appear in the search results
         layer = Layer.objects.create(name="meta-notvalid",
                                      layer_source=self.lsrc)
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

* Re: [PATCH 11/11] toaster: move code from setup_lv_tests to setUp
  2015-08-06  7:27 ` [PATCH 11/11] toaster: move code from setup_lv_tests to setUp Ed Bartosh
@ 2015-08-10 14:53   ` Michael Wood
  0 siblings, 0 replies; 14+ messages in thread
From: Michael Wood @ 2015-08-10 14:53 UTC (permalink / raw)
  To: toaster

Thanks Submitted upstream to bitbake

On 06/08/15 08:27, Ed Bartosh wrote:
> As ProjectLVSelectionTestCase was removed there is no point
> to keep this function. Moved code back to setUp method.
>
> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
> ---
>   bitbake/lib/toaster/orm/tests.py | 57 +++++++++++++++++++---------------------
>   1 file changed, 27 insertions(+), 30 deletions(-)
>
> diff --git a/bitbake/lib/toaster/orm/tests.py b/bitbake/lib/toaster/orm/tests.py
> index 5246909..783aea8 100644
> --- a/bitbake/lib/toaster/orm/tests.py
> +++ b/bitbake/lib/toaster/orm/tests.py
> @@ -81,40 +81,37 @@ class LILSUpdateTestCase(TransactionTestCase):
>           self.assertTrue(lsobj.branch_set.all().count() > 0,
>                           "no branches fetched")
>   
> -
> -def setup_lv_tests(self):
> -    """Create required objects."""
> -    # create layer source
> -    self.lsrc = LayerSource.objects.create(name="dummy-layersource",
> -                                           sourcetype=LayerSource.TYPE_LOCAL)
> -    # create release
> -    bbv = BitbakeVersion.objects.create(\
> -              name="master", giturl="git://git.openembedded.org/bitbake")
> -    self.release = Release.objects.create(name="default-release",
> -                                          bitbake_version=bbv,
> -                                          branch_name="master")
> -    # attach layer source to release
> -    ReleaseLayerSourcePriority.objects.create(\
> -        release=self.release, layer_source=self.lsrc, priority=1)
> -
> -    # create a layer version for the layer on the specified branch
> -    self.layer = Layer.objects.create(name="meta-testlayer",
> -                                      layer_source=self.lsrc)
> -    self.branch = Branch.objects.create(name="master", layer_source=self.lsrc)
> -    self.lver = Layer_Version.objects.create(\
> -        layer=self.layer, layer_source=self.lsrc, up_branch=self.branch)
> -
> -    # create project and project layer
> -    self.project = Project.objects.create_project(name="test-project",
> -                                                  release=self.release)
> -    ProjectLayer.objects.create(project=self.project,
> -                                layercommit=self.lver)
> -
>   class LayerVersionEquivalenceTestCase(TestCase):
>       """Verify Layer_Version priority selection."""
>   
>       def setUp(self):
> -        setup_lv_tests(self)
> +        """Create required objects."""
> +        # create layer source
> +        self.lsrc = LayerSource.objects.create(name="dummy-layersource",
> +                                               sourcetype=LayerSource.TYPE_LOCAL)
> +        # create release
> +        bbv = BitbakeVersion.objects.create(\
> +                  name="master", giturl="git://git.openembedded.org/bitbake")
> +        self.release = Release.objects.create(name="default-release",
> +                                              bitbake_version=bbv,
> +                                              branch_name="master")
> +        # attach layer source to release
> +        ReleaseLayerSourcePriority.objects.create(\
> +            release=self.release, layer_source=self.lsrc, priority=1)
> +
> +        # create a layer version for the layer on the specified branch
> +        self.layer = Layer.objects.create(name="meta-testlayer",
> +                                          layer_source=self.lsrc)
> +        self.branch = Branch.objects.create(name="master", layer_source=self.lsrc)
> +        self.lver = Layer_Version.objects.create(\
> +            layer=self.layer, layer_source=self.lsrc, up_branch=self.branch)
> +
> +        # create project and project layer
> +        self.project = Project.objects.create_project(name="test-project",
> +                                                      release=self.release)
> +        ProjectLayer.objects.create(project=self.project,
> +                                    layercommit=self.lver)
> +
>           # create spoof layer that should not appear in the search results
>           layer = Layer.objects.create(name="meta-notvalid",
>                                        layer_source=self.lsrc)



^ permalink raw reply	[flat|nested] 14+ messages in thread

* [PATCH 11/11] toaster: move code from setup_lv_tests to setUp
  2015-08-10 11:21 ` [PATCH 01/11] toaster: remove prints from the test code Michael Wood
@ 2015-08-10 11:21   ` Michael Wood
  0 siblings, 0 replies; 14+ messages in thread
From: Michael Wood @ 2015-08-10 11:21 UTC (permalink / raw)
  To: bitbake-devel

From: Ed Bartosh <ed.bartosh@linux.intel.com>

As ProjectLVSelectionTestCase was removed there is no point
to keep this function. Moved code back to setUp method.

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
---
 lib/toaster/orm/tests.py | 57 +++++++++++++++++++++++-------------------------
 1 file changed, 27 insertions(+), 30 deletions(-)

diff --git a/lib/toaster/orm/tests.py b/lib/toaster/orm/tests.py
index 5246909..783aea8 100644
--- a/lib/toaster/orm/tests.py
+++ b/lib/toaster/orm/tests.py
@@ -81,40 +81,37 @@ class LILSUpdateTestCase(TransactionTestCase):
         self.assertTrue(lsobj.branch_set.all().count() > 0,
                         "no branches fetched")
 
-
-def setup_lv_tests(self):
-    """Create required objects."""
-    # create layer source
-    self.lsrc = LayerSource.objects.create(name="dummy-layersource",
-                                           sourcetype=LayerSource.TYPE_LOCAL)
-    # create release
-    bbv = BitbakeVersion.objects.create(\
-              name="master", giturl="git://git.openembedded.org/bitbake")
-    self.release = Release.objects.create(name="default-release",
-                                          bitbake_version=bbv,
-                                          branch_name="master")
-    # attach layer source to release
-    ReleaseLayerSourcePriority.objects.create(\
-        release=self.release, layer_source=self.lsrc, priority=1)
-
-    # create a layer version for the layer on the specified branch
-    self.layer = Layer.objects.create(name="meta-testlayer",
-                                      layer_source=self.lsrc)
-    self.branch = Branch.objects.create(name="master", layer_source=self.lsrc)
-    self.lver = Layer_Version.objects.create(\
-        layer=self.layer, layer_source=self.lsrc, up_branch=self.branch)
-
-    # create project and project layer
-    self.project = Project.objects.create_project(name="test-project",
-                                                  release=self.release)
-    ProjectLayer.objects.create(project=self.project,
-                                layercommit=self.lver)
-
 class LayerVersionEquivalenceTestCase(TestCase):
     """Verify Layer_Version priority selection."""
 
     def setUp(self):
-        setup_lv_tests(self)
+        """Create required objects."""
+        # create layer source
+        self.lsrc = LayerSource.objects.create(name="dummy-layersource",
+                                               sourcetype=LayerSource.TYPE_LOCAL)
+        # create release
+        bbv = BitbakeVersion.objects.create(\
+                  name="master", giturl="git://git.openembedded.org/bitbake")
+        self.release = Release.objects.create(name="default-release",
+                                              bitbake_version=bbv,
+                                              branch_name="master")
+        # attach layer source to release
+        ReleaseLayerSourcePriority.objects.create(\
+            release=self.release, layer_source=self.lsrc, priority=1)
+
+        # create a layer version for the layer on the specified branch
+        self.layer = Layer.objects.create(name="meta-testlayer",
+                                          layer_source=self.lsrc)
+        self.branch = Branch.objects.create(name="master", layer_source=self.lsrc)
+        self.lver = Layer_Version.objects.create(\
+            layer=self.layer, layer_source=self.lsrc, up_branch=self.branch)
+
+        # create project and project layer
+        self.project = Project.objects.create_project(name="test-project",
+                                                      release=self.release)
+        ProjectLayer.objects.create(project=self.project,
+                                    layercommit=self.lver)
+
         # create spoof layer that should not appear in the search results
         layer = Layer.objects.create(name="meta-notvalid",
                                      layer_source=self.lsrc)
-- 
2.1.4



^ permalink raw reply related	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2015-08-10 14:53 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-08-06  7:27 [review request] [PATCH 00/11] ed/toaster/fix-orm-tests Ed Bartosh
2015-08-06  7:27 ` [PATCH 01/11] toaster: remove prints from the test code Ed Bartosh
2015-08-06  7:27 ` [PATCH 02/11] toaster: fix test_build_layerversion test case Ed Bartosh
2015-08-06  7:27 ` [PATCH 03/11] toaster: rewrite test for LayerSource model Ed Bartosh
2015-08-06  7:27 ` [PATCH 04/11] toaster: rewrite LILSUpdateTestCase Ed Bartosh
2015-08-06  7:27 ` [PATCH 05/11] toaster: reformat LayerVersionEquivalenceTestCase Ed Bartosh
2015-08-06  7:27 ` [PATCH 06/11] toaster: reuse common code Ed Bartosh
2015-08-06  7:27 ` [PATCH 07/11] toaster: remove duplicated code Ed Bartosh
2015-08-06  7:27 ` [PATCH 08/11] toaster: simplify testcase code Ed Bartosh
2015-08-06  7:27 ` [PATCH 09/11] toaster: add header to orm/test.py Ed Bartosh
2015-08-06  7:27 ` [PATCH 10/11] toaster: remove ProjectLVSelectionTestCase Ed Bartosh
2015-08-06  7:27 ` [PATCH 11/11] toaster: move code from setup_lv_tests to setUp Ed Bartosh
2015-08-10 14:53   ` Michael Wood
2015-08-10 11:20 [PATCH 00/11] Fixes and clean ups for Toaster ORM unit tests Michael Wood
2015-08-10 11:21 ` [PATCH 01/11] toaster: remove prints from the test code Michael Wood
2015-08-10 11:21   ` [PATCH 11/11] toaster: move code from setup_lv_tests to setUp Michael Wood

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.