From 15d13d9abb9165b23369ea91d58505ca98d48b31 Mon Sep 17 00:00:00 2001 From: Azul Date: Tue, 27 Nov 2012 13:01:57 +0100 Subject: first attempts to map comments --- help/app/models/ticket.rb | 16 ++++++++++++++++ help/test/unit/ticket_test.rb | 12 ++++++++++-- 2 files changed, 26 insertions(+), 2 deletions(-) diff --git a/help/app/models/ticket.rb b/help/app/models/ticket.rb index bc6ea59..81cd08e 100644 --- a/help/app/models/ticket.rb +++ b/help/app/models/ticket.rb @@ -48,6 +48,7 @@ class Ticket < CouchRest::Model::Base emit(doc._id, doc); }" view :by_is_open_and_created_by + view :by_is_open_and_created_at view :by_updated_at_and_is_open, :map => "function(doc) { @@ -62,6 +63,21 @@ class Ticket < CouchRest::Model::Base emit(doc.updated_at, doc); } }" + view :by_commented_by, + :map => + "function(doc) { + doc.comments.forEach(function(comment){ + emit(comment.posted_by, doc); + }); + }" + + view :by_commented_by_and_commented_at, + :map => + "function(doc) { + doc.comments.forEach(function(comment){ + emit([comment.posted_by, comment.posted_at], doc); + }); + }" end diff --git a/help/test/unit/ticket_test.rb b/help/test/unit/ticket_test.rb index 6b63a23..73a2af5 100644 --- a/help/test/unit/ticket_test.rb +++ b/help/test/unit/ticket_test.rb @@ -23,7 +23,7 @@ class TicketTest < ActiveSupport::TestCase #user = LeapWebUsers::User.create #t.user = user - + #t.email = '' #invalid #assert !t.valid? #t.email = 'blah@blah.com, bb@jjj.org' @@ -40,7 +40,7 @@ class TicketTest < ActiveSupport::TestCase @sample.created_by = 22 #current_user assert @sample.is_creator_validated? end - + =begin # TODO: do once have current_user stuff in order test "code if & only if not creator-validated" do @@ -56,6 +56,14 @@ class TicketTest < ActiveSupport::TestCase end =end + test "finds open tickets sorted by created_at" do + tickets = Ticket.by_is_open_and_created_at. + startkey([true, 0]). + endkey([true, Time.now]) + assert_equal Ticket.by_is_open.key(true).count, tickets.count + end + + end -- cgit v1.2.3