Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rwxr-xr-xtests/integration/node_client.py2
-rwxr-xr-xtests/units/client/online_routes.py16
-rwxr-xr-xtests/units/db/index.py4
-rw-r--r--tests/units/model/__main__.py4
-rwxr-xr-xtests/units/model/comment.py75
-rwxr-xr-xtests/units/model/post.py (renamed from tests/units/model/solution.py)26
-rwxr-xr-xtests/units/model/review.py62
-rwxr-xr-xtests/units/node/node.py294
-rwxr-xr-xtests/units/node/stats_node.py174
-rwxr-xr-xtests/units/node/sync_online.py136
-rwxr-xr-xtests/units/node/volume.py142
11 files changed, 252 insertions, 683 deletions
diff --git a/tests/integration/node_client.py b/tests/integration/node_client.py
index 601e969..64fe97c 100755
--- a/tests/integration/node_client.py
+++ b/tests/integration/node_client.py
@@ -130,7 +130,7 @@ class NodeClientTest(tests.Test):
def test_UsecaseOOB(self):
self.cli(['--quiet', 'PUT', '/context/context', 'cmd=clone', '-jd', 'true'])
- assert exists('client/db/release/im/release/data.blob/activity/activity.info')
+ assert exists('client/db/release/re/release/data.blob/activity/activity.info')
self.assertEqual(['clone'], json.load(file('client/db/context/co/context/layer'))['value'])
def cli(self, cmd, stdin=None):
diff --git a/tests/units/client/online_routes.py b/tests/units/client/online_routes.py
index 0431934..1d1b780 100755
--- a/tests/units/client/online_routes.py
+++ b/tests/units/client/online_routes.py
@@ -25,7 +25,7 @@ from sugar_network.model.user import User
from sugar_network.model.report import Report
from sugar_network.model.context import Context
from sugar_network.model.release import Release
-from sugar_network.model.artifact import Artifact
+from sugar_network.model.post import Post
from sugar_network.toolkit.router import route
from sugar_network.toolkit import Option
@@ -1223,7 +1223,7 @@ Can't find all required implementations:
ipc.get(['context', guid], reply=['title']))
def test_RestrictLayers(self):
- self.start_online_client([User, Context, Release, Artifact])
+ self.start_online_client([User, Context, Release])
ipc = IPCConnection()
context = ipc.post(['context'], {
@@ -1404,18 +1404,18 @@ Can't find all required implementations:
assert trigger.wait(.1) is not None
def test_ContentDisposition(self):
- self.start_online_client([User, Context, Release, Artifact])
+ self.start_online_client([User, Context, Release, Post])
ipc = IPCConnection()
- artifact = ipc.post(['artifact'], {
- 'type': 'instance',
+ post = ipc.post(['post'], {
+ 'type': 'object',
'context': 'context',
'title': 'title',
- 'description': 'description',
+ 'message': '',
})
- ipc.request('PUT', ['artifact', artifact, 'data'], 'blob', headers={'Content-Type': 'image/png'})
+ ipc.request('PUT', ['post', post, 'data'], 'blob', headers={'Content-Type': 'image/png'})
- response = ipc.request('GET', ['artifact', artifact, 'data'])
+ response = ipc.request('GET', ['post', post, 'data'])
self.assertEqual(
'attachment; filename="Title.png"',
response.headers.get('Content-Disposition'))
diff --git a/tests/units/db/index.py b/tests/units/db/index.py
index ef6df53..9d996b0 100755
--- a/tests/units/db/index.py
+++ b/tests/units/db/index.py
@@ -30,6 +30,10 @@ class IndexTest(tests.Test):
def test_Create(self):
db = Index({'key': IndexedProperty('key', 1, 'K')})
+ self.assertEqual(
+ ([], 0),
+ db._find())
+
db.store('1', {'key': 'value_1'})
self.assertEqual(
([{'guid': '1', 'key': 'value_1'}], 1),
diff --git a/tests/units/model/__main__.py b/tests/units/model/__main__.py
index 6cc5c7f..2766988 100644
--- a/tests/units/model/__main__.py
+++ b/tests/units/model/__main__.py
@@ -2,11 +2,9 @@
from __init__ import tests
-from comment import *
+from post import *
from context import *
from release import *
-from review import *
-from solution import *
from routes import *
if __name__ == '__main__':
diff --git a/tests/units/model/comment.py b/tests/units/model/comment.py
deleted file mode 100755
index 495e6cb..0000000
--- a/tests/units/model/comment.py
+++ /dev/null
@@ -1,75 +0,0 @@
-#!/usr/bin/env python
-# sugar-lint: disable
-
-from __init__ import tests
-
-from sugar_network.client import Connection, keyfile
-from sugar_network.model.user import User
-from sugar_network.model.context import Context
-from sugar_network.model.review import Review
-from sugar_network.model.feedback import Feedback
-from sugar_network.model.solution import Solution
-from sugar_network.model.comment import Comment
-from sugar_network.model.release import Release
-from sugar_network.toolkit import http
-
-
-class CommentTest(tests.Test):
-
- def test_SetContext(self):
- volume = self.start_master([User, Context, Review, Feedback, Solution, Comment, Release])
- client = Connection(auth=http.SugarAuth(keyfile.value))
-
- self.assertRaises(http.NotFound, client.post, ['comment'], {'message': '', 'review': 'absent'})
- self.assertRaises(http.NotFound, client.post, ['comment'], {'message': '', 'feedback': 'absent'})
- self.assertRaises(http.NotFound, client.post, ['comment'], {'message': '', 'solution': 'absent'})
-
- context = client.post(['context'], {
- 'type': 'package',
- 'title': 'title',
- 'summary': 'summary',
- 'description': 'description',
- })
- review = client.post(['review'], {
- 'context': context,
- 'title': 'title',
- 'content': 'content',
- 'rating': 5,
- })
- comment = client.post(['comment'], {
- 'review': review,
- 'message': '',
- })
- self.assertEqual(
- context,
- client.get(['comment', comment, 'context']))
-
- feedback = client.post(['feedback'], {
- 'context': context,
- 'type': 'idea',
- 'title': 'title',
- 'content': 'content',
- })
- comment = client.post(['comment'], {
- 'feedback': feedback,
- 'message': '',
- })
- self.assertEqual(
- context,
- client.get(['comment', comment, 'context']))
-
- solution = client.post(['solution'], {
- 'feedback': feedback,
- 'content': 'content',
- })
- comment = client.post(['comment'], {
- 'solution': solution,
- 'message': '',
- })
- self.assertEqual(
- context,
- client.get(['comment', comment, 'context']))
-
-
-if __name__ == '__main__':
- tests.main()
diff --git a/tests/units/model/solution.py b/tests/units/model/post.py
index d4c7444..91a0298 100755
--- a/tests/units/model/solution.py
+++ b/tests/units/model/post.py
@@ -6,38 +6,40 @@ from __init__ import tests
from sugar_network.client import Connection, keyfile
from sugar_network.model.user import User
from sugar_network.model.context import Context
-from sugar_network.model.feedback import Feedback
-from sugar_network.model.solution import Solution
+from sugar_network.model.post import Post
from sugar_network.model.release import Release
from sugar_network.toolkit import http
-class SolutionTest(tests.Test):
+class PostTest(tests.Test):
def test_SetContext(self):
- volume = self.start_master([User, Context, Feedback, Solution, Release])
+ volume = self.start_master([User, Context, Release, Post])
client = Connection(auth=http.SugarAuth(keyfile.value))
+ self.assertRaises(http.NotFound, client.post, ['post'], {'type': 'comment', 'title': '', 'message': '', 'topic': 'absent'})
+
context = client.post(['context'], {
'type': 'package',
'title': 'title',
'summary': 'summary',
'description': 'description',
})
- feedback = client.post(['feedback'], {
+ topic = client.post(['post'], {
'context': context,
- 'type': 'idea',
'title': 'title',
- 'content': 'content',
+ 'message': 'message',
+ 'type': 'update',
})
- solution = client.post(['solution'], {
- 'feedback': feedback,
- 'content': '',
+ comment = client.post(['post'], {
+ 'topic': topic,
+ 'title': 'title',
+ 'message': 'message',
+ 'type': 'comment',
})
-
self.assertEqual(
context,
- client.get(['solution', solution, 'context']))
+ client.get(['post', comment, 'context']))
if __name__ == '__main__':
diff --git a/tests/units/model/review.py b/tests/units/model/review.py
deleted file mode 100755
index 10277ac..0000000
--- a/tests/units/model/review.py
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/usr/bin/env python
-# sugar-lint: disable
-
-from __init__ import tests
-
-from sugar_network.client import Connection, keyfile
-from sugar_network.model.user import User
-from sugar_network.model.context import Context
-from sugar_network.model.review import Review
-from sugar_network.model.artifact import Artifact
-from sugar_network.model.release import Release
-from sugar_network.toolkit import http
-
-
-class ReviewTest(tests.Test):
-
- def test_SetContext(self):
- volume = self.start_master([User, Context, Review, Artifact, Release])
- client = Connection(auth=http.SugarAuth(keyfile.value))
-
- context = client.post(['context'], {
- 'type': 'package',
- 'title': 'title',
- 'summary': 'summary',
- 'description': 'description',
- })
- artifact = client.post(['artifact'], {
- 'type': 'instance',
- 'context': context,
- 'title': 'title',
- 'description': 'description',
- })
-
- review = client.post(['review'], {
- 'context': context,
- 'title': 'title',
- 'content': 'content',
- 'rating': 5,
- })
- self.assertEqual(
- context,
- client.get(['review', review, 'context']))
- self.assertEqual(
- '',
- client.get(['review', review, 'artifact']))
-
- review = client.post(['review'], {
- 'artifact': artifact,
- 'title': 'title',
- 'content': 'content',
- 'rating': 5,
- })
- self.assertEqual(
- context,
- client.get(['review', review, 'context']))
- self.assertEqual(
- artifact,
- client.get(['review', review, 'artifact']))
-
-
-if __name__ == '__main__':
- tests.main()
diff --git a/tests/units/node/node.py b/tests/units/node/node.py
index 1e8b093..22c0bd3 100755
--- a/tests/units/node/node.py
+++ b/tests/units/node/node.py
@@ -25,10 +25,6 @@ from sugar_network.node.master import MasterRoutes
from sugar_network.model.user import User
from sugar_network.model.context import Context
from sugar_network.model.release import Release
-from sugar_network.model.review import Review
-from sugar_network.model.feedback import Feedback
-from sugar_network.model.artifact import Artifact
-from sugar_network.model.solution import Solution
from sugar_network.model.user import User
from sugar_network.toolkit.router import Router, Request, Response, fallbackroute, Blob, ACL, route
from sugar_network.toolkit import http
@@ -1000,82 +996,49 @@ class NodeTest(tests.Test):
'license': ['GPL-3'],
'version': '1',
})
- volume['artifact'].create({
- 'guid': 'artifact_1',
+ volume['post'].create({
+ 'guid': 'topic_1',
'ctime': ts + 3,
'mtime': ts + 3,
'layer': [],
'context': 'context_1',
- 'type': 'instance',
+ 'type': 'object',
'title': '',
- 'description': '',
- })
- volume['feedback'].create({
- 'guid': 'feedback_1',
- 'ctime': ts + 4,
- 'mtime': ts + 4,
- 'layer': [],
- 'context': 'context_1',
- 'title': '',
- 'content': '',
- 'type': 'idea',
+ 'message': '',
})
- volume['solution'].create({
+ volume['post'].create({
'guid': 'solution_1',
'ctime': ts + 5,
'mtime': ts + 5,
'layer': [],
'context': 'context_1',
- 'feedback': 'feedback_1',
- 'content': '',
+ 'topic': 'topic_1',
+ 'title': '',
+ 'message': '',
+ 'type': 'answer',
})
- volume['review'].create({
+ volume['post'].create({
'guid': 'review_1',
'ctime': ts + 6,
'mtime': ts + 6,
'layer': [],
'context': 'context_1',
- 'rating': 1,
+ 'vote': 1,
'title': '',
- 'content': '',
+ 'message': '',
+ 'type': 'review',
})
- volume['review'].create({
+ volume['post'].create({
'guid': 'review_2',
'ctime': ts + 6,
'mtime': ts + 6,
'layer': [],
'context': 'context_1',
- 'artifact': 'artifact_1',
- 'rating': 2,
+ 'topic': 'topic_1',
+ 'vote': 2,
'title': '',
- 'content': '',
- })
- volume['comment'].create({
- 'guid': 'comment_1',
- 'ctime': ts + 7,
- 'mtime': ts + 7,
- 'layer': [],
- 'context': 'context_1',
- 'review': 'review_1',
- 'message': '',
- })
- volume['comment'].create({
- 'guid': 'comment_2',
- 'ctime': ts + 7,
- 'mtime': ts + 7,
- 'layer': [],
- 'context': 'context_1',
- 'feedback': 'feedback_1',
- 'message': '',
- })
- volume['comment'].create({
- 'guid': 'comment_3',
- 'ctime': ts + 7,
- 'mtime': ts + 7,
- 'layer': [],
- 'context': 'context_1',
- 'solution': 'solution_1',
'message': '',
+ 'type': 'feedback',
})
volume['report'].create({
'guid': 'report_1',
@@ -1086,7 +1049,6 @@ class NodeTest(tests.Test):
'release': 'impl_1',
'error': '',
})
-
volume['user'].create({
'guid': 'user_2',
'ctime': ts + 4,
@@ -1122,25 +1084,27 @@ class NodeTest(tests.Test):
'license': ['GPL-3'],
'version': '1',
})
- volume['review'].create({
+ volume['post'].create({
'guid': 'review_3',
'ctime': ts + 4,
'mtime': ts + 4,
'layer': [],
'context': 'context_2',
- 'rating': 3,
+ 'vote': 3,
'title': '',
- 'content': '',
+ 'message': '',
+ 'type': 'review',
})
- volume['review'].create({
+ volume['post'].create({
'guid': 'review_4',
'ctime': ts + 4,
'mtime': ts + 4,
'layer': [],
'context': 'context_2',
- 'rating': 4,
+ 'vote': 4,
'title': '',
- 'content': '',
+ 'message': '',
+ 'type': 'review',
})
volume['report'].create({
'guid': 'report_2',
@@ -1160,76 +1124,32 @@ class NodeTest(tests.Test):
'release': 'impl_1',
'error': '',
})
- volume['artifact'].create({
- 'guid': 'artifact_2',
+ volume['post'].create({
+ 'guid': 'topic_2',
'ctime': ts + 4,
'mtime': ts + 4,
'layer': [],
'context': 'context_2',
- 'type': 'instance',
+ 'type': 'object',
'title': '',
- 'description': '',
- })
- volume['feedback'].create({
- 'guid': 'feedback_2',
- 'ctime': ts + 4,
- 'mtime': ts + 4,
- 'layer': [],
- 'context': 'context_2',
- 'title': '',
- 'content': '',
- 'type': 'idea',
- })
- volume['solution'].create({
- 'guid': 'solution_2',
- 'ctime': ts + 4,
- 'mtime': ts + 4,
- 'layer': [],
- 'context': 'context_2',
- 'feedback': 'feedback_2',
- 'content': '',
- })
- volume['comment'].create({
- 'guid': 'comment_4',
- 'ctime': ts + 4,
- 'mtime': ts + 4,
- 'layer': [],
- 'context': 'context_2',
- 'review': 'review_3',
- 'message': '',
- })
- volume['comment'].create({
- 'guid': 'comment_5',
- 'ctime': ts + 4,
- 'mtime': ts + 4,
- 'layer': [],
- 'context': 'context_2',
- 'review': 'review_4',
- 'message': '',
- })
- volume['comment'].create({
- 'guid': 'comment_6',
- 'ctime': ts + 4,
- 'mtime': ts + 4,
- 'layer': [],
- 'context': 'context_2',
- 'feedback': 'feedback_2',
'message': '',
})
- volume['comment'].create({
- 'guid': 'comment_7',
+ volume['post'].create({
+ 'guid': 'solution_2',
'ctime': ts + 4,
'mtime': ts + 4,
'layer': [],
'context': 'context_2',
- 'solution': 'solution_2',
+ 'topic': 'topic_2',
+ 'title': '',
'message': '',
+ 'type': 'answer',
})
self.override(time, 'time', lambda: ts + 9)
old_stats = stats_node.Sniffer(volume, 'stats/node')
old_stats.log(Request(method='GET', path=['release', 'impl_1', 'data']))
- old_stats.log(Request(method='GET', path=['artifact', 'artifact_1', 'data']))
+ old_stats.log(Request(method='GET', path=['post', 'topic_1', 'data']))
old_stats.commit(ts + 1)
old_stats.commit_objects()
old_stats.commit(ts + 2)
@@ -1240,8 +1160,8 @@ class NodeTest(tests.Test):
old_stats.commit_objects()
old_stats.commit(ts + 5)
old_stats.commit(ts + 6)
- old_stats.log(Request(method='GET', path=['artifact', 'artifact_1', 'data']))
- old_stats.log(Request(method='GET', path=['artifact', 'artifact_2', 'data']))
+ old_stats.log(Request(method='GET', path=['post', 'topic_1', 'data']))
+ old_stats.log(Request(method='GET', path=['post', 'topic_2', 'data']))
old_stats.commit(ts + 7)
old_stats.commit_objects()
old_stats.commit(ts + 8)
@@ -1273,60 +1193,16 @@ class NodeTest(tests.Test):
(ts + 8, {'total': 2.0, 'released': 3.0, 'failed': 3.0, 'downloaded': 3.0}),
(ts + 9, {'total': 2.0, 'released': 3.0, 'failed': 3.0, 'downloaded': 3.0}),
],
- 'review': [
- (ts + 1, {'total': 0.0}),
- (ts + 2, {'total': 0.0}),
- (ts + 3, {'total': 0.0}),
- (ts + 4, {'total': 2.0}),
- (ts + 5, {'total': 2.0}),
- (ts + 6, {'total': 4.0}),
- (ts + 7, {'total': 4.0}),
- (ts + 8, {'total': 4.0}),
- (ts + 9, {'total': 4.0}),
- ],
- 'feedback': [
- (ts + 1, {'total': 0.0}),
- (ts + 2, {'total': 0.0}),
- (ts + 3, {'total': 0.0}),
- (ts + 4, {'total': 2.0}),
- (ts + 5, {'total': 2.0}),
- (ts + 6, {'total': 2.0}),
- (ts + 7, {'total': 2.0}),
- (ts + 8, {'total': 2.0}),
- (ts + 9, {'total': 2.0}),
- ],
- 'solution': [
- (ts + 1, {'total': 0.0}),
- (ts + 2, {'total': 0.0}),
- (ts + 3, {'total': 0.0}),
- (ts + 4, {'total': 1.0}),
- (ts + 5, {'total': 2.0}),
- (ts + 6, {'total': 2.0}),
- (ts + 7, {'total': 2.0}),
- (ts + 8, {'total': 2.0}),
- (ts + 9, {'total': 2.0}),
- ],
- 'artifact': [
+ 'post': [
(ts + 1, {'total': 0.0, 'downloaded': 1.0}),
(ts + 2, {'total': 0.0, 'downloaded': 1.0}),
(ts + 3, {'total': 1.0, 'downloaded': 1.0}),
- (ts + 4, {'total': 2.0, 'downloaded': 1.0}),
- (ts + 5, {'total': 2.0, 'downloaded': 1.0}),
- (ts + 6, {'total': 2.0, 'downloaded': 1.0}),
- (ts + 7, {'total': 2.0, 'downloaded': 3.0}),
- (ts + 8, {'total': 2.0, 'downloaded': 3.0}),
- (ts + 9, {'total': 2.0, 'downloaded': 3.0}),
- ],
- 'comment': [
- (ts + 1, {'total': 0.0}),
- (ts + 2, {'total': 0.0}),
- (ts + 3, {'total': 0.0}),
- (ts + 4, {'total': 4.0}),
- (ts + 5, {'total': 4.0}),
- (ts + 6, {'total': 4.0}),
- (ts + 7, {'total': 7.0}),
- (ts + 8, {'total': 7.0}),
- (ts + 9, {'total': 7.0}),
+ (ts + 4, {'total': 5.0, 'downloaded': 1.0}),
+ (ts + 5, {'total': 6.0, 'downloaded': 1.0}),
+ (ts + 6, {'total': 8.0, 'downloaded': 1.0}),
+ (ts + 7, {'total': 8.0, 'downloaded': 3.0}),
+ (ts + 8, {'total': 8.0, 'downloaded': 3.0}),
+ (ts + 9, {'total': 8.0, 'downloaded': 3.0}),
],
},
call(cp, method='GET', cmd='stats', source=[
@@ -1335,12 +1211,8 @@ class NodeTest(tests.Test):
'context.released',
'context.failed',
'context.downloaded',
- 'review.total',
- 'feedback.total',
- 'solution.total',
- 'artifact.total',
- 'artifact.downloaded',
- 'comment.total',
+ 'post.total',
+ 'post.downloaded',
], start=ts + 1, end=ts + 10))
self.assertEqual({
@@ -1360,13 +1232,13 @@ class NodeTest(tests.Test):
'rating': 2,
'reviews': [1, 2],
},
- volume['artifact'].get('artifact_1').properties(['downloads', 'rating', 'reviews']))
+ volume['post'].get('topic_1').properties(['downloads', 'rating', 'reviews']))
self.assertEqual({
'downloads': 1,
'rating': 0,
'reviews': [0, 0],
},
- volume['artifact'].get('artifact_2').properties(['downloads', 'rating', 'reviews']))
+ volume['post'].get('topic_2').properties(['downloads', 'rating', 'reviews']))
def test_generate_node_stats_Deletes(self):
node.stats_root.value = 'stats'
@@ -1402,52 +1274,14 @@ class NodeTest(tests.Test):
'license': ['GPL-3'],
'version': '1',
})
- volume['artifact'].create({
- 'guid': 'artifact_1',
- 'ctime': ts + 1,
- 'mtime': ts + 2,
- 'layer': ['deleted'],
- 'context': 'context_1',
- 'type': 'instance',
- 'title': '',
- 'description': '',
- })
- volume['feedback'].create({
- 'guid': 'feedback_1',
- 'ctime': ts + 1,
- 'mtime': ts + 2,
- 'layer': ['deleted'],
- 'context': 'context_1',
- 'title': '',
- 'content': '',
- 'type': 'idea',
- })
- volume['solution'].create({
- 'guid': 'solution_1',
- 'ctime': ts + 1,
- 'mtime': ts + 2,
- 'layer': ['deleted'],
- 'context': 'context_1',
- 'feedback': 'feedback_1',
- 'content': '',
- })
- volume['review'].create({
- 'guid': 'review_1',
+ volume['post'].create({
+ 'guid': 'post_1',
'ctime': ts + 1,
'mtime': ts + 2,
'layer': ['deleted'],
'context': 'context_1',
- 'rating': 1,
+ 'type': 'object',
'title': '',
- 'content': '',
- })
- volume['comment'].create({
- 'guid': 'comment_1',
- 'ctime': ts + 1,
- 'mtime': ts + 2,
- 'layer': ['deleted'],
- 'context': 'context_1',
- 'review': 'review_1',
'message': '',
})
volume['report'].create({
@@ -1475,27 +1309,7 @@ class NodeTest(tests.Test):
(ts + 2, {'total': 0.0}),
(ts + 3, {'total': 0.0}),
],
- 'review': [
- (ts + 1, {'total': 1.0}),
- (ts + 2, {'total': 0.0}),
- (ts + 3, {'total': 0.0}),
- ],
- 'feedback': [
- (ts + 1, {'total': 1.0}),
- (ts + 2, {'total': 0.0}),
- (ts + 3, {'total': 0.0}),
- ],
- 'solution': [
- (ts + 1, {'total': 1.0}),
- (ts + 2, {'total': 0.0}),
- (ts + 3, {'total': 0.0}),
- ],
- 'artifact': [
- (ts + 1, {'total': 1.0}),
- (ts + 2, {'total': 0.0}),
- (ts + 3, {'total': 0.0}),
- ],
- 'comment': [
+ 'post': [
(ts + 1, {'total': 1.0}),
(ts + 2, {'total': 0.0}),
(ts + 3, {'total': 0.0}),
@@ -1504,11 +1318,7 @@ class NodeTest(tests.Test):
call(cp, method='GET', cmd='stats', source=[
'user.total',
'context.total',
- 'review.total',
- 'feedback.total',
- 'solution.total',
- 'artifact.total',
- 'comment.total',
+ 'post.total',
], start=ts + 1, end=ts + 3))
diff --git a/tests/units/node/stats_node.py b/tests/units/node/stats_node.py
index 22f43da..666a183 100755
--- a/tests/units/node/stats_node.py
+++ b/tests/units/node/stats_node.py
@@ -19,26 +19,16 @@ class StatsTest(tests.Test):
stats = Sniffer(volume, 'stats/node')
self.assertEqual(0, stats._stats['user']['total'])
self.assertEqual(0, stats._stats['context']['total'])
- self.assertEqual(0, stats._stats['review']['total'])
- self.assertEqual(0, stats._stats['feedback']['total'])
- self.assertEqual(0, stats._stats['solution']['total'])
- self.assertEqual(0, stats._stats['artifact']['total'])
+ self.assertEqual(0, stats._stats['post']['total'])
volume['user'].create({'guid': 'user', 'name': 'user', 'pubkey': ''})
volume['context'].create({'guid': 'context', 'type': 'activity', 'title': '', 'summary': '', 'description': ''})
- volume['review'].create({'guid': 'review', 'context': 'context', 'title': '', 'content': '', 'rating': 5})
- volume['feedback'].create({'guid': 'feedback', 'context': 'context', 'type': 'idea', 'title': '', 'content': ''})
- volume['feedback'].create({'guid': 'feedback2', 'context': 'context', 'type': 'idea', 'title': '', 'content': '', 'solution': 'solution'})
- volume['solution'].create({'guid': 'solution', 'context': 'context', 'feedback': 'feedback', 'content': ''})
- volume['artifact'].create({'guid': 'artifact', 'type': 'instance', 'context': 'context', 'title': '', 'description': ''})
+ volume['post'].create({'guid': 'post', 'context': 'context', 'title': '', 'message': '', 'type': 'update'})
stats = Sniffer(volume, 'stats/node')
self.assertEqual(1, stats._stats['user']['total'])
self.assertEqual(1, stats._stats['context']['total'])
- self.assertEqual(1, stats._stats['review']['total'])
- self.assertEqual(2, stats._stats['feedback']['total'])
- self.assertEqual(1, stats._stats['solution']['total'])
- self.assertEqual(1, stats._stats['artifact']['total'])
+ self.assertEqual(1, stats._stats['post']['total'])
def test_POSTs(self):
volume = db.Volume('local', model.RESOURCES)
@@ -62,58 +52,35 @@ class StatsTest(tests.Test):
stats.log(request)
self.assertEqual(-3, stats._stats['context']['total'])
- def test_Comments(self):
- volume = db.Volume('local', model.RESOURCES)
- stats = Sniffer(volume, 'stats/node')
- volume['solution'].create({'guid': 'solution', 'context': 'context', 'feedback': 'feedback', 'content': ''})
- volume['feedback'].create({'guid': 'feedback', 'context': 'context', 'type': 'idea', 'title': '', 'content': ''})
- volume['review'].create({'guid': 'review', 'context': 'context', 'title': '', 'content': '', 'rating': 5})
-
- request = Request(method='POST', path=['comment'])
- request.principal = 'user'
- request.content = {'solution': 'solution'}
- stats.log(request)
- self.assertEqual(1, stats._stats['comment']['total'])
-
- request = Request(method='POST', path=['comment'])
- request.principal = 'user'
- request.content = {'feedback': 'feedback'}
- stats.log(request)
- self.assertEqual(2, stats._stats['comment']['total'])
-
- request = Request(method='POST', path=['comment'])
- request.principal = 'user'
- request.content = {'review': 'review'}
- stats.log(request)
- self.assertEqual(3, stats._stats['comment']['total'])
-
- def test_Reviewes(self):
+ def test_Posts(self):
volume = db.Volume('local', model.RESOURCES)
stats = Sniffer(volume, 'stats/node')
volume['context'].create({'guid': 'context', 'type': 'activity', 'title': '', 'summary': '', 'description': ''})
- volume['artifact'].create({'guid': 'artifact', 'type': 'instance', 'context': 'context', 'title': '', 'description': ''})
+ volume['post'].create({'guid': 'topic', 'type': 'update', 'context': 'context', 'title': '', 'message': ''})
- request = Request(method='POST', path=['review'])
+ request = Request(method='POST', path=['post'])
request.principal = 'user'
- request.content = {'context': 'context', 'rating': 1}
+ request.content = {'context': 'context', 'vote': 1, 'type': 'review', 'title': '', 'message': ''}
stats.log(request)
- self.assertEqual(1, stats._stats['review']['total'])
+ self.assertEqual(1, stats._stats['post']['total'])
- request = Request(method='POST', path=['review'])
+ request = Request(method='POST', path=['post'])
request.principal = 'user'
- request.content = {'context': 'context', 'artifact': '', 'rating': 2}
+ request.content = {'context': 'context', 'vote': 2, 'type': 'review', 'title': '', 'message': ''}
stats.log(request)
- self.assertEqual(2, stats._stats['review']['total'])
+ self.assertEqual(2, stats._stats['post']['total'])
- request = Request(method='POST', path=['review'])
+ request = Request(method='POST', path=['post'])
request.principal = 'user'
- request.content = {'artifact': 'artifact', 'rating': 3}
+ request.content = {'topic': 'topic', 'vote': 3, 'type': 'feedback', 'title': '', 'message': ''}
stats.log(request)
- self.assertEqual(3, stats._stats['review']['total'])
+ self.assertEqual(3, stats._stats['post']['total'])
stats.commit_objects()
self.assertEqual([2, 3], volume['context'].get('context')['reviews'])
- self.assertEqual([1, 3], volume['artifact'].get('artifact')['reviews'])
+ self.assertEqual(2, volume['context'].get('context')['rating'])
+ self.assertEqual([1, 3], volume['post'].get('topic')['reviews'])
+ self.assertEqual(3, volume['post'].get('topic')['rating'])
def test_ContextDownloaded(self):
volume = db.Volume('local', model.RESOURCES)
@@ -153,30 +120,26 @@ class StatsTest(tests.Test):
stats.log(request)
self.assertEqual(1, stats._stats['context']['failed'])
- def test_ArtifactDownloaded(self):
+ def test_PostDownloaded(self):
volume = db.Volume('local', model.RESOURCES)
stats = Sniffer(volume, 'stats/node')
- volume['artifact'].create({'guid': 'artifact', 'type': 'instance', 'context': 'context', 'title': '', 'description': ''})
+ volume['post'].create({'guid': 'topic', 'type': 'object', 'context': 'context', 'title': '', 'message': ''})
- request = Request(method='GET', path=['artifact', 'artifact', 'fake'])
+ request = Request(method='GET', path=['post', 'topic', 'fake'])
request.principal = 'user'
stats.log(request)
- self.assertEqual(0, stats._stats['artifact']['downloaded'])
+ self.assertEqual(0, stats._stats['post']['downloaded'])
- request = Request(method='GET', path=['artifact', 'artifact', 'data'])
+ request = Request(method='GET', path=['post', 'topic', 'data'])
request.principal = 'user'
stats.log(request)
- self.assertEqual(1, stats._stats['artifact']['downloaded'])
+ self.assertEqual(1, stats._stats['post']['downloaded'])
def test_Commit(self):
volume = db.Volume('local', model.RESOURCES)
volume['user'].create({'guid': 'user', 'name': 'user', 'pubkey': ''})
volume['context'].create({'guid': 'context', 'type': 'activity', 'title': '', 'summary': '', 'description': ''})
- volume['review'].create({'guid': 'review', 'context': 'context', 'title': '', 'content': '', 'rating': 5})
- volume['feedback'].create({'guid': 'feedback', 'context': 'context', 'type': 'idea', 'title': '', 'content': ''})
- volume['solution'].create({'guid': 'solution', 'context': 'context', 'feedback': 'feedback', 'content': ''})
- volume['artifact'].create({'guid': 'artifact', 'type': 'instance', 'context': 'context', 'title': '', 'description': ''})
- volume['comment'].create({'guid': 'comment', 'context': 'context', 'message': ''})
+ volume['post'].create({'guid': 'review', 'context': 'context', 'type': 'review', 'title': '', 'message': '', 'vote': 5})
stats = Sniffer(volume, 'stats/node')
request = Request(method='GET', path=['user', 'user'])
@@ -185,25 +148,13 @@ class StatsTest(tests.Test):
request = Request(method='GET', path=['context', 'context'])
request.principal = 'user'
stats.log(request)
- request = Request(method='GET', path=['review', 'review'])
- request.principal = 'user'
- stats.log(request)
- request = Request(method='GET', path=['feedback', 'feedback'])
- request.principal = 'user'
- stats.log(request)
- request = Request(method='GET', path=['solution', 'solution'])
- request.principal = 'user'
- stats.log(request)
- request = Request(method='GET', path=['artifact', 'artifact'])
+ request = Request(method='GET', path=['post', 'review'])
request.principal = 'user'
stats.log(request)
self.assertEqual(1, stats._stats['user']['total'])
self.assertEqual(1, stats._stats['context']['total'])
- self.assertEqual(1, stats._stats['review']['total'])
- self.assertEqual(1, stats._stats['feedback']['total'])
- self.assertEqual(1, stats._stats['solution']['total'])
- self.assertEqual(1, stats._stats['artifact']['total'])
+ self.assertEqual(1, stats._stats['post']['total'])
ts = int(time.time())
stats.commit(ts)
@@ -211,25 +162,10 @@ class StatsTest(tests.Test):
self.assertEqual(1, stats._stats['user']['total'])
self.assertEqual(1, stats._stats['context']['total'])
- self.assertEqual(1, stats._stats['review']['total'])
- self.assertEqual(1, stats._stats['feedback']['total'])
- self.assertEqual(1, stats._stats['solution']['total'])
- self.assertEqual(1, stats._stats['artifact']['total'])
+ self.assertEqual(1, stats._stats['post']['total'])
self.assertEqual([
- [('comment', ts, {
- 'total': 1.0,
- })],
- [('feedback', ts, {
- 'total': 1.0,
- })],
- [('review', ts, {
- 'total': 1.0,
- })],
- [('solution', ts, {
- 'total': 1.0,
- })],
- [('artifact', ts, {
+ [('post', ts, {
'downloaded': 0.0,
'total': 1.0,
})],
@@ -250,7 +186,6 @@ class StatsTest(tests.Test):
volume['context'].create({'guid': 'context', 'type': 'activity', 'title': '', 'summary': '', 'description': ''})
volume['release'].create({'guid': 'release', 'context': 'context', 'license': 'GPLv3', 'version': '1', 'date': 0, 'stability': 'stable', 'notes': ''})
- volume['artifact'].create({'guid': 'artifact', 'type': 'instance', 'context': 'context', 'title': '', 'description': ''})
self.assertEqual(0, volume['context'].get('context')['downloads'])
self.assertEqual([0, 0], volume['context'].get('context')['reviews'])
@@ -260,14 +195,11 @@ class StatsTest(tests.Test):
request = Request(method='GET', path=['release', 'release', 'data'])
request.principal = 'user'
stats.log(request)
- request = Request(method='POST', path=['review'])
+ request = Request(method='POST', path=['post'])
request.principal = 'user'
- request.content = {'context': 'context', 'rating': 5}
- stats.log(request)
- request = Request(method='POST', path=['review'])
- request.principal = 'user'
- request.content = {'artifact': 'artifact', 'rating': 5}
+ request.content = {'context': 'context', 'vote': 5, 'type': 'review', 'title': '', 'message': ''}
stats.log(request)
+
stats.commit()
stats.commit_objects()
@@ -286,9 +218,9 @@ class StatsTest(tests.Test):
request = Request(method='GET', path=['release', 'release', 'data'])
request.principal = 'user'
stats.log(request)
- request = Request(method='POST', path=['review'])
+ request = Request(method='POST', path=['post'])
request.principal = 'user'
- request.content = {'context': 'context', 'rating': 1}
+ request.content = {'context': 'context', 'vote': 1, 'type': 'review', 'title': '', 'message': ''}
stats.log(request)
stats.commit()
stats.commit_objects()
@@ -297,51 +229,51 @@ class StatsTest(tests.Test):
self.assertEqual([2, 6], volume['context'].get('context')['reviews'])
self.assertEqual(3, volume['context'].get('context')['rating'])
- def test_CommitArtifactStats(self):
+ def test_CommitTopicStats(self):
volume = db.Volume('local', model.RESOURCES)
volume['context'].create({'guid': 'context', 'type': 'activity', 'title': '', 'summary': '', 'description': ''})
- volume['artifact'].create({'guid': 'artifact', 'type': 'instance', 'context': 'context', 'title': '', 'description': ''})
+ volume['post'].create({'guid': 'topic', 'type': 'object', 'context': 'context', 'title': '', 'message': ''})
- self.assertEqual(0, volume['artifact'].get('artifact')['downloads'])
- self.assertEqual([0, 0], volume['artifact'].get('artifact')['reviews'])
- self.assertEqual(0, volume['artifact'].get('artifact')['rating'])
+ self.assertEqual(0, volume['post'].get('topic')['downloads'])
+ self.assertEqual([0, 0], volume['post'].get('topic')['reviews'])
+ self.assertEqual(0, volume['post'].get('topic')['rating'])
stats = Sniffer(volume, 'stats/node')
- request = Request(method='GET', path=['artifact', 'artifact', 'data'])
+ request = Request(method='GET', path=['post', 'topic', 'data'])
request.principal = 'user'
stats.log(request)
- request = Request(method='POST', path=['review'])
+ request = Request(method='POST', path=['post'])
request.principal = 'user'
- request.content = {'artifact': 'artifact', 'rating': 5}
+ request.content = {'topic': 'topic', 'vote': 5, 'type': 'feedback'}
stats.log(request)
stats.commit()
stats.commit_objects()
- self.assertEqual(1, volume['artifact'].get('artifact')['downloads'])
- self.assertEqual([1, 5], volume['artifact'].get('artifact')['reviews'])
- self.assertEqual(5, volume['artifact'].get('artifact')['rating'])
+ self.assertEqual(1, volume['post'].get('topic')['downloads'])
+ self.assertEqual([1, 5], volume['post'].get('topic')['reviews'])
+ self.assertEqual(5, volume['post'].get('topic')['rating'])
stats.commit()
stats.commit_objects()
- self.assertEqual(1, volume['artifact'].get('artifact')['downloads'])
- self.assertEqual([1, 5], volume['artifact'].get('artifact')['reviews'])
- self.assertEqual(5, volume['artifact'].get('artifact')['rating'])
+ self.assertEqual(1, volume['post'].get('topic')['downloads'])
+ self.assertEqual([1, 5], volume['post'].get('topic')['reviews'])
+ self.assertEqual(5, volume['post'].get('topic')['rating'])
- request = Request(method='GET', path=['artifact', 'artifact', 'data'])
+ request = Request(method='GET', path=['post', 'topic', 'data'])
request.principal = 'user'
stats.log(request)
- request = Request(method='POST', path=['review'])
+ request = Request(method='POST', path=['post'])
request.principal = 'user'
- request.content = {'artifact': 'artifact', 'rating': 1}
+ request.content = {'topic': 'topic', 'vote': 1, 'type': 'feedback'}
stats.log(request)
stats.commit()
stats.commit_objects()
- self.assertEqual(2, volume['artifact'].get('artifact')['downloads'])
- self.assertEqual([2, 6], volume['artifact'].get('artifact')['reviews'])
- self.assertEqual(3, volume['artifact'].get('artifact')['rating'])
+ self.assertEqual(2, volume['post'].get('topic')['downloads'])
+ self.assertEqual([2, 6], volume['post'].get('topic')['reviews'])
+ self.assertEqual(3, volume['post'].get('topic')['rating'])
def test_Suspend(self):
stats_node_step.value = 5
diff --git a/tests/units/node/sync_online.py b/tests/units/node/sync_online.py
index 400ba4b..7ee6dcb 100755
--- a/tests/units/node/sync_online.py
+++ b/tests/units/node/sync_online.py
@@ -14,7 +14,6 @@ from sugar_network.node.master import MasterRoutes
from sugar_network.node.slave import SlaveRoutes
from sugar_network.db.volume import Volume
from sugar_network.model.user import User
-from sugar_network.model.feedback import Feedback
from sugar_network.toolkit.router import Router
from sugar_network.toolkit import coroutine, http
@@ -35,8 +34,23 @@ class SyncOnlineTest(tests.Test):
self.override(stats_user, 'merge', stats_merge)
self.override(stats_user, 'commit', lambda seq: self.stats_commit.append(seq))
- class Document(Feedback):
- pass
+ class Document(db.Resource):
+
+ @db.indexed_property(prefix='C')
+ def context(self, value):
+ return value
+
+ @db.indexed_property(prefix='T')
+ def type(self, value):
+ return value
+
+ @db.indexed_property(slot=1, prefix='N', full_text=True, localized=True)
+ def title(self, value):
+ return value
+
+ @db.indexed_property(prefix='D', full_text=True, localized=True)
+ def message(self, value):
+ return value
api_url.value = 'http://127.0.0.1:9000'
@@ -66,35 +80,35 @@ class SyncOnlineTest(tests.Test):
self.assertEqual([[4, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[2, None]], json.load(file('slave/push.sequence')))
- guid1 = client.post(['document'], {'context': '', 'content': '1', 'title': '', 'type': 'idea'})
- guid2 = client.post(['document'], {'context': '', 'content': '2', 'title': '', 'type': 'idea'})
+ guid1 = client.post(['document'], {'context': '', 'message': '1', 'title': '', 'type': 'comment'})
+ guid2 = client.post(['document'], {'context': '', 'message': '2', 'title': '', 'type': 'comment'})
client.post(cmd='online-sync')
self.assertEqual([
- {'guid': guid1, 'content': {'en-us': '1'}},
- {'guid': guid2, 'content': {'en-us': '2'}},
+ {'guid': guid1, 'message': {'en-us': '1'}},
+ {'guid': guid2, 'message': {'en-us': '2'}},
],
- [i.properties(['guid', 'content']) for i in self.master_volume['document'].find()[0]])
+ [i.properties(['guid', 'message']) for i in self.master_volume['document'].find()[0]])
self.assertEqual([[6, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[4, None]], json.load(file('slave/push.sequence')))
- guid3 = client.post(['document'], {'context': '', 'content': '3', 'title': '', 'type': 'idea'})
+ guid3 = client.post(['document'], {'context': '', 'message': '3', 'title': '', 'type': 'comment'})
client.post(cmd='online-sync')
self.assertEqual([
- {'guid': guid1, 'content': {'en-us': '1'}},
- {'guid': guid2, 'content': {'en-us': '2'}},
- {'guid': guid3, 'content': {'en-us': '3'}},
+ {'guid': guid1, 'message': {'en-us': '1'}},
+ {'guid': guid2, 'message': {'en-us': '2'}},
+ {'guid': guid3, 'message': {'en-us': '3'}},
],
- [i.properties(['guid', 'content']) for i in self.master_volume['document'].find()[0]])
+ [i.properties(['guid', 'message']) for i in self.master_volume['document'].find()[0]])
self.assertEqual([[7, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[5, None]], json.load(file('slave/push.sequence')))
coroutine.sleep(1)
- client.put(['document', guid2], {'content': '22'})
+ client.put(['document', guid2], {'message': '22'})
client.post(cmd='online-sync')
self.assertEqual(
- {'guid': guid2, 'content': {'en-us': '22'}},
- self.master_volume['document'].get(guid2).properties(['guid', 'content']))
+ {'guid': guid2, 'message': {'en-us': '22'}},
+ self.master_volume['document'].get(guid2).properties(['guid', 'message']))
self.assertEqual([[8, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[6, None]], json.load(file('slave/push.sequence')))
@@ -102,28 +116,28 @@ class SyncOnlineTest(tests.Test):
client.delete(['document', guid1])
client.post(cmd='online-sync')
self.assertEqual([
- {'guid': guid1, 'content': {'en-us': '1'}, 'layer': ['deleted']},
- {'guid': guid2, 'content': {'en-us': '22'}, 'layer': []},
- {'guid': guid3, 'content': {'en-us': '3'}, 'layer': []},
+ {'guid': guid1, 'message': {'en-us': '1'}, 'layer': ['deleted']},
+ {'guid': guid2, 'message': {'en-us': '22'}, 'layer': []},
+ {'guid': guid3, 'message': {'en-us': '3'}, 'layer': []},
],
- [i.properties(['guid', 'content', 'layer']) for i in self.master_volume['document'].find()[0]])
+ [i.properties(['guid', 'message', 'layer']) for i in self.master_volume['document'].find()[0]])
self.assertEqual([[9, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[7, None]], json.load(file('slave/push.sequence')))
coroutine.sleep(1)
- client.put(['document', guid1], {'content': 'a'})
- client.put(['document', guid2], {'content': 'b'})
- client.put(['document', guid3], {'content': 'c'})
- guid4 = client.post(['document'], {'context': '', 'content': 'd', 'title': '', 'type': 'idea'})
+ client.put(['document', guid1], {'message': 'a'})
+ client.put(['document', guid2], {'message': 'b'})
+ client.put(['document', guid3], {'message': 'c'})
+ guid4 = client.post(['document'], {'context': '', 'message': 'd', 'title': '', 'type': 'comment'})
client.delete(['document', guid2])
client.post(cmd='online-sync')
self.assertEqual([
- {'guid': guid1, 'content': {'en-us': 'a'}, 'layer': ['deleted']},
- {'guid': guid2, 'content': {'en-us': 'b'}, 'layer': ['deleted']},
- {'guid': guid3, 'content': {'en-us': 'c'}, 'layer': []},
- {'guid': guid4, 'content': {'en-us': 'd'}, 'layer': []},
+ {'guid': guid1, 'message': {'en-us': 'a'}, 'layer': ['deleted']},
+ {'guid': guid2, 'message': {'en-us': 'b'}, 'layer': ['deleted']},
+ {'guid': guid3, 'message': {'en-us': 'c'}, 'layer': []},
+ {'guid': guid4, 'message': {'en-us': 'd'}, 'layer': []},
],
- [i.properties(['guid', 'content', 'layer']) for i in self.master_volume['document'].find()[0]])
+ [i.properties(['guid', 'message', 'layer']) for i in self.master_volume['document'].find()[0]])
self.assertEqual([[13, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[12, None]], json.load(file('slave/push.sequence')))
@@ -144,35 +158,35 @@ class SyncOnlineTest(tests.Test):
self.assertEqual([[4, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[2, None]], json.load(file('slave/push.sequence')))
- guid1 = client.post(['document'], {'context': '', 'content': '1', 'title': '', 'type': 'idea'})
- guid2 = client.post(['document'], {'context': '', 'content': '2', 'title': '', 'type': 'idea'})
+ guid1 = client.post(['document'], {'context': '', 'message': '1', 'title': '', 'type': 'comment'})
+ guid2 = client.post(['document'], {'context': '', 'message': '2', 'title': '', 'type': 'comment'})
slave_client.post(cmd='online-sync')
self.assertEqual([
- {'guid': guid1, 'content': {'en-us': '1'}},
- {'guid': guid2, 'content': {'en-us': '2'}},
+ {'guid': guid1, 'message': {'en-us': '1'}},
+ {'guid': guid2, 'message': {'en-us': '2'}},
],
- [i.properties(['guid', 'content']) for i in self.slave_volume['document'].find()[0]])
+ [i.properties(['guid', 'message']) for i in self.slave_volume['document'].find()[0]])
self.assertEqual([[6, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[2, None]], json.load(file('slave/push.sequence')))
- guid3 = client.post(['document'], {'context': '', 'content': '3', 'title': '', 'type': 'idea'})
+ guid3 = client.post(['document'], {'context': '', 'message': '3', 'title': '', 'type': 'comment'})
slave_client.post(cmd='online-sync')
self.assertEqual([
- {'guid': guid1, 'content': {'en-us': '1'}},
- {'guid': guid2, 'content': {'en-us': '2'}},
- {'guid': guid3, 'content': {'en-us': '3'}},
+ {'guid': guid1, 'message': {'en-us': '1'}},
+ {'guid': guid2, 'message': {'en-us': '2'}},
+ {'guid': guid3, 'message': {'en-us': '3'}},
],
- [i.properties(['guid', 'content']) for i in self.slave_volume['document'].find()[0]])
+ [i.properties(['guid', 'message']) for i in self.slave_volume['document'].find()[0]])
self.assertEqual([[7, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[2, None]], json.load(file('slave/push.sequence')))
coroutine.sleep(1)
- client.put(['document', guid2], {'content': '22'})
+ client.put(['document', guid2], {'message': '22'})
slave_client.post(cmd='online-sync')
self.assertEqual(
- {'guid': guid2, 'content': {'en-us': '22'}},
- self.slave_volume['document'].get(guid2).properties(['guid', 'content']))
+ {'guid': guid2, 'message': {'en-us': '22'}},
+ self.slave_volume['document'].get(guid2).properties(['guid', 'message']))
self.assertEqual([[8, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[2, None]], json.load(file('slave/push.sequence')))
@@ -180,28 +194,28 @@ class SyncOnlineTest(tests.Test):
client.delete(['document', guid1])
slave_client.post(cmd='online-sync')
self.assertEqual([
- {'guid': guid1, 'content': {'en-us': '1'}, 'layer': ['deleted']},
- {'guid': guid2, 'content': {'en-us': '22'}, 'layer': []},
- {'guid': guid3, 'content': {'en-us': '3'}, 'layer': []},
+ {'guid': guid1, 'message': {'en-us': '1'}, 'layer': ['deleted']},
+ {'guid': guid2, 'message': {'en-us': '22'}, 'layer': []},
+ {'guid': guid3, 'message': {'en-us': '3'}, 'layer': []},
],
- [i.properties(['guid', 'content', 'layer']) for i in self.slave_volume['document'].find()[0]])
+ [i.properties(['guid', 'message', 'layer']) for i in self.slave_volume['document'].find()[0]])
self.assertEqual([[9, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[2, None]], json.load(file('slave/push.sequence')))
coroutine.sleep(1)
- client.put(['document', guid1], {'content': 'a'})
- client.put(['document', guid2], {'content': 'b'})
- client.put(['document', guid3], {'content': 'c'})
- guid4 = client.post(['document'], {'context': '', 'content': 'd', 'title': '', 'type': 'idea'})
+ client.put(['document', guid1], {'message': 'a'})
+ client.put(['document', guid2], {'message': 'b'})
+ client.put(['document', guid3], {'message': 'c'})
+ guid4 = client.post(['document'], {'context': '', 'message': 'd', 'title': '', 'type': 'comment'})
client.delete(['document', guid2])
slave_client.post(cmd='online-sync')
self.assertEqual([
- {'guid': guid1, 'content': {'en-us': 'a'}, 'layer': ['deleted']},
- {'guid': guid2, 'content': {'en-us': 'b'}, 'layer': ['deleted']},
- {'guid': guid3, 'content': {'en-us': 'c'}, 'layer': []},
- {'guid': guid4, 'content': {'en-us': 'd'}, 'layer': []},
+ {'guid': guid1, 'message': {'en-us': 'a'}, 'layer': ['deleted']},
+ {'guid': guid2, 'message': {'en-us': 'b'}, 'layer': ['deleted']},
+ {'guid': guid3, 'message': {'en-us': 'c'}, 'layer': []},
+ {'guid': guid4, 'message': {'en-us': 'd'}, 'layer': []},
],
- [i.properties(['guid', 'content', 'layer']) for i in self.slave_volume['document'].find()[0]])
+ [i.properties(['guid', 'message', 'layer']) for i in self.slave_volume['document'].find()[0]])
self.assertEqual([[14, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[2, None]], json.load(file('slave/push.sequence')))
@@ -238,20 +252,20 @@ class SyncOnlineTest(tests.Test):
self.assertEqual([[4, None]], json.load(file('slave/pull.sequence')))
self.assertEqual([[2, None]], json.load(file('slave/push.sequence')))
- guid = slave.post(['document'], {'context': '', 'content': '1', 'title': '1', 'type': 'idea'})
+ guid = slave.post(['document'], {'context': '', 'message': '1', 'title': '1', 'type': 'comment'})
slave.post(cmd='online-sync')
coroutine.sleep(1)
- master.put(['document', guid], {'content': '1_'})
+ master.put(['document', guid], {'message': '1_'})
slave.put(['document', guid], {'title': '1_'})
slave.post(cmd='online-sync')
self.assertEqual(
- {'content': {'en-us': '1_'}, 'title': {'en-us': '1_'}},
- self.master_volume['document'].get(guid).properties(['content', 'title']))
+ {'message': {'en-us': '1_'}, 'title': {'en-us': '1_'}},
+ self.master_volume['document'].get(guid).properties(['message', 'title']))
self.assertEqual(
- {'content': {'en-us': '1_'}, 'title': {'en-us': '1_'}},
- self.slave_volume['document'].get(guid).properties(['content', 'title']))
+ {'message': {'en-us': '1_'}, 'title': {'en-us': '1_'}},
+ self.slave_volume['document'].get(guid).properties(['message', 'title']))
if __name__ == '__main__':
diff --git a/tests/units/node/volume.py b/tests/units/node/volume.py
index fc7df1f..10a1cdd 100755
--- a/tests/units/node/volume.py
+++ b/tests/units/node/volume.py
@@ -364,75 +364,69 @@ class VolumeTest(tests.Test):
'summary': {'value': {}, 'mtime': 1.0},
'description': {'value': {}, 'mtime': 1.0},
}},
- {'resource': 'artifact'},
- {'guid': 'artifact', 'diff': {
- 'guid': {'value': 'artifact', 'mtime': 1.0},
+ {'resource': 'post'},
+ {'guid': 'topic_1', 'diff': {
+ 'guid': {'value': 'topic_1', 'mtime': 1.0},
'ctime': {'value': 1, 'mtime': 1.0},
'mtime': {'value': 1, 'mtime': 1.0},
- 'type': {'value': ['instance'], 'mtime': 1.0},
+ 'type': {'value': 'object', 'mtime': 1.0},
'context': {'value': 'context', 'mtime': 1.0},
'title': {'value': {}, 'mtime': 1.0},
- 'description': {'value': {}, 'mtime': 1.0},
+ 'message': {'value': {}, 'mtime': 1.0},
+ 'solution': {'value': 'solution_1', 'mtime': 1.0},
+ }},
+ {'guid': 'topic_2', 'diff': {
+ 'guid': {'value': 'topic_2', 'mtime': 1.0},
+ 'ctime': {'value': 1, 'mtime': 1.0},
+ 'mtime': {'value': 1, 'mtime': 1.0},
+ 'type': {'value': 'object', 'mtime': 1.0},
+ 'context': {'value': 'context', 'mtime': 1.0},
+ 'title': {'value': {}, 'mtime': 1.0},
+ 'message': {'value': {}, 'mtime': 1.0},
+ 'solution': {'value': 'solution_2', 'mtime': 1.0},
}},
- {'resource': 'review'},
{'guid': 'context_review', 'diff': {
'guid': {'value': 'context_review', 'mtime': 1.0},
'ctime': {'value': 1, 'mtime': 1.0},
'mtime': {'value': 1, 'mtime': 1.0},
'context': {'value': 'context', 'mtime': 1.0},
- 'artifact': {'value': 'artifact', 'mtime': 4.0},
- 'rating': {'value': 1, 'mtime': 1.0},
+ 'vote': {'value': 1, 'mtime': 1.0},
'author': {'mtime': 1, 'value': {}},
'layer': {'mtime': 1, 'value': []},
'tags': {'mtime': 1, 'value': []},
+ 'type': {'value': 'review', 'mtime': 1.0},
}},
- {'guid': 'artifact_review', 'diff': {
- 'guid': {'value': 'artifact_review', 'mtime': 1.0},
+ {'guid': 'topic_review', 'diff': {
+ 'guid': {'value': 'topic_review', 'mtime': 1.0},
'ctime': {'value': 1, 'mtime': 1.0},
'mtime': {'value': 1, 'mtime': 1.0},
'context': {'value': 'context', 'mtime': 1.0},
- 'rating': {'value': 1, 'mtime': 1.0},
+ 'topic': {'value': 'topic_1', 'mtime': 1.0},
+ 'vote': {'value': 1, 'mtime': 1.0},
'author': {'mtime': 1, 'value': {}},
'layer': {'mtime': 1, 'value': []},
'tags': {'mtime': 1, 'value': []},
+ 'type': {'value': 'feedback', 'mtime': 1.0},
}},
- {'resource': 'feedback'},
- {'guid': 'feedback_1', 'diff': {
- 'guid': {'value': 'feedback_1', 'mtime': 1.0},
- 'ctime': {'value': 1, 'mtime': 1.0},
- 'mtime': {'value': 1, 'mtime': 1.0},
- 'type': {'value': ['idea'], 'mtime': 1.0},
- 'context': {'value': 'context', 'mtime': 1.0},
- 'title': {'value': {}, 'mtime': 1.0},
- 'content': {'value': {}, 'mtime': 1.0},
- 'solution': {'value': 'solution_1', 'mtime': 1.0},
- }},
- {'guid': 'feedback_2', 'diff': {
- 'guid': {'value': 'feedback_2', 'mtime': 1.0},
- 'ctime': {'value': 1, 'mtime': 1.0},
- 'mtime': {'value': 1, 'mtime': 1.0},
- 'type': {'value': ['idea'], 'mtime': 1.0},
- 'context': {'value': 'context', 'mtime': 1.0},
- 'title': {'value': {}, 'mtime': 1.0},
- 'content': {'value': {}, 'mtime': 1.0},
- 'solution': {'value': 'solution_2', 'mtime': 1.0},
- }},
- {'resource': 'solution'},
{'guid': 'solution_1', 'diff': {
'guid': {'value': 'solution_1', 'mtime': 1.0},
'ctime': {'value': 1, 'mtime': 1.0},
'mtime': {'value': 1, 'mtime': 1.0},
'context': {'value': 'context', 'mtime': 1.0},
- 'feedback': {'value': 'feedback_1', 'mtime': 1.0},
- 'content': {'value': {}, 'mtime': 1.0},
+ 'topic': {'value': 'topic_1', 'mtime': 1.0},
+ 'type': {'value': 'answer', 'mtime': 1.0},
+ 'title': {'value': {}, 'mtime': 1.0},
+ 'message': {'value': {}, 'mtime': 1.0},
}},
{'guid': 'solution_2', 'diff': {
'guid': {'value': 'solution_2', 'mtime': 1.0},
'ctime': {'value': 1, 'mtime': 1.0},
'mtime': {'value': 1, 'mtime': 1.0},
'context': {'value': 'context', 'mtime': 1.0},
- 'feedback': {'value': 'feedback_1', 'mtime': 1.0},
- 'content': {'value': {}, 'mtime': 1.0},
+ 'topic': {'value': 'topic_2', 'mtime': 1.0},
+ 'type': {'value': 'answer', 'mtime': 1.0},
+ 'title': {'value': {}, 'mtime': 1.0},
+ 'message': {'value': {}, 'mtime': 1.0},
}},
{'resource': 'release'},
{'guid': 'release', 'diff': {
@@ -445,14 +439,6 @@ class VolumeTest(tests.Test):
'stability': {'value': 'stable', 'mtime': 1.0},
'notes': {'value': {}, 'mtime': 1.0},
}},
- {'resource': 'comment'},
- {'guid': 'comment', 'diff': {
- 'guid': {'value': 'comment', 'mtime': 1.0},
- 'ctime': {'value': 1, 'mtime': 1.0},
- 'mtime': {'value': 1, 'mtime': 1.0},
- 'context': {'value': 'context', 'mtime': 1.0},
- 'message': {'value': {}, 'mtime': 1.0},
- }},
{'commit': [[1, 1]]},
]
merge(volume, records, stats=stats)
@@ -461,21 +447,9 @@ class VolumeTest(tests.Test):
stats.commit_objects()
self.assertEqual([
- [('comment', ts, {
- 'total': 1.0,
- })],
- [('feedback', ts, {
- 'total': 2.0,
- })],
- [('review', ts, {
- 'total': 2.0,
- })],
- [('solution', ts, {
- 'total': 2.0,
- })],
- [('artifact', ts, {
+ [('post', ts, {
'downloaded': 0.0,
- 'total': 1.0,
+ 'total': 6.0,
})],
[('user', ts, {
'total': 0.0,
@@ -488,14 +462,14 @@ class VolumeTest(tests.Test):
})],
],
[[(j.name,) + i for i in j.get(j.last, j.last)] for j in Rrd('stats/node', 1)])
- self.assertEqual(1, volume['artifact'].get('artifact')['rating'])
- self.assertEqual([1, 1], volume['artifact'].get('artifact')['reviews'])
self.assertEqual(1, volume['context'].get('context')['rating'])
self.assertEqual([1, 1], volume['context'].get('context')['reviews'])
+ self.assertEqual(1, volume['post'].get('topic_1')['rating'])
+ self.assertEqual([1, 1], volume['post'].get('topic_1')['reviews'])
records = [
- {'resource': 'feedback'},
- {'guid': 'feedback_2', 'diff': {'solution': {'value': '', 'mtime': 2.0}}},
+ {'resource': 'post'},
+ {'guid': 'topic_2', 'diff': {'solution': {'value': '', 'mtime': 2.0}}},
{'commit': [[2, 2]]},
]
merge(volume, records, stats=stats)
@@ -504,21 +478,9 @@ class VolumeTest(tests.Test):
stats.commit_objects()
self.assertEqual([
- [('comment', ts, {
- 'total': 1.0,
- })],
- [('feedback', ts, {
- 'total': 2.0,
- })],
- [('review', ts, {
- 'total': 2.0,
- })],
- [('solution', ts, {
- 'total': 2.0,
- })],
- [('artifact', ts, {
+ [('post', ts, {
'downloaded': 0.0,
- 'total': 1.0,
+ 'total': 6.0,
})],
[('user', ts, {
'total': 0.0,
@@ -535,15 +497,11 @@ class VolumeTest(tests.Test):
records = [
{'resource': 'context'},
{'guid': 'context', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
- {'resource': 'artifact'},
- {'guid': 'artifact', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
- {'resource': 'review'},
+ {'resource': 'post'},
+ {'guid': 'topic_1', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
+ {'guid': 'topic_2', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
{'guid': 'context_review', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
- {'guid': 'artifact_review', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
- {'resource': 'feedback'},
- {'guid': 'feedback_1', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
- {'guid': 'feedback_2', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
- {'resource': 'solution'},
+ {'guid': 'topic_review', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
{'guid': 'solution_1', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
{'guid': 'solution_2', 'diff': {'layer': {'value': ['deleted'], 'mtime': 3.0}}},
{'resource': 'release'},
@@ -556,19 +514,7 @@ class VolumeTest(tests.Test):
stats.commit_objects()
self.assertEqual([
- [('comment', ts, {
- 'total': 1.0,
- })],
- [('feedback', ts, {
- 'total': 0.0,
- })],
- [('review', ts, {
- 'total': 0.0,
- })],
- [('solution', ts, {
- 'total': 0.0,
- })],
- [('artifact', ts, {
+ [('post', ts, {
'downloaded': 0.0,
'total': 0.0,
})],