15:32 <popey> #startmeeting ubuntu touch sudoku app meeting 15:32 <meetingology> Meeting started Fri Jun 28 15:32:52 2013 UTC. The chair is popey. Information about MeetBot at http://wiki.ubuntu.com/meetingology. 15:32 <meetingology> 15:32 <meetingology> Available commands: #accept #accepted #action #agree #agreed #chair #commands #endmeeting #endvote #halp #help #idea #info #link #lurk #meetingname #meetingtopic #nick #progress #rejected #replay #restrictlogs #save #startmeeting #subtopic #topic #unchair #undo #unlurk #vote #voters #votesrequired 15:32 <fredoust> ok for me too 15:33 <popey> I'll paste some links first, which will be useful 15:33 <popey> blueprint: https://blueprints.launchpad.net/ubuntu-phone-commons/+spec/sudokotouch-coreapps-development 15:33 <popey> bugs: https://bugs.launchpad.net/sudoku-app 15:33 <popey> reviews: https://code.launchpad.net/sudoku-app 15:33 <popey> burndown: http://status.ubuntu.com/coreapps-13.10/ 15:33 <popey> Ok, so I'm Alan Pope, dpm (David Planella) is also around.. 15:34 <popey> Thanks for coming guys, sorry about moving the meeting around all over the place 15:34 <dinkometalac> no problem 15:34 <fredoust> no problem 15:34 <popey> So the way we usually run these meetings is as a catch up, make sure we're on track, and to deal with any issues that come up 15:34 <popey> The main way we see if we're on track is via the blueprint and the burndown chart 15:35 <popey> the blueprint has a bunch of work items with statuses DONE, TODO, INPROGRESS, BLOCKED etc 15:35 <dpm> hi dinkometalac, fredoust, thanks for taking the time to join the meeting! 15:35 * dpm waves 15:35 <popey> we have them assigned to milestones, which for us finish on the 17th of each month 15:35 <fredoust> hi 15:35 <popey> so we're currently in milestone coreapps-13.10-month-3 which ends on 17th July 15:35 <dinkometalac> david: hi 15:36 <dinkometalac> yes 15:36 <dinkometalac> so in this month 15:36 <dinkometalac> we have to write som autopilot tests 15:36 <dinkometalac> some* 15:36 <popey> you can see the milestones listed here https://launchpad.net/ubuntu-phone-commons/+milestones 15:36 <popey> ah! you said the magic word, autopilot, at this point you may have woken balloons (Nick Skaggs) 15:37 <balloons> lol popey 15:37 <popey> he's the expert on QA / Testing and Autopilot 15:37 <dinkometalac> popey: hahaha 15:37 <balloons> Wonderful to meet you dinkometalac 15:37 <dinkometalac> balloons: good to have you on board 15:37 <dinkometalac> :) 15:37 <popey> So the first order of business is usually to get the work items assigned to people 15:38 <popey> because if they aren't assigned to people then they generally don't get done ☻ 15:38 <balloons> So yes, actually it would be great if we could take a couple minutes and brianstorm the tests needed.. Whenever it fits the agenda popey 15:38 <popey> sure, balloons will ping you 15:38 <popey> so if you take a look at the blueprint you'll see some "TODO" with no name, please volunteer to grab work items 15:38 <dinkometalac> ok 15:38 <popey> and just stick [yourlaunchpadnickname] in front of them 15:39 <dinkometalac> i thought i should work on 15:39 <dinkometalac> scoring capability 15:39 <popey> launchpad is a bit picky about the formatting so be careful with it 15:39 <dinkometalac> ok 15:39 <popey> so if there's items on a later milestone, you can move them up to this month (month 3) 15:39 <dinkometalac> ok 15:40 <popey> there's of course also some bugs to work on, which we don't record on the work items unless they're significant pieces of work 15:40 <popey> all the bugs we have so far are relatively trivial compared to the work items we have listed, I think. 15:40 <dinkometalac> yes 15:41 <dinkometalac> they are quite trivial 15:41 <dinkometalac> and IMHO 15:41 <popey> Good, glad we agree ☻ 15:41 <dinkometalac> solving them would be piece of cake 15:41 <dinkometalac> :) 15:41 <popey> Excellent. I like that. 15:41 <popey> The game plays really nicely I find. 15:41 <dinkometalac> good 15:42 <dinkometalac> great 15:42 <dinkometalac> good to hear that 15:42 <popey> I have a long train journey tonight, so will play some more ☻ 15:42 <dinkometalac> i tested it on gnex 15:42 <popey> I have tested it on the nexus 4 15:42 <dinkometalac> and i enlarged the fonts 15:42 <dinkometalac> a bit 15:42 <dinkometalac> they were too small 15:42 <popey> i also have a nexus 7 so will test there too 15:42 <dinkometalac> on gnex 15:42 <popey> interesting 15:43 <dinkometalac> now they fill the rectangle 15:43 <popey> So as we're talking about testing, now is probably a good time for balloons to speak about tests needed.. 15:43 <dinkometalac> ok 15:43 <balloons> yes, so dinkometalac can we generate a list of big features that need testing at the moment 15:43 <dinkometalac> well 15:44 <balloons> keep in mind, autopilot tests should be used for things you can verify at a unit test level 15:44 <dinkometalac> i'm not familiar with 15:44 <dinkometalac> the concept in general 15:44 <balloons> user interactions, those sorts of things 15:44 <dinkometalac> aha 15:44 <dinkometalac> i get it 15:44 <dinkometalac> so 15:44 <dinkometalac> if i press that button 15:44 <dinkometalac> that happens 15:44 <dinkometalac> etc. 15:44 <dinkometalac> ? 15:44 <balloons> *lol, things you *can't* verify at a unit test level 15:44 <balloons> yes, I want to make sure pushing the button makes the screen do this 15:44 <dinkometalac> ok 15:44 <balloons> or swiping causes this to happen 15:44 <balloons> etc 15:45 <dinkometalac> ok 15:45 <dinkometalac> so 15:45 <balloons> anything UI related ;-) You don't need to check if your logic is correct specific variables in functions, etc 15:45 <dinkometalac> for that 15:45 <dinkometalac> we can make test that do exactly that 15:45 <dinkometalac> but 15:45 <dinkometalac> these are trivial 15:46 <dinkometalac> and since the game is pretty visual 15:46 <dinkometalac> as in 15:46 <dinkometalac> every game command is visualized 15:46 <balloons> yes, so tap to enter a '9', the box should update and display 9 15:46 <dinkometalac> ok 15:46 <balloons> indeed ;-) 15:46 <dinkometalac> ok 15:47 <dinkometalac> i'm still not familiar with autopilot 15:47 <dinkometalac> i'll have to read the docs 15:47 <dinkometalac> but 15:47 <dinkometalac> since it's python 15:47 <balloons> sure thing. There's an emulator that makes it easier for you as well 15:47 <dinkometalac> should be easy 15:47 <balloons> the python is really simple, even I can do it! 15:47 <dinkometalac> i'm very familiar with python 15:48 <dinkometalac> so no worries 15:48 <balloons> lol, that's no exaggeration :-) 15:48 <dinkometalac> :D 15:48 <dinkometalac> so 15:48 <balloons> ohh excellent, you'll be write at home 15:48 <dinkometalac> do you have any plans 15:48 <dinkometalac> what should be tested 15:48 <dinkometalac> except 15:48 <dinkometalac> pressing the buttons 15:49 <balloons> well we can start with those. I've not played with the game as much as you have I'm sure :-0 15:49 <dinkometalac> oh, ok 15:49 <balloons> I want to get this list into the blueprint today 15:49 <dinkometalac> do we have to write all possible tests 15:49 <balloons> then I'd like to promote the app and get you and some others writing tests for it. The tests will grow as you add features 15:50 <dinkometalac> ok 15:50 <balloons> dinkometalac, let's hit the big stuff first, then fill in. Full coverage is always the goal, but we don't have to stress about getting there right away 15:50 <balloons> hit the big stuff first :-) 15:51 <dinkometalac> ok 15:51 <dinkometalac> UI response comes to mind first 15:51 <dinkometalac> so in the main tab 15:51 <dinkometalac> all buttons 15:51 <dinkometalac> toolbar 15:52 <dinkometalac> and that's about it 15:52 <dinkometalac> so no game logic tests 15:52 <balloons> ok perfect 15:52 <balloons> so can you list each button? 15:52 <balloons> I'll make a quick bug for each and add to the blueprint 15:53 <dinkometalac> game buttons are in QML repeater 15:53 <balloons> for starters I'll assign you things in the blueprint, but we're going to try and get other folks interested and helping as well 15:53 <dinkometalac> so, testing one button 15:53 <dinkometalac> is like testing all the buttons 15:53 <balloons> ok, so just have a look in the qml repeater file? 15:53 <dinkometalac> ok 15:53 <dinkometalac> let me just open the code 15:53 <balloons> we can test all the buttons easily enough -- it's automated test ;-) 15:54 <balloons> if the backend logic is the same then our test can be simplified 15:54 <dinkometalac> so 15:54 <dinkometalac> SudokuButtonsGrid.qml 15:54 <dinkometalac> SudokuButton { id: gridButton; 15:54 <dinkometalac> this part 15:54 <dinkometalac> defines the button 15:54 <dinkometalac> in the game 15:54 <dinkometalac> all 81 of them 15:55 <balloons> hehe :-) 15:55 <dinkometalac> is this what you mean 15:55 <dinkometalac> by listing all the buttons 15:55 <dinkometalac> :D 15:56 <balloons> i assume that's the grid number button right? 15:56 <balloons> so the test for that can be one test 15:56 <balloons> I'm branching the code now to follow along ;-) 15:56 <dinkometalac> yes 15:56 <dinkometalac> this is inside the grid 15:56 <balloons> ok, so I'll add that 15:57 <balloons> what elesE? 15:57 <dinkometalac> toolbar 15:57 <dinkometalac> so 15:58 <dinkometalac> pressing the button for new game 15:58 <dinkometalac> should change the label for all the game buttons 15:58 <balloons> ouch getting qmlviewer: could not exec '/usr/lib/x86_64-linux-gnu/qt5/bin/qmlviewer': No such file or directory 15:58 <balloons> ok, so test for newgame button 15:58 <dinkometalac> wait? 15:59 <dinkometalac> not starting the game at all? 15:59 <balloons> I guess I can't run to see the app to follow along.. I'll have to fix the issue 15:59 <balloons> not starting the game? what do you mean? 15:59 <balloons> each test is independent.. you'll run a setup step which will start the app in the default state 16:00 <dinkometalac> that error you're getting 16:00 <dinkometalac> aha 16:00 <dinkometalac> ok 16:00 <balloons> yes, it's something with qmlviewer not your app I don't think :-) 16:00 <dinkometalac> ok 16:00 <dinkometalac> so 16:00 <dinkometalac> in toolbar 16:00 <dinkometalac> hint button 16:01 <balloons> d'oh.. it's qmlscene to run it. lol 16:01 <balloons> I see the game now 16:01 <dinkometalac> i think it should be enabled by default 16:01 <balloons> yes it's disabled on load 16:01 <balloons> then enabled once started 16:01 <balloons> cool.. that's another test perfect 16:01 <popey> I am afraid I need to go.. 16:01 <dinkometalac> popey: ok 16:02 <popey> dinkometalac: fredoust do you have any questions / issues right now? 16:02 <balloons> I see a clear button as well on the entry screen 16:02 <popey> (then I'll let balloons have you back) 16:02 <dinkometalac> popey: can you just check why the launchpad build fails? 16:02 <fredoust> sorry if I'm not writing 16:02 <popey> fredoust: no problem 16:02 <fredoust> i'm not familiar with this kind of work 16:02 <fredoust> but i'm reading all ;) 16:02 <fredoust> no questions for the moment 16:02 <fredoust> thanks 16:02 <popey> fredoust: it's fine, the first of these meetings is always "information overload" ☻ 16:03 <fredoust> ok 16:03 <popey> dinkometalac: I would recommend asking in #ubuntu-touch why builds fail 16:03 <dinkometalac> ok 16:03 <popey> fginther should be able to help you 16:03 <dinkometalac> ok 16:03 <dinkometalac> i guess it's probably something wrong with changelog in debian 16:03 <dinkometalac> but not sure 16:03 <popey> ok, I am going to end the meeting, but you guys can carry on chatting either here or in #ubuntu-touch or #ubuntu-quality - whatever you choose 16:04 <popey> thanks guys, I'm super excited to be working with you! 16:04 <popey> and now I will go and play sudoku on the train! :D 16:04 <popey> #endmeeting