[05:32] <pitti> Good morning
[13:55] <pitti> balloons: FYI, I can successfully run autopilot click tests through adt-run now :)
[13:57] <balloons> pitti, awesome!
[13:59] <elfy> balloons pitti - good day to you both
[13:59] <balloons> pitti, is this something I can try myself?
[13:59] <pitti> hey elfy
[13:59] <balloons> good day elfy
[14:00] <pitti> balloons: yes, although it'll be slightly easier in an hour or so when I commit the script
[14:00] <pitti> balloons: for now I test in an LXC container and have a setup script which starts upstart session and Xvfg
[14:00] <pitti> balloons: today I figured out how to do that
[14:00] <pitti> balloons: it still apt-get installs test deps, that's still a TOD
[14:01] <balloons> pitti, awesome that's very similar to how we do it in core apps jenkins
[14:01] <pitti> balloons: that's my diff for lp:ubuntu-calculator-app FYI: http://paste.ubuntu.com/7690488/
[14:01] <pitti> err, I figure that should be @AUTOPILOT_DIR@ stil
[14:01] <pitti> l
[14:03] <balloons> pitti, yes, I remember you started the conversation about PYTHONPATH=tests/autopilot:$PYTHONPATH autopilot3 run
[14:03] <pitti> balloons: I might do that PYTHONPATH by default, but for now this is working
[14:17] <jibel> pitti, I've an almost working ssh runner + setup script for adb which works for deb packages. I need to add command line parsing to pass arguments like a serial-id then it'll be ready for a first review. It's still basic but works with simple packages.
[14:20] <pitti> jibel: nice!
[14:21] <pitti> jibel: coming from the other side, I now have a working --setup-commands script for running click autopilot tests with an LXC container; it runs Xvfb and an upstart user session, so that ubuntu-app-launch works
[14:21] <pitti> ./run-from-checkout --setup-commands ~/setup-click-lxc ~/ubuntu/tmp/ubuntu-calculator-app/ ~/ubuntu/tmp/com.ubuntu.calculator_1.3.283_all.click --- lxc -es adt-utopic
[14:23] <jibel> ./run-from-checkout -dd libpng --- ssh -s virt-subproc/adb.ssh -d -- -s 04dc228756e547e7
[14:23] <jibel> where adb.ssh is the setup script for adb hosts
[14:25] <pitti> jibel: nice! so you just pass the additional args directly to adb I suppose, so that you can also not specify it if you just have one dev?
[14:26] <jibel> pitti, I pass the additional args to the setup script which in turn can pass it to adb
[14:26] <jibel> this way you can write a setup script that configures the device differently for debs or click for example
[14:27] <pitti> right
[14:27] <pitti> very nice
[14:27] <jibel> and in the setup script you create on function per hook in the runner if your host can support revert or reboot and other don't
[14:27] <jibel> s/on/one
[14:34] <brendand> jibel, is there a simple way one can run autopkgtests in the same environment as they are run in jenkins?
[14:40] <jibel> brendand, yes, http://packaging.ubuntu.com/html/auto-pkg-test.html
[14:40] <jibel> adt-run libpng -U --apt-pocket=proposed --- qemu adt-trusty-amd64-cloud.img
[15:12] <pitti> balloons: if you want, you can try it now
[15:24] <elopio> balloons: you reverted also my changes to the filemanager tests, right? Should I propose the branch again?
[15:24] <balloons> pitti, as soon as I hop off this call I will.. probably will be EOD for you
[15:24] <balloons> elopio, those should be in trunk still
[15:25] <balloons> I'll leave you my thoughts either way :-)
[15:26] <elopio> ah, you are right.
[15:26] <elopio> I'm not sure what diff I read.
[15:43] <pitti> balloons: I G+ed how to run them, let me know how it works for you :)
[15:45] <balloons> pitti, awesome thank you.. pitti do you think you would be available tomorrow for a ubuntu on air session? We'd like to interview you about systemd and all these testing goodies.. And the community is allowed to ask any questions as well
[15:45] <balloons> it's at 1500 UTC tomorrow
[15:46] <balloons> it's a weekly on-air we do (used to be jono, now it's various folks from the community team)
[15:47] <pitti> balloons: 15:00 UTC works, if it's not longer than an hour
[15:48] <balloons> pitti, thanks. Yes, it's an hour
[15:49] <balloons> you'll be with michael and I.. He'll send along an invite
[15:50] <balloons> you don't need to prep anything.. but if you want to give any demos of cool stuff you are working on feel free. I'm asking because people where curious about systemd and some of the other things you work on.. You're popular ;-)
[15:51] <pitti> balloons: heh, it's been some weeks since I've worked on systemd, have been busy with testing stuff; but I'll get back to it!
[15:51] <balloons> pitti, lol.. I'm glad you are on testing stuff :-)
[15:51] <balloons> you are solving a longstanding problem in a slick way.. I'm excitied to try it out
[15:52] <balloons> wxl, did you see the email from stgraber about alpha1? You should reply to it
[16:59] <elopio> balloons: lets talk about reminders.
[17:04] <wxl> balloons: argh, i must not be on the list. i'll have to take care of that when i have time to breathe :)
[17:25] <balloons> elopio, awesome, let's
[17:27] <elopio> I've just updated it and I get:
[17:27] <elopio>   File "/media/elopio/workspace/canonical/reminders-app/trunk/tests/autopilot/reminders/credentials.py", line 114, in _process_session
[17:27] <elopio>     session = Signon.AuthSession.new(identity, method)
[17:27] <elopio> TypeError: Argument 1 does not allow None as a value
[17:27] <elopio> which is a lot better than segfault.
[17:27] <balloons> elopio, so essentially the RemindersTestCaseWithAccount doesn't work reliably
[17:28] <balloons> elopio, when I tried on Friday I ran many times, but only saw one in which the test passed.
[17:29] <elopio> balloons: what's the error that you are getting?
[17:29] <balloons> it's unclear if the account fails to create or if the dispatcher fails, or reminders itself
[17:30] <balloons> elopio, I get a test failure generally.. nothing indicative of were the problem lies
[17:32] <balloons> ohh running just now I got an actually crash, fun
[17:32] <elopio> I'm upgrading because there's a new online accounts.
[17:33] <balloons> yea, I upgraded this morning
[17:33] <balloons> probably why it's crashing today
[18:02] <elopio> balloons: I get the same error after upgrading. TypeError.
[18:02] <elopio> I'll debug.
[18:02] <balloons> http://paste.ubuntu.com/7691432/
[18:11] <balloons> elopio, so let me ask a couple questions. It seems you are starting the app, creating the evernote account through the account console, then sending a fake dispatch message to reminders to let it know the account was created in online accounts and to use it. The tests then wait for the dialog to disappear and then runs
[18:11] <balloons> so first question, why not just make the account before we launch?
[18:12] <balloons> second, I think we could use a little more debugging around creating the account and the dispatch to know when / where/ how things are failing
[20:26] <balloons> elopio, any luck?
[20:32] <elfy> wxl: it's all good fun isn't it :)
[20:56] <elopio> balloons: sorry, I took the lunch break.
[20:56] <elopio> I'm looking at the log as I debug.
[20:57] <elopio> to answer your questions, we are not sending a fake dispatch message to reminders. We are creating a real account through the gi backend of online accounts.
[20:57] <elopio> no fakes here.
[20:58] <balloons> elopio, ok, so how does reminders see the new account? and why create it after the fact?
[20:58] <elopio> we make the account after we launch, because the existing set up opened the app.
[20:59] <elopio> then online accounts sends a signal somehow to the app, and it notices now it has an account.
[20:59] <balloons> elopio, so this signal might not be happening.. or might be taking a long time, etc
[20:59] <balloons> I tried adding a long sleep to no avail
[20:59] <elopio> we could create it before, but it doesn't change anything.
[20:59] <elopio> no, the account is not being created.
[20:59] <elopio> at least here.
[21:00] <elopio> $ account-console list
[21:00] <elopio> does that show the evernote account for you while we are waiting for the dialog to disappear?
[21:06] <balloons> elopio, it wasn't before.. I can check again
[21:06] <balloons> when I was looking friday, it was my first target.. more feedback on successful (or not) account creation
[21:07] <balloons> so since we don't have control over when/how the message is sent to the app, that means it could be a race condition as well
[21:07] <balloons> as I said, it did work one time on friday
[21:08] <balloons> elopio, actually I do see the new account in account-console list :-)
[21:08] <elopio> balloons: if the application doesn't see when the account is created and hides the dialog, then it would be a bug on the app.
[21:10] <balloons> see running it again, no account created
[21:11] <elopio> if the account is not created, the problem is on the credentials.py or online accounts.
[21:11] <elopio> about adding more debug information, yes it will help.
[21:11] <balloons> ok, now this time it worked
[21:11] <balloons> clearly there's a race going on
[21:12] <elopio> I have put a check on the errors on all the async methods, but it seems the error here comes from the internal gi methods.
[21:12] <elopio> balloons: I don't have it clear what you mean with race condition.
[21:13] <elopio> like, we are adding the new account before we are deleting the old one?
[21:13]  * balloons continues to play
[21:13] <balloons> I mean we create the account, and somewhere along the line it's not transmitted to the app..
[21:14] <balloons> but playing further I'm not sure that's correct now
[21:16] <elopio> I'm going to make a new test that only checks that the account is added.
[21:16] <elopio> we don't have that, and that's why there's a huge gap on the feedback we get out of the tests.
[21:19] <balloons> elopio, ok, so interesting.. I've noticed it works if I do the accountmanager creation before starting the app
[21:19] <balloons> I don't create the account itself till after app launch, but I create the object
[21:19] <balloons> before it launches
[21:19] <balloons> let me commit and push and you'll see what I mean
[21:20] <elopio> balloons: ok, that's good. Can you try opening the app manually, and then adding the account manually to see what happens?
[21:21] <balloons> elopio, here's the diff
[21:21] <balloons> http://paste.ubuntu.com/7692263/
[21:21] <balloons> has a couple local commits minus in it, sorry about that
[21:22] <elopio> ok, that's weird, but if it fixes your problem and makes your tests pass always, then I guess it's good.
[21:23] <elopio> I'll try it here, but I think the error I'm seeing is different than the one you are seeing.
[21:23] <balloons> elopio, lol.. well actually the tests fail trying to find some sort of tab, but I'm not worried about that so long as they run.. But yea, weird eh?
[21:23] <elopio> what you are doing there is creating the account manager before patching the home.
[21:23] <balloons> yes indeed
[21:24] <balloons> but we can try some other fun things.. there's probably something more elegant.. it's just indicative of the issue. A clue about what's going on if you will
[21:27] <elopio> balloons: to actually understand things, we would need mardy. This is a lot of async calls with not a lot of documentation, so I have just been doing what he tells me.
[21:28] <balloons> elopio, mmm.. I wonder...
[21:30] <balloons> elopio, I assume there is a backend service being run correct? For music to work I had to pass the environment to upstart as well
[21:30] <elopio> balloons: oh, one more thing. You have to check account-console list using the same HOME as the test.
[21:31] <elopio> balloons: are you on the phone or on desktop?
[21:31] <balloons> elopio, ofc.. i'm on the desktop atm, as it wasn't working on either one.. easier to play with on desktop first
[21:31] <elopio> balloons: ok, I was just wondering if we were on the same environment.
[21:32] <elopio> balloons: utopic, right?
[21:32] <balloons> elopio, yes utopic.. why what is trunk of reminders doing for you?
[21:33] <elopio> balloons: session = Signon.AuthSession.new(identity, method)
[21:33] <elopio> TypeError: Argument 1 does not allow None as a value
[21:33] <elopio> I don't get why it works for you.
[21:33] <balloons> you are totally up to date?
[21:34] <balloons> no weird ppas? let me check package info and compare with you
[21:34] <elopio> balloons: only the apps ppa.
[21:35] <balloons> ubuntu-system-settings-online-accounts Version: 0.4+14.10.20140612-0ubuntu1
[21:36] <balloons> gnome-online-accounts Version: 3.12.2-1
[21:36] <elopio> crap, no. I thought I upgraded but this packages were kept back.
[21:36]  * elopio dist-upgrades.
[21:37] <balloons> :-)
[21:41] <balloons> so elopio you aren't doing anything with FakeURLDispatcherService atm?
[21:42] <elopio> balloons: I am for the tests without account. Click the go to accounts button, and check that the fake url dispatcher got the right url.
[21:42] <balloons> elopio, ahh.. ok, gotcha
[21:42] <elopio> with an account, we don't need url dispatcher at all.
[21:46] <balloons> elopio, well.. I'm wondering what to do
[21:47] <balloons> I'm going to send this at the device and jenkins and see what happens
[21:48] <balloons> tests pass (i forgot to compile the new app, lol)
[22:03] <elopio> ok, after a long fight with my modem, I'm up-to-date
[22:03] <elopio> same error :@
[22:04] <balloons> elopio, wow
[22:04] <balloons> https://code.launchpad.net/~nskaggs/reminders-app/real-account-ap-fix/+merge/224220
[22:06] <elopio> balloons: are all those wait_select_single actually needed?
[22:06] <balloons> elopio, I don't think so. let me revert them
[22:07] <balloons> I'm fighting with my python installation atm
[22:07] <balloons> so I've lost bzr, but I'll revert
[22:08] <elopio> I see my problem, the authentication method is None.
[22:08] <elopio> but I don't understand how's that possible.
[22:08] <elopio> I'll ask mardy by mail.
[22:10] <elopio> balloons: after uncommenting the assertEqual, you can remove these lines:
[22:10] <elopio> 127	self.assertEqual(last_notebook[0], test_notebook_title)
[22:10] <elopio> 128	self.assertEqual(last_notebook[2], 'Private')
[22:10] <elopio> 129	self.assertEqual(last_notebook[3], 0)
[22:10] <elopio> if your changes pass on Jenkins, I'd say lets get them merged.
[22:11] <elopio> leave the understanding for later.
[22:11] <balloons> elopio, lol, I see those now.. k, I'll do that too
[22:11]  * balloons notes reinstalling python is cubersome
[22:12] <balloons> which is almost like cumbersome.. but easier to (mis)spell
[22:13] <knome> :P
[22:14] <balloons> evening knome
[22:15] <knome> evening
[22:15] <knome> watched a lot of football lately? ;)
[22:18] <balloons> knome, I've been watching all the costa rica games.. otherwise I haven't seen any
[22:18] <balloons> lol, btw elopio , I watch the games in Spanish.. It's the only proper way
[22:18] <knome> oh boo
[22:18] <knome> why costa rica only?
[22:19] <balloons> knome, why boo? Is there another game I should see?
[22:19] <elopio> balloons: tomorrow watch it on teletica.com
[22:19] <knome> many!
[22:20] <balloons> elopio, ty, I will
[22:20] <knome> germany-ghana was awesome...
[22:20] <balloons> knome, lol, I suppose. I may watch some of the later games out of group stage
[22:20] <balloons> gets easier with less matches
[22:21] <knome>  italy-uruguay tomorrow
[22:21] <knome> they decide which one goes through
[22:21] <balloons> yes, someone has to join england and go home
[22:22] <knome> so that's an interesting one at least
[22:22] <balloons> course, those are the only 2 other teams I've seen play, lol
[22:22] <knome> :P
[22:22] <knome> and why not the group C matches tomorrow as well
[22:22] <knome> pretty much is still open
[22:23] <knome> wednesday looks somewhat boring, but thursday is going to be interesting all around
[22:24] <balloons> still re-installing..
[22:24] <balloons> ohh I see us plays germany thursday
[22:25] <knome> that too ;)
[22:26] <knome> technically any team can be dropped out from that group..
[22:26] <balloons> yes, with the tie
[22:26] <knome> even germany can be out
[22:27] <knome> well, they'd have to lose to the US and either of the other teams would have to win by far
[22:27] <knome> it's *very* unlikely
[22:31] <balloons> elopio, https://code.launchpad.net/~elopio/reminders-app/fix_with_account/+merge/224221, why not use the helper?
[22:35] <elopio> balloons: which helper?
[22:36] <balloons> elopio, the mocking helper you did.. it merged did it not? The one based on calendar
[22:36] <balloons> elopio, get rid of _patch_home and use the helper right?
[22:36] <elopio> oh, the fake home, yes.
[22:37] <elopio> I didn't want to change anything on that first try.
[22:37] <balloons> fair enough.. btw, I tried implementing jamie's idea of using symlinks to finish off the last errors and it didn't work..
[22:37] <balloons> random sidebar ^^
[22:38] <elopio> balloons: all the test passed there :(
[22:38] <elopio> I was expecting jenkins to show what you see or what I see. It shows neither.
[22:38] <balloons> elopio, yes pretty crazy
[22:38] <balloons> elopio, I tried topapproving riccardo's change that won't land due to the issues experienced
[22:39] <balloons> it theory, it should land now if jenkins is suddenly happy again
[22:39] <elopio> I'll keep rebuilding it, to see if I find sometihng useful.
[22:44] <balloons> elopio, the real tests is https://code.launchpad.net/~rpadovani/reminders-app/newHeader/+merge/220291
[22:44] <balloons> look at the long ling of rejections
[22:55] <elopio> balloons: well, the last errors there show
[22:55] <elopio>     self.main_view.open_toolbar().click_button('addNotebookButton')
[22:56] <elopio> which of course is going to fail as there is no toolbar.
[22:57] <balloons> wow...
[22:57] <balloons> I had thought it was something else
[22:57] <balloons> so all that said, why does it fail on my desktop, lol
[22:57]  * balloons is confused
[22:58] <elopio> that's not in trunk yet, right?
[22:58] <balloons> the newheader isn't in trunk no, that's the merge. We can update the tests easily enough to account for it
[22:58] <elopio> so it could be that you are using trunk, or that you are launching the installed reminders that's trun
[22:58] <elopio> or something weirder, that's alwasy possible.
[22:59] <balloons> indeed.. well, I'll grab his branch and fix the test to account for no toolbar at least
[23:00] <elopio> balloons: ok, thanks.
[23:00] <balloons> ty ofc
[23:00] <elopio> I hate when it works everywhere except in my machine.
[23:00] <elopio> I'll fire up a vm to see if a clean environment is better.
[23:00] <balloons> I'm feeling that way.. I'm starting to feel a little crazy.. but that's ok, if it works, it's good.
[23:01] <balloons> elopio, want to have some fun?
[23:01] <elopio> balloons: sounds like a trick
[23:02] <balloons> elopio, https://plus.google.com/107564545827215425270/posts/ebnEJNS9SJ2
[23:02] <balloons> rather than vm, you could run in an lxc container :-)
[23:02] <elopio> oh yes! that's going to be nice.
[23:02] <balloons> anyways . . .
[23:02] <elopio> but I don't yet understand how will it work with lxc, if mir doesn't suport a virtual framebuffer
[23:03] <elopio> I'll give it a try.
[23:54] <elopio> balloons: I've just set it up on my laptop, and it runs flawlessly from trunk.
[23:54] <balloons> elopio, tried your branch and trunk.. both fail
[23:54] <balloons> my branch works for me
[23:54] <balloons> gonna land https://code.launchpad.net/~nskaggs/reminders-app/newHeader/+merge/224225, then call it for the night
[23:56] <elopio> balloons: it seems from the diff that you are touching the po files.
[23:57] <elopio> as for the autopilot change to use the header, looks good.
[23:57] <elopio> thanks to timp for making it that easy.
[23:57] <balloons> elopio, ugh, that's not intended