Remove Foundation members report
Foundation members report shows when new users are registered as OpenStack Foundation members. However the current approach gets data directly from HTML pages (slow!), does not update the data and does not take into account job changes. Thus produced report does not reflect reality and just show wrong data. This reverts commits307b96efc1
2d4d2fc610
5decf7a170
ea37576fbf
bfb56d28c2
1865fc804f
e40cb6857c
1c4003c6fb
97a64afd68
a18739e415
ed515b4be9
Change-Id: I5e4886e7ff7f1da1527d82a1e55152af58f36afe
This commit is contained in:
@@ -1,58 +0,0 @@
|
||||
# Copyright (c) 2013 Mirantis Inc.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
# implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
import re
|
||||
|
||||
import testtools
|
||||
|
||||
from stackalytics.processor import mps
|
||||
|
||||
|
||||
class TestMps(testtools.TestCase):
|
||||
|
||||
def test_member_parse_regex(self):
|
||||
|
||||
content = '''<h1>Individual Member Profile</h1>
|
||||
<div class="candidate span-14">
|
||||
<div class="span-4">
|
||||
<img src="/themes/openstack/images/generic-profile-photo.png"><p> </p>
|
||||
</div>
|
||||
<a name="profile-10501"></a>
|
||||
<div class="details span-10 last">
|
||||
<div class="last name-and-title">
|
||||
<h3>Jim Battenberg</h3>
|
||||
</div>
|
||||
<hr><div class="span-4"><strong>Date Joined</strong></div>
|
||||
<div class="span-6 last">June 25, 2013 <br><br></div>
|
||||
<div class="span-4"><strong>Affiliations</strong></div>
|
||||
<div class="span-6 last">
|
||||
<div>
|
||||
<b>Rackspace</b> From (Current)
|
||||
</div>
|
||||
</div>
|
||||
<div class="span-4"><strong>Statement of Interest </strong></div>
|
||||
<div class="span-6 last">
|
||||
<p>contribute logic and evangelize openstack</p>
|
||||
</div>
|
||||
<p> </p>'''
|
||||
|
||||
match = re.search(mps.NAME_AND_DATE_PATTERN, content)
|
||||
self.assertTrue(match)
|
||||
self.assertEqual('Jim Battenberg', match.group('member_name'))
|
||||
self.assertEqual('June 25, 2013 ', match.group('date_joined'))
|
||||
|
||||
match = re.search(mps.COMPANY_PATTERN, content)
|
||||
self.assertTrue(match)
|
||||
self.assertEqual('Rackspace', match.group('company_draft'))
|
@@ -799,60 +799,6 @@ class TestRecordProcessor(testtools.TestCase):
|
||||
record_processor_inst.runtime_storage_inst,
|
||||
email='john_doe@gmail.com'))
|
||||
|
||||
def test_create_member(self):
|
||||
member_record = {'member_id': '123456789',
|
||||
'member_name': 'John Doe',
|
||||
'member_uri': 'http://www.openstack.org/community'
|
||||
'/members/profile/123456789',
|
||||
'date_joined': 'August 01, 2012 ',
|
||||
'company_draft': 'Mirantis'}
|
||||
|
||||
record_processor_inst = self.make_record_processor()
|
||||
result_member = next(record_processor_inst._process_member(
|
||||
member_record))
|
||||
|
||||
self.assertEqual(result_member['primary_key'], 'member:123456789')
|
||||
self.assertEqual(result_member['date'], utils.member_date_to_timestamp(
|
||||
'August 01, 2012 '))
|
||||
self.assertEqual(result_member['author_name'], 'John Doe')
|
||||
self.assertEqual(result_member['company_name'], 'Mirantis')
|
||||
|
||||
result_user = user_processor.load_user(
|
||||
record_processor_inst.runtime_storage_inst,
|
||||
member_id='123456789')
|
||||
|
||||
self.assertEqual(result_user['user_name'], 'John Doe')
|
||||
self.assertEqual(result_user['company_name'], 'Mirantis')
|
||||
self.assertEqual(result_user['companies'],
|
||||
[{'company_name': 'Mirantis', 'end_date': 0}])
|
||||
|
||||
def test_update_member(self):
|
||||
member_record = {'member_id': '123456789',
|
||||
'member_name': 'John Doe',
|
||||
'member_uri': 'http://www.openstack.org/community'
|
||||
'/members/profile/123456789',
|
||||
'date_joined': 'August 01, 2012 ',
|
||||
'company_draft': 'Mirantis'}
|
||||
|
||||
record_processor_inst = self.make_record_processor()
|
||||
|
||||
updated_member_record = member_record
|
||||
updated_member_record['member_name'] = 'Bill Smith'
|
||||
updated_member_record['company_draft'] = 'Rackspace'
|
||||
|
||||
result_member = next(record_processor_inst._process_member(
|
||||
updated_member_record))
|
||||
self.assertEqual(result_member['author_name'], 'Bill Smith')
|
||||
self.assertEqual(result_member['company_name'], 'Rackspace')
|
||||
|
||||
result_user = user_processor.load_user(
|
||||
record_processor_inst.runtime_storage_inst,
|
||||
member_id='123456789')
|
||||
|
||||
self.assertEqual(result_user['user_name'], 'Bill Smith')
|
||||
self.assertEqual(result_user['companies'],
|
||||
[{'company_name': 'Rackspace', 'end_date': 0}])
|
||||
|
||||
def test_process_email_then_review(self):
|
||||
# it is expected that the user profile will contain email and
|
||||
# gerrit id, while LP id will be None
|
||||
|
Reference in New Issue
Block a user