You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@allura.apache.org by je...@apache.org on 2015/08/13 20:06:34 UTC
[07/50] allura git commit: [#7930] ticket:829 Don't update project's
last_updated on thread view
[#7930] ticket:829 Don't update project's last_updated on thread view
Project: http://git-wip-us.apache.org/repos/asf/allura/repo
Commit: http://git-wip-us.apache.org/repos/asf/allura/commit/26d0e066
Tree: http://git-wip-us.apache.org/repos/asf/allura/tree/26d0e066
Diff: http://git-wip-us.apache.org/repos/asf/allura/diff/26d0e066
Branch: refs/heads/ib/7922
Commit: 26d0e066e2e886ad5d4c4df7d9fb2f4e139208ce
Parents: 0015f47
Author: Igor Bondarenko <je...@gmail.com>
Authored: Mon Aug 3 17:24:53 2015 +0300
Committer: Dave Brondsema <db...@slashdotmedia.com>
Committed: Wed Aug 5 19:00:35 2015 +0000
----------------------------------------------------------------------
Allura/allura/controllers/discuss.py | 2 ++
.../forgediscussion/tests/functional/test_forum.py | 13 +++++++++++++
2 files changed, 15 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/allura/blob/26d0e066/Allura/allura/controllers/discuss.py
----------------------------------------------------------------------
diff --git a/Allura/allura/controllers/discuss.py b/Allura/allura/controllers/discuss.py
index b329b01..df8076d 100644
--- a/Allura/allura/controllers/discuss.py
+++ b/Allura/allura/controllers/discuss.py
@@ -110,6 +110,7 @@ class DiscussionController(BaseController, FeedController):
else:
thread['subscription'] = False
M.session.artifact_orm_session._get().skip_mod_date = True
+ M.session.artifact_orm_session._get().skip_last_updated = True
redirect(request.referer)
def get_feed(self, project, app, user):
@@ -193,6 +194,7 @@ class ThreadController(BaseController, FeedController):
self.thread.num_views += 1
# the update to num_views shouldn't affect it
M.session.artifact_orm_session._get().skip_mod_date = True
+ M.session.artifact_orm_session._get().skip_last_updated = True
count = self.thread.query_posts(page=page, limit=int(limit)).count()
return dict(discussion=self.thread.discussion,
thread=self.thread,
http://git-wip-us.apache.org/repos/asf/allura/blob/26d0e066/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py
----------------------------------------------------------------------
diff --git a/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py b/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py
index ae91bf0..23ec71f 100644
--- a/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py
+++ b/ForgeDiscussion/forgediscussion/tests/functional/test_forum.py
@@ -831,6 +831,19 @@ class TestForum(TestController):
r = self.app.get(u'/p/test/discussion/create_topic/téstforum/'.encode('utf-8'))
assert u'<option value="téstforum" selected>Tést Forum</option>' in r
+ def test_viewing_a_thread_does_not_update_project_last_updated(self):
+ # Create new topic/thread
+ r = self.app.get('/discussion/create_topic/')
+ url = self.fill_new_topic_form(r).submit().follow().request.url
+
+ # Remember project's last_updated
+ timestamp_before = M.Project.query.get(shortname='test').last_updated
+
+ # View the thread and make sure project last_updated is not updated
+ thread = self.app.get(url)
+ timestamp_after = M.Project.query.get(shortname='test').last_updated
+ assert_equal(timestamp_before, timestamp_after)
+
class TestForumStats(TestController):
def test_stats(self):