*** ignas has quit IRC | 00:43 | |
*** ignas has joined #schooltool | 00:51 | |
*** ignas has quit IRC | 01:18 | |
*** ignas has joined #schooltool | 01:29 | |
*** strichter has joined #schooltool | 02:13 | |
*** srichter has quit IRC | 02:21 | |
povbot | /svn/commits: * ignas committed revision 5310: | 02:28 |
---|---|---|
povbot | /svn/commits: Fixed the test for AtomCalendarView. The test was taking UTC monday, yet the code was using datetime.date.today() which yelded non UTC today (the bug only surfaces atound 1-2am on Sunday in Europe/Vilnius). I am not 100% sure that we want the local current week not the UTC one in the code. | 02:28 |
ignas | oops :) it's Monday 1-2 am | 02:28 |
*** didymo has joined #schooltool | 02:33 | |
*** strichter has quit IRC | 02:50 | |
*** ignas has quit IRC | 02:54 | |
*** tiredbones has left #schooltool | 03:31 | |
*** srichter has joined #schooltool | 03:43 | |
*** tvon has joined #schooltool | 03:46 | |
*** didymo has quit IRC | 07:03 | |
*** didymo has joined #schooltool | 07:04 | |
*** Aiste has joined #schooltool | 09:07 | |
*** Mattias has quit IRC | 09:11 | |
*** SteveA has quit IRC | 09:33 | |
*** auxesis has quit IRC | 10:40 | |
*** auxesis has joined #schooltool | 10:42 | |
*** ignas has joined #schooltool | 11:52 | |
*** mgedmin has joined #schooltool | 11:54 | |
*** thisfred has joined #schooltool | 13:14 | |
*** ignas has quit IRC | 13:27 | |
*** didymo has quit IRC | 14:20 | |
*** ignas has joined #schooltool | 14:24 | |
*** alga has joined #SchoolTool | 14:25 | |
*** th1a has quit IRC | 14:25 | |
*** bskahan has joined #schooltool | 14:54 | |
*** tiredbones has joined #schooltool | 15:10 | |
*** dwelsh has joined #schooltool | 15:51 | |
*** dwelsh has left #schooltool | 15:52 | |
*** dwelsh has joined #schooltool | 15:53 | |
*** dwelsh has left #schooltool | 15:53 | |
*** th1a has joined #schooltool | 16:09 | |
*** vidasp has joined #schooltool | 16:11 | |
*** vidasp has joined #schooltool | 16:12 | |
srichter | good morning (I am here ;-) | 16:20 |
*** erchache has joined #schooltool | 16:23 | |
erchache | hi | 16:23 |
erchache | this night i travel to merida for a conference | 16:23 |
erchache | anybody knows Jeff Waugh of Ubuntu project? | 16:24 |
th1a | erchache: I met him a couple weeks ago. | 16:27 |
erchache | he will going to participate on a dissertation of open source development projects | 16:28 |
erchache | th1a: for schoolbell reasons? | 16:29 |
erchache | the meet | 16:29 |
th1a | Social, essentially. | 16:30 |
erchache | ahhh is he your friend? | 16:30 |
th1a | Well, I just met him the one time. Seems like a nice guy. | 16:30 |
erchache | ahhh ok | 16:30 |
th1a | Now it is time to start the weekly meeting. | 16:31 |
* th1a gavels in the meeting. | 16:31 | |
th1a | Everyone awake? | 16:31 |
srichter | I am here | 16:32 |
th1a | bskahan? | 16:32 |
erchache | well...im here too... | 16:33 |
erchache | ;) | 16:33 |
th1a | Since POV isn't working on SchoolTool right now I don't expect all of your undivided attention. | 16:35 |
* mgedmin is here | 16:35 | |
th1a | That's better. | 16:35 |
alga | most of are :-) | 16:35 |
ignas | Nobody expected the Spanish inquisition! | 16:35 |
alga | most of us are :-) | 16:35 |
erchache | im going to promote schoolbell on this conference.... | 16:35 |
bskahan | hi | 16:36 |
th1a | Ah. | 16:36 |
th1a | Good. | 16:36 |
erchache | linex and guadalinex are using on schools and universities | 16:36 |
th1a | OK, I want to thank ignas for coming up with the list of outstanding issues. | 16:36 |
erchache | and we are making of our guadalinex distribution for university of sevilla on Spain | 16:36 |
th1a | It has been helpful. | 16:36 |
erchache | i think we can integrate schoolbell/schooltool on our repositorie | 16:37 |
ignas | thank albert for translating it into human language :) | 16:37 |
th1a | Anything else POV wants to report? | 16:38 |
erchache | POV? what is this? | 16:39 |
mgedmin | its us -- www.pov.lt | 16:39 |
erchache | ahhhh ok :-P | 16:39 |
alga | th1a: we're waiting for stories for the next contract | 16:40 |
th1a | Right. | 16:40 |
erchache | ok... | 16:40 |
th1a | Working on it. | 16:40 |
th1a | OK. bskahan: what's up? | 16:40 |
bskahan | closed the 2 most reported TZ bugs | 16:41 |
bskahan | reaminging TZ bugs, ical import/export issues and recurrence rules | 16:41 |
bskahan | then back to viewletifying calendar view in trunk | 16:42 |
bskahan | Gus just emailed me today about the forums.st.o url so our forums should be up after a DNS roll | 16:43 |
th1a | What's the status of fhs.schooltool.org? | 16:43 |
bskahan | you can start using it tomorrow, I'll give you the login and pass via email | 16:43 |
th1a | OK. | 16:43 |
th1a | That needs to be a trunk version. | 16:44 |
bskahan | ? | 16:44 |
bskahan | eek | 16:44 |
bskahan | ok | 16:44 |
th1a | I will deal with the consequences. | 16:44 |
bskahan | I'll switch it | 16:44 |
th1a | Sorry I must have forgotten to tell you. | 16:44 |
bskahan | we talked about switching it after the first snapshot release | 16:45 |
th1a | Well, the timetable model was updated in the trunk to handle FHS's schedule. | 16:45 |
bskahan | ah | 16:45 |
th1a | But we didn't backport it. | 16:45 |
bskahan | ok | 16:45 |
th1a | OK. srichter? | 16:47 |
th1a | Stephan and I discussed rearranging the order of some of his work on Friday. | 16:47 |
srichter | right, so I updated you already on Friday ;-) | 16:48 |
th1a | Well, it may be of interest to everyone else. | 16:48 |
srichter | I just finish addressing the issues raised by Marius' comments | 16:48 |
srichter | then I finish doc phase I and do phase II | 16:49 |
srichter | I'll push back the REST fixes till later | 16:49 |
srichter | since the doc stuff is time sensitive | 16:49 |
srichter | <done> | 16:49 |
th1a | Well, specifically, this means writing a tutorial for SchoolTool that includes using viewlets | 16:50 |
th1a | so that POV has some guidance when they start attendance. | 16:50 |
th1a | And doing that prior to viewletizing the current views. | 16:50 |
srichter | right, I will do viewletization as much is necessary for the documentation though | 16:51 |
erchache | send me a mail when finish first preview of that...... | 16:51 |
erchache | i can do documentation..... | 16:52 |
srichter | I will also switch to the new viewlet implementation this week | 16:52 |
th1a | srichter and bskahan need to coordinate on the shared task they have in the viewlet conversion. | 16:52 |
srichter | right | 16:52 |
th1a | So... | 16:53 |
srichter | btw, ZC, Projekt01 and us now agreed on the content provider API, so that it can make it into the core for 3.2 | 16:53 |
srichter | th1a: I think the overlap is small right now and not acute until I am done with the docs | 16:53 |
bskahan | srichter, I'm going to have to hit you up with some questions tomorrow when I start working on it agin | 16:54 |
th1a | OK. | 16:54 |
srichter | sure, so I am not available all day tomorrow, since I am in school | 16:54 |
bskahan | ok | 16:54 |
th1a | As long as you two work it out among yourselves. | 16:54 |
th1a | I'm going to be traveling the next three days, unless I get socked in by a hurricane. | 16:55 |
th1a | I'm going to an ed-tech conference in Colorado. They gave me a booth in this exhibition, which is nice, except it is a lot harder to come up with stuff to put in a booth than do a powerpoint. | 16:56 |
th1a | So my sister and I are whipping up some posters. | 16:56 |
th1a | It is a bit stressful. | 16:56 |
th1a | Hm... no jinty today. | 16:57 |
ignas | he told he'll be away on sunday | 16:58 |
th1a | ignas: right. Thanks. | 16:58 |
th1a | I guess everything seems in order for the release. | 16:58 |
th1a | I got the RPM's already. | 16:59 |
th1a | I sent Gintas a plea to make more Windows .exe's. | 16:59 |
th1a | I don't think I'm going to have Mac packages... | 16:59 |
th1a | some work is still needed there. | 16:59 |
erchache | daemon for windows are made? | 17:00 |
th1a | We're getting closer though. | 17:00 |
th1a | We've got a services script for Windows which might work. | 17:00 |
erchache | ok.... | 17:00 |
erchache | includes on tarballs? | 17:00 |
th1a | Not at this point. | 17:01 |
th1a | It is on the website. | 17:01 |
th1a | Moving on, the response to the testing guidelines was less violent than I expected. | 17:02 |
bskahan | "As much as possible, browser view classes should not perform complex computations. These should be handled by the Python API code. " | 17:03 |
th1a | I should be able to make some minor changes to satisfy some of mgedmin's concerns. | 17:03 |
*** dwelsh has joined #schooltool | 17:04 | |
alga | my rule of thumb: if there are if statements in the code, there needs to be a test | 17:04 |
*** dwelsh has quit IRC | 17:04 | |
alga | if there is a loop longer than a oneliner list comprehension, it also needs a test | 17:04 |
th1a | I think the question is, when is it sufficient to cover a view class with a functional test. | 17:05 |
th1a | Everything is still tested. | 17:05 |
alga | ha! | 17:05 |
bskahan | I'm not sure I agree with that part of the guideline, there's reasonably complex logix in view code that doesn't make sense to put anywhere else because its browser specific | 17:05 |
alga | what about edge cases? | 17:05 |
alga | what happens when we press this, this and this button? | 17:06 |
alga | what if there is no data? | 17:06 |
alga | functional tests rarely go into such details | 17:06 |
alga | what happens if there are these error conditions? | 17:06 |
th1a | bskahan: That's why it says "as much as possible." | 17:07 |
th1a | Sometimes you need more complex logic in view classes, and then you need to test those classes. | 17:07 |
srichter | alga: how likely are you to do a mistake in the test setup that is soemtimes in excess of 100 lines? | 17:08 |
ignas | srichter, mistakes in test setup surface easily | 17:08 |
srichter | the point is that with a functional test you can cover all the edge cases that can occur | 17:08 |
alga | yep | 17:08 |
ignas | if you do a mistake in 100 line test setup - your test doesn't work | 17:08 |
srichter | ignas: no, not necessarily | 17:08 |
srichter | that is not true | 17:09 |
ignas | not absolutely true | 17:09 |
ignas | but i haven't seen that many subtle test failures because of some small mistake in the test setup | 17:09 |
th1a | OK, there are a couple questions here. | 17:09 |
srichter | ignas: I have spent hours getting the right test setup going to make a trivial test pass, which is a sign that the test setup is much more complex than the benefit of the test will ever be | 17:10 |
srichter | also, coming back to the browser functional test edge case | 17:10 |
ignas | srichter, if your test setup is lower than some margin - you can't trust any of the tests anymore : | 17:11 |
srichter | accessing those views via Python more or less tests a use case that can never occur; i.e. use the Python API of a view | 17:11 |
ignas | s/setup/coverage/ | 17:11 |
srichter | exactely | 17:11 |
srichter | I do not trust many ST tests for this reason | 17:12 |
srichter | note that Zope 3 itself has a bunch of bad tests too, but this is mainly historical of course | 17:12 |
ignas | did you try looking at the real coverage of our unit tests | 17:12 |
ignas | ? | 17:12 |
srichter | yeah, and they are mostly integration tests | 17:13 |
ignas | no | 17:13 |
ignas | i mean --coverage | 17:13 |
srichter | oh I see, no I have not looked at this | 17:13 |
srichter | is that an option on the test runner? | 17:13 |
ignas | not sure it still works | 17:13 |
ignas | some time ago it worked | 17:13 |
ignas | takes a looong time though :/ | 17:14 |
ignas | most of the untested code of ours are in places that throw exceptions ... | 17:14 |
ignas | corner cases ... | 17:15 |
th1a | One thing that would be helpful to wrap this up is a better definition or some examples of a "simple" view class. | 17:16 |
th1a | Any suggestions? | 17:17 |
srichter | for me a simple view class is one that only collects data from other unit tested Python APIs and prepares them in a PT-friendly format | 17:17 |
alga | I offered mine | 17:18 |
mgedmin | I agree with srichter's definition -- assuming there are no complicated conditions/aggregations | 17:18 |
bskahan | some of the container views fit alga's definition, iirc | 17:18 |
alga | if your methods are mere list comprehension one liners, you can rely on ftests | 17:18 |
th1a | alga: I misread yours earlier. | 17:18 |
bskahan | but combine that with marius' email comment about a minimum render test and you probably haven't changed from the current policy | 17:19 |
mgedmin | minimum render test? what's that? | 17:19 |
srichter | there are also trivial try/excepts that are easily covered in a ftest | 17:19 |
* mgedmin is reading http://c2.com/cgi/wiki?CanFunctionalTestsReplaceUnitTests now | 17:19 | |
bskahan | mgedmin, you mentioned in an email that view's should have a minimum test (as a placeholder for when they get complicated later, if nothing else) | 17:20 |
mgedmin | yes, but I didn't say anything about rendering! | 17:21 |
th1a | I don't think I agree with requiring placeholder tests, since setup seems to be timeconsuming. | 17:21 |
mgedmin | rendering views in unit tests requires complicated setup that srichter objects to | 17:21 |
bskahan | mgedmin, /me nods | 17:21 |
bskahan | ok | 17:21 |
mgedmin | and I sometimes consider to be a mistake | 17:21 |
bskahan | misread | 17:21 |
srichter | right | 17:21 |
srichter | this is exactely what I am saying | 17:22 |
mgedmin | an empty test module that just imports a view class requires no expensive setup | 17:22 |
srichter | if we want to do unit tests right, we have to write many more stubs | 17:22 |
srichter | unfortunately, I do not think this is practical | 17:22 |
mgedmin | it requires the tedious setup -- creating a test_foo.py module, putting the boilerplate inside, svn add, etc. | 17:22 |
*** Aiste has quit IRC | 17:22 | |
mgedmin | and I want to invest in that tedious but simple and inexpensive setup earlier | 17:22 |
th1a | So by alga's standard, in http://source.schooltool.org/svn/trunk/schooltool/src/schooltool/level/browser/level.py | 17:23 |
* mgedmin reads http://c2.com/cgi/wiki?DoBothUnitAndAcceptanceTests | 17:23 | |
th1a | LevelContainerView doesn't need a unit test. | 17:24 |
th1a | LevelValidationView does? | 17:24 |
th1a | IEditLevelSchema doesn't. | 17:24 |
th1a | EditLevelAdapter does by anyone's definition. | 17:24 |
th1a | LevelAddView does | 17:25 |
th1a | and LevelEditView doesn't. | 17:25 |
* mgedmin nods | 17:25 | |
th1a | It seems to me that LevelAddView can be tested perfectly well with just a functional test. | 17:26 |
th1a | Or tests. | 17:26 |
mgedmin | thats.... true, technically | 17:26 |
alga | what happens when they grow? | 17:26 |
* mgedmin coughs | 17:26 | |
* mgedmin notices that he omitted an apostrophe in his last uttering, and is flabbergasted | 17:27 | |
th1a | If they grow, you have to write unit tests. | 17:27 |
* mgedmin wonders why the lack of capital letters doesn't annoy him | 17:27 | |
th1a | Gives you some incentive to keep the view classes simple. | 17:28 |
srichter | alga: then you can decide to: (a) put the complicated code into another code segment and unit test that, or (b) write a unit test for the view | 17:28 |
th1a | Well, I think we're within a range of opinion that we can all coexist within. | 17:29 |
th1a | Certainly I'm not trying to force POV to test less. | 17:29 |
th1a | And with that, our time is up. | 17:30 |
alga | Are we still formally responsible for the quality of the codebase? | 17:30 |
th1a | I still intend to write time for code reviews into your contracts. | 17:31 |
ignas | what do you expect as a result of the "code reviews" ? | 17:33 |
th1a | Pretty much what you've done before. | 17:33 |
th1a | Point out bugs, problems, missing tests, style issues. | 17:33 |
ignas | but well - what is the point of code review if well - no one listens to our comments ? | 17:34 |
mgedmin | ignas, people do listen | 17:34 |
mgedmin | people just don't agree with everything | 17:34 |
srichter | right | 17:35 |
* mgedmin mutters "when I will be an evil dictator, I'll remember this" | 17:35 | |
th1a | I certainly don't think you should feel like I'm making a blanket rejection of your point of view. | 17:35 |
* th1a bangs the virtual gavel. | 17:37 | |
* mgedmin nods | 17:37 | |
*** alga has quit IRC | 18:14 | |
erchache | can make a zope question? | 18:37 |
bskahan | th1a, what program did you use to do the flash demo for ST? | 18:39 |
erchache | i hate flash.... | 18:39 |
th1a | I didn't do one with flash, but if I did, I would use vnc2swf. | 18:40 |
erchache | how i can connect a ms-sql server to zope on the most easy and fast way? | 18:41 |
th1a | I don't know. | 18:43 |
srichter | also look at wink | 18:43 |
srichter | "wink" is a very cool screen capture program to make nice demos | 18:43 |
bskahan | thanks | 18:45 |
povbot | /svn/commits: * srichter committed revision 5311: | 19:06 |
povbot | /svn/commits: Implemented several suggestions from Marius: | 19:06 |
povbot | /svn/commits: - Wrote unit tests as required by Tom. Note that this was prior to | 19:06 |
povbot | /svn/commits: the testing requirements discussion. | 19:06 |
povbot | /svn/commits: - Completed IManagerWorkItems interface. | 19:06 |
povbot | /svn/commits: - Work items are now a special dictionary and not a list anymore. | 19:07 |
povbot | /svn/commits: - Ids for work items are now generated within the custom dictionary, thus | 19:07 |
povbot | /svn/commits: making it much more efficient. | 19:07 |
*** dwelsh has joined #schooltool | 19:27 | |
dwelsh | th1a: you there? | 19:27 |
*** erchache has quit IRC | 19:42 | |
*** alga has joined #SchoolTool | 19:42 | |
*** srichter has quit IRC | 19:56 | |
*** JohnnyST has joined #schooltool | 20:09 | |
*** vidasp has quit IRC | 20:23 | |
*** srichter has joined #schooltool | 20:24 | |
*** thisfred has quit IRC | 20:32 | |
th1a | dwelsh: I | 21:06 |
th1a | am here. | 21:06 |
*** mgedmin has quit IRC | 21:14 | |
*** bskahan has quit IRC | 21:36 | |
*** ignas has quit IRC | 21:46 | |
*** alga has quit IRC | 21:47 | |
*** pcardune has quit IRC | 21:51 | |
povbot | /svn/commits: * srichter committed revision 5312: | 22:15 |
povbot | /svn/commits: Added missing subscriber unit tests. | 22:15 |
dwelsh | th1a: can you hear me now? | 23:04 |
dwelsh | th1a: yo tom. | 23:40 |
*** ignas has joined #schooltool | 23:44 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!