On 27/07/15 16:23, sujith h wrote:


On Mon, Jul 27, 2015 at 6:55 PM, Michael Wood <[email protected] <mailto:[email protected]>> wrote:

    On 27/07/15 11:31, sujith h wrote:



        On Mon, Jul 27, 2015 at 3:39 PM, Barros Pena, Belen
        <[email protected]
        <mailto:[email protected]>
        <mailto:[email protected]
        <mailto:[email protected]>>> wrote:



            On 27/07/2015 07:54, "sujith h" <[email protected]
        <mailto:[email protected]>
            <mailto:[email protected] <mailto:[email protected]>>>
        wrote:

            >
            >
            >On Fri, Jul 24, 2015 at 6:36 PM, Barros Pena, Belen
            ><[email protected]
        <mailto:[email protected]>
            <mailto:[email protected]
        <mailto:[email protected]>>> wrote:
            >
            >
            >
            >On 24/07/2015 13:57, "sujith h" <[email protected]
        <mailto:[email protected]>
            <mailto:[email protected] <mailto:[email protected]>>>
        wrote:
            >
            >
            >* Which version of Yocto Project you are using (fido or
        master)?
            >
            >I am using fido branch.
            >
            >
            >* Which release you have selected for your project?
            >
            >
            >In the release I have selected "Local Yocto Project"
            >
            >
            >* If you click the "view all compatible layers" link and
        in that
            page you
            >search for meta-oe, do you get any results?
            >
            >I can see only "meta-yocto-bsp", "meta-yocto" and
            "openembedded-core".
            >Attached screenshot of the same.
            >
            >
            >Also attaching screenshot of page where I try to import
        meta-oe
            from my
            >locally cloned location.
            >
            >
            >Below is the file structure I have:
            >
            >sujith@kdekid:~/MEL/homework$ pwd
            >/home/sujith/MEL/homework
            >sujith@kdekid:~/MEL/homework$ ls -l
            >total 5180
            >drwxrwxr-x 19 sujith sujith    4096 Jun 12 18:40
        meta-oe-local
            >drwxrwxr-x 19 sujith sujith    4096 Jul 24 18:04
            meta-openembedded-local
            >drwxrwxr-x  8 sujith sujith    4096 Jul 24 18:02
        meta-qt5-local
            >drwxrwxr-x 11 sujith sujith    4096 Jul 27 12:07 poky
            >drwxrwxr-x  2 sujith sujith    4096 Jul 27 12:08
            toaster_build_artifacts
            >-rw-r--r--  1 sujith sujith 5277696 Jul 27 12:19
        toaster.sqlite
            >drwxrwxr-x  6 sujith sujith    4096 Jul 24 16:25 venv
            >sujith@kdekid:~/MEL/homework$
            >

            Right, I've managed to reproduce this. Looking at the browser
            console, it
            might be a problem with the javascript doing the layer name
            validation. If
            you change the layer name to something completely random
        that does not
            exist in the Toaster database (something like meta-xyz),
        can you
            import
            the layer?


        Am bit new to the web world. So I gave a try with firebug to
        debug which script ( Javascript or any ) call happens
        when I click "Import  and add to project" button. Even after
        changing meta-oe repo to meta-xyz as per suggestion,
        the result remains same. But this is the output I see in the
        firebug console:
        |{"current_id": 5, "current_url":
        "git://git.openembedded.org/meta-openembedded
        <http://git.openembedded.org/meta-openembedded>
        <http://git.openembedded.org/meta-openembedded>", "error":
        "hint-layer-exists-with-different-url"||}|
        hint-layer-exists-with-different-url

        Also attaching the screenshot of the same ( to get more clarity ).


    Thanks for this, I noticed this wasn't working properly last week,
    and rolled a couple of patches to fix these regressions.


    
http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=michaelw/toaster/wip-nav-project-changes&id=0181c56dd608427c0a7bd986df75bf7a1189e064

    and


    
http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=michaelw/toaster/wip-nav-project-changes&id=aa5b023f03f5465ea22318a1f21199ce434eb700

    I have a few other things to fix on this branch as I have been
    fixing a number of things to allow me to test the new project
    page, I'm intending to roll a separate branch for review on it.

    You've highlighted that we need a unit test which does a layer
    import using the back end API calls, which although it wouldn't
    have caught this error would be really good to have, if you're
    interested in helping with that?


It would be my pleasure to help :) I might need some assistance as I am learning Django. May be some hint like where to start with or so.


This is the best place to start
https://docs.djangoproject.com/en/1.6/topics/testing/overview/

In ./bitbake <https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/bitbake>/lib <https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/bitbake/lib>/toaster <https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/bitbake/lib/toaster>/toastergui <https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/bitbake/lib/toaster/toastergui>/tests.py <https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/bitbake/lib/toaster/toastergui/tests.py>

We can add something like

class ImportLayerTestCase(|ProvisionedLayersProjectTestCase|):
....
...
    def test_import_layer(self):
        client.post(reverse('xhr_importlayer',.....

...

We can then use the JSON response from the client to help validate the data coming back as well as checking the import layer actually entered the database.

There are a few examples in the yocto error-report-web project too that might be useful to look at e.g.
 http://git.yoctoproject.org/cgit/cgit.cgi/error-report-web/tree/Post/test.py#n153 
<http://git.yoctoproject.org/cgit/cgit.cgi/error-report-web/tree/Post/test.py#n153>

You can run the test by doing running ./manage.py test toastergui


Thanks,

Michael
--
_______________________________________________
toaster mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/toaster

Reply via email to