[02:56] josharenson, get anywhere? [03:28] balloons, no, had to take off myself... let me figure out where I was... [03:32] balloons, so I just created a new project with the Ubuntu SDK, and the autopilot tests fail [03:32] not like how TDD tests are supposed to fail at first, like the test suite crashes... differently than my other app [03:37] josharenson: can you post a traceback please? [03:37] thomi http://pastebin.ubuntu.com/7734626/ [03:38] thomi that is from my first app, that fails because it can't find the MainView object [03:52] thomi: I rm -rf'd all the stuff that the SDK created related to autopilot testing and it seems to be working when I set up everything manually (so far). Wondering if its worth filing a bug with the sdk team as the tests don't work out of the box... [03:59] josharenson: I'll take a quick look, one second [03:59] thx [04:00] josharenson: hmmm - this is on trusty or utopic? [04:00] utopic [04:00] elopio: have you seen this? ^ [04:00] josharenson: can you show me the contents of 'run' please [04:00] ? [04:02] 1 min [04:02] thomi http://pastebin.ubuntu.com/7734706/ [04:03] josharenson: is that script generated by the SDK, or did you make it? [04:04] thomi, the SDK made it [04:04] josharenson: OK, there's *definitely* a bug report for the SDK team coming out of this then :) [04:05] haha :-p [04:05] josharenson: the command to run should be 'autopilot3', not 'autopilot'. The package to install is autopilot-desktop [04:05] josharenson: perhaps you could update that script to run 'autopilot3' and try again? [04:05] * josharenson trying [04:06] how will the affect testing when I move to a touch device? Will phablet-test (or whatever the command is) figure this out? [04:07] josharenson: yes, it'll use the correct autopilot command [04:07] josharenson: it should do, yes [04:09] thats good, I'm trying w/ autopilot3... shelved my changes and might have accidentally clobbered my repo.. hang on [04:13] thomi, fails with a different error... [04:13] getting a trace [04:13] josharenson: awesome [04:14] thomi http://pastebin.ubuntu.com/7734738/ [04:14] josharenson: ugh [04:14] josharenson: yeah, the SDK is really broken [04:14] josharenson: it's generating python 2 code :( [04:15] josharenson: is your branch on lp? [04:15] yes [04:16] https://code.launchpad.net/~josharenson/+junk/SimplePerf [04:16] ok, grabbing it now [04:23] josharenson: so, with a bit of hacking, I can get it to the point where autopilot tries to launch your app, but the app exits - I *think* that's because I'm missing a dependency that you need, so this *might* work for you [04:24] thomi, ill try.. currently when I run the test suite, the app launches first and the test fails/crashes after [04:24] josharenson: are you happy applying a patch to your local working tree, or would you prefer I pushed my branch somewhere on lp? [04:24] thomi, ill happily apply the patch [04:24] ok [04:24] josharenson: http://paste.ubuntu.com/7734757/ [04:31] thomi, looks like the same error... [04:31] josharenson: cannot find MainView ? [04:31] yes [04:31] hmmm [04:31] ok [04:31] josharenson: so the person you really need to talk to is elopio. What timezone are you in? [04:32] thomi, I can try creating the project from scratch.... I'm in GMT-8 [04:32] hello. [04:32] hey - there he is :) [04:32] :-) [04:32] apparently if we say your name 3 times you appear :) [04:32] haha [04:33] elopio: it appears that the SDK new-project is still generating python 2 code. [04:33] elopio: and what's more, *broken* python 2 code :) [04:33] elopio: do you know what's going on there? [04:35] thomi: I updated one of the templates like a year ago. It could be outdated by now, as we can't really run tests for the templates. [04:35] and there was another template that I never got to update. [04:36] elopio: ok, but surely they're generating python 3 code these days? [04:37] "surely" it's too strong. I don't know, but I can check. [04:37] elopio: ok [04:37] josharenson: can you please give me more context of what you are trying to do? [04:37] elopio: it's just that, with all the work we put in to porting the world to python 3, I'd be dissapointed if we forgot about the SDK templates [04:38] elopio, short version is I have a very simple QML app (created in the SDK) that I'm trying to write autopilot tests for. [04:39] josharenson: so, would you like me to fix the qt templates first, or get your tests running first? [04:39] elopio, if I understand correctly, fixing the templates benefits everyone, whereas getting the tests running only benefits me [04:41] josharenson: that's a good answer :) [04:41] I'll grab the template and see what I can do. [04:41] ok thanks [04:42] elopio: when you have some time, I'd love to know why we can't test the templates? If it's just a matter of 'we don't have the time to write the tests', I might have some spare time this week to look at it [04:43] thomi: with some time, we might get it working. The issue is that the templates have parameters [04:43] we don't have a way to tell qtcreator: give me this template with parameter foo=bar. [04:43] elopio: can't we render them ourselves? [04:43] in order to replace the parameters, we have to manually create the project. [04:44] so, we could do two things: 1. make the replacement ourselfs, which will test the python code but not its interaction with qtcreator. [04:44] 2. automate the creation of a project and run the tests simulating that we are a qtcreator user. [04:45] at that point, I prefered to look at other problems in the toolkit, and never got back to qtcreator. [04:45] elopio: well, I'd settle for 1) at this stage, and worry about 2) later. Is it obvious where the templates are stored? I might dig into that soon [04:45] elopio, is there anything I can do to get the tests working manually in the meantime? If not, I have plenty of other things to do, so no worries [04:45] thomi: qtcreator-plugin-ubuntu [04:46] josharenson: well, for the python3 problem, just change basestring for str [04:46] ah ok [04:46] elopio: we already did that [04:46] josharenson: that's the patch I provided earlier [04:47] about the MainView, I'm not sure what's wrong. I'm trying to reproduce it. [04:47] http://paste.ubuntu.com/7734757/ should make it python 3 compliant [04:47] ack [04:48] thomi: instead of decode the output of subprocess, we have been using universal_lines=True [04:48] elopio: ok [04:48] is it all the same? or should we prefer one way? [04:48] elopio: it's almost the same, I see no reason to prefer one way over the other [04:48] josharenson: you created an "App with Simple UI", right? [04:49] and thomi, about testing the templates, yes, approach 1 will be better than we have now. [04:49] I never finished cleaning the templates, so they still have weird things. [04:49] elopio: they sure do :) [04:51] josharenson: hum, yes, your test is not using the template I touched. Another question, are you on utopic? [04:52] yes on utopic [04:52] josharenson: and "app with simple UI"? [04:55] elopio yes [04:55] josharenson: then there's something weird. I updated that template, and you shouldn't see any basestring. [04:56] in fact, the template is now py2 and py3. The only bit we are missing is change the run script to use autopilot3. [04:56] in the tabbed application template we have more problems, because I never updated that one. [04:56] that looks closer to what you are seeing. [05:02] elopio, ill purge the sdk, reinstall, and recreate the app from scratch [05:02] elipio, have to go offline for a bit, but ill report back within the hour [05:04] josharenson: I'm not sure if I'll still be here in an hour, but I'll leave comments here with my changes. [05:04] josharenson: if you are on utopic, you should be good to go with "App with Simple UI", I've just tried it. [05:04] I'm fixing the other one. [05:50] thomi: https://code.launchpad.net/~elopio/qtcreator-plugin-ubuntu/update_tabs_autopilot_template/+merge/225256 [05:50] josharenson: ^ [05:50] elopio: awesome, thanks [05:51] elopio, ack thanks [05:51] thomi: it would be awesome if you can run those tests on qtcreator MPs. [05:51] elopio: yeah [05:52] elopio: after looking at the templates, I need to look at the qtcreator souce to see how they're rendered [05:52] it's a PITA that the qtcreator guys didn't make this testable [05:52] thomi: zbenjamin is the one that knows about qtcreator. But he's probably not near your timezone. [05:52] yeah [05:53] thomi: and I overheard that they are changing it to use more QML components, which will improve things. [05:53] hmmm [05:53] it sounds like it was an important topic on the qt conference. [05:53] ok [05:56] elopio, I purged ubuntu-sdk and qtcreator. Then I reinstalled and created the default Hello World app. [05:56] elopio, the result of the first autopilot test (after changing to autopilot3) was this [05:56] http://pastebin.ubuntu.com/7735109/ [05:56] josharenson: ok, that's good [05:57] install ubuntu-ui-toolkit-autopilot [05:57] we probably should add a README to the template. [05:58] elopio, seems to be working :-) hopefully it still works when I make things more complicated. Thanks for the help... [05:59] josharenson: nice. Ping ubuntu-qa whenever you need help with the tests. Here or in #ubuntu-quality. [05:59] ack [06:00] or say my name three times if you are brave. [06:54] elopio, I'm getting the same error "Object not found with name 'MainView'" When using tabs... do I have to wait for your fix? [06:55] josharenson: yes. Or copy them from my branch to your /usr/share/qtcreator/templates/wizard/ubuntu [13:44] glad to see you got the templates updated last night :-) [17:25] * balloons rants about autopilot converting datetimes to datetime objects in python [23:15] veebers: are you here? [23:15] I'm having problems with the validate_dbus_object [23:15] elopio: hey I'm here [23:16] veebers: first thing that seems different is that introspection.get_classname_from_path returns bytes now. [23:16] shouldn't it return a string? [23:16] let me have a look [23:19] elopio: looking at the code bytestrings are the expected output and are on purpose. There is a note though that states we need to figure out the string vs. bytestring issue [23:20] ok. I don't know why to use bytes, but I can update make the code work with that. [23:20] but I'm using this feature, so please let me know when it changes. [23:23] veebers: next problem is that it's really hard to get it right. [23:23] I think I would like something like this: [23:23] - There are many qml elements called ItemPage [23:24] - I would like a different custom proxy object for each one of them [23:24] - I put a different objectName to each one [23:25] - be able to do something like: main_view.select_single(TestPage1, objectName='page1') [23:25] main_view.select_single(TestPage2, objectName='page2') [23:25] where TestPage1 and TestPage2 are not on the QML tree. [23:26] elopio: right, there is an open bug/task that I have to be able to do something like that. [23:26] ok, good, so it does make sense outside of my head :) [23:26] it would allow you to define an emulator and define the query that is used to select the object in the tree, i.e. when looking for TestPage1 we're actually looking for ItemPage . . . [23:27] veebers: do you have the # ? [23:27] elopio: yeah it makes sense. Hmm, let me check, I may be lying about the bug and it might just be an open task I have on the board. one mo [23:29] elopio: sorry I don't see a bug for it, would you like to file one with your explanation of what you want etc. ? [23:30] veebers: I just want it on your roadmap. I don't mind if there is no bug. But if you want one, I'll add it. [23:31] balloons: have you seen reminders failing saying something like the dialog is not present? [23:31] elopio: If you have a moment I would appreciate the bug, helps keep track etc. [23:41] veebers: https://bugs.launchpad.net/autopilot/+bug/1337004 [23:41] Ubuntu bug 1337004 in Autopilot "Make it easier to select a custom proxy object with a class name different from the QML type" [Undecided,New] [23:41] elopio: awesome, thanks for that [23:41] veebers: and lastt problem, with a validate_dbus_object like this one: [23:41] http://paste.ubuntu.com/7739358/ [23:41] I get it running perfectly when I run a single test [23:41] * veebers looks [23:42] when I run the whole suite, I get More than one custom proxy class matches this object [23:43] elopio: hmm, I'm not sure off the top of my head, I would have to look into it, which I can't right at this moment sorry (trying to get other code landed). I can add it to my stack of things to do though [23:44] veebers: that's fine. I'll keep trying.