Example #1
0
 def test_change_login(self):
     new_test_user(self.env, login='******', website_id=self.website_1.id)
     user_belle = new_test_user(self.env,
                                login='******',
                                website_id=self.website_1.id)
     with self.assertRaises(IntegrityError), mute_logger('flectra.sql_db'):
         user_belle.login = '******'
Example #2
0
 def test_websites_set_null(self):
     user_1 = new_test_user(self.env,
                            login='******',
                            website_id=self.website_1.id)
     user_2 = new_test_user(self.env,
                            login='******',
                            website_id=self.website_2.id)
     with self.assertRaises(ValidationError):
         (user_1 | user_2).write({'website_id': False})
 def setUpClass(cls):
     super().setUpClass()
     cls.john = new_test_user(cls.env,
                              login='******',
                              groups='base.group_user')
     cls.raoul = new_test_user(cls.env,
                               login='******',
                               groups='base.group_user')
     cls.portal = new_test_user(cls.env,
                                login='******',
                                groups='base.group_portal')
Example #4
0
    def test_same_website_message(self):
        @check  # Check decorator, otherwise translation is not applied
        def check_new_test_user(dbname):
            new_test_user(self.env(context={'land': 'en_US'}),
                          login='******',
                          website_id=self.website_1.id)

        new_test_user(self.env, login='******', website_id=self.website_1.id)

        # Should be a ValidationError (with a nice translated error message),
        # not an IntegrityError
        with self.assertRaises(ValidationError), mute_logger('flectra.sql_db'):
            check_new_test_user(self.env.registry._db.dbname)
Example #5
0
 def test_valid_owner_property(self):
     user = new_test_user(self.env, login='******')
     values = {
         'id': 'oj44nep1ldf8a3ll02uip0c9aa',
         'description': 'Small mini desc',
         'organizer': {
             'email': '*****@*****.**',
             'self': True
         },
         'summary': 'Pricing new update',
         'visibility': 'public',
         'attendees': [],
         'reminders': {
             'useDefault': True
         },
         'start': {
             'dateTime': '2020-01-13T16:55:00+01:00',
             'timeZone': 'Europe/Brussels'
         },
         'extendedProperties': {
             'shared': {
                 '%s_owner_id' % self.env.cr.dbname: str(user.id)
             }
         },
         'end': {
             'dateTime': '2020-01-13T19:55:00+01:00',
             'timeZone': 'Europe/Brussels'
         },
     }
     self.env['calendar.event']._sync_google2flectra(GoogleEvent([values]))
     event = self.env['calendar.event'].search([('google_id', '=',
                                                 values.get('id'))])
     self.assertEqual(event.user_id, user)
     self.assertGoogleAPINotCalled()
Example #6
0
    def setUpClass(cls):
        super().setUpClass()

        cls.partner = cls.env['res.partner'].create({'name': "Mur en béton"})
        sale_order = cls.env['sale.order'].with_context(
            tracking_disable=True).create({
                'partner_id':
                cls.partner.id,
                'partner_invoice_id':
                cls.partner.id,
                'partner_shipping_id':
                cls.partner.id,
            })
        product = cls.env['product.product'].create({
            'name': "Prepaid Consulting",
            'type': 'service',
        })
        cls.order_line = cls.env['sale.order.line'].create({
            'name':
            "Order line",
            'product_id':
            product.id,
            'order_id':
            sale_order.id,
        })
        cls.user = new_test_user(cls.env, login='******')
Example #7
0
 def setUp(self):
     super().setUp()
     self.user = new_test_user(self.env, "test_user_1", email="*****@*****.**", tz="UTC")
     self.other_user = new_test_user(self.env, "test_user_2", email="*****@*****.**", password="******", tz="UTC")
     self.partner = self.user.partner_id
     self.event = (
         self.env["calendar.event"]
         .create(
             {
                 "name": "Doom's day",
                 "start": datetime(2019, 10, 25, 8, 0),
                 "stop": datetime(2019, 10, 27, 18, 0),
                 "partner_ids": [(4, self.partner.id)],
             }
         )
         .with_context(mail_notrack=True)
     )
Example #8
0
 def test_attendee_removed(self):
     user = new_test_user(self.env, login='******')
     google_id = 'oj44nep1ldf8a3ll02uip0c9aa'
     event = self.env['calendar.event'].with_user(user).create({
         'name':
         'coucou',
         'start':
         date(2020, 1, 6),
         'stop':
         date(2020, 1, 6),
         'google_id':
         google_id,
         'user_id':
         False,  # user is not owner
         'need_sync':
         False,
         'partner_ids':
         [(6, 0, user.partner_id.ids)],  # but user is attendee
     })
     gevent = GoogleEvent([{
         'id': google_id,
         'description': 'Small mini desc',
         "updated": self.now,
         'organizer': {
             'email': '*****@*****.**',
             'self': True
         },
         'summary': 'Pricing new update',
         'visibility': 'public',
         'attendees': [],  # <= attendee removed in Google
         'reminders': {
             'useDefault': True
         },
         'start': {
             'dateTime': '2020-01-13T16:55:00+01:00',
             'timeZone': 'Europe/Brussels'
         },
         'end': {
             'dateTime': '2020-01-13T19:55:00+01:00',
             'timeZone': 'Europe/Brussels'
         },
     }])
     self.assertEqual(event.partner_ids, user.partner_id)
     self.assertEqual(event.attendee_ids.partner_id, user.partner_id)
     self.sync(gevent)
     # User attendee removed but gevent owner might be added after synch.
     self.assertNotEqual(event.attendee_ids.partner_id, user.partner_id)
     self.assertNotEqual(event.partner_ids, user.partner_id)
     self.assertGoogleAPINotCalled()
Example #9
0
 def setUpClass(cls):
     super().setUpClass()
     cls.event = cls.env['calendar.event'].create({
         'name':
         "Doom's day",
         'start':
         datetime(2019, 10, 25, 8, 0),
         'stop':
         datetime(2019, 10, 27, 18, 0),
     }).with_context(mail_notrack=True)
     cls.user = new_test_user(cls.env,
                              'xav',
                              email='*****@*****.**',
                              notification_type='inbox')
     cls.partner = cls.user.partner_id
Example #10
0
 def check_new_test_user(dbname):
     new_test_user(self.env(context={'land': 'en_US'}),
                   login='******',
                   website_id=self.website_1.id)
Example #11
0
 def test_change_login_no_website(self):
     new_test_user(self.env, login='******', website_id=False)
     user_belle = new_test_user(self.env, login='******', website_id=False)
     with self.assertRaises(ValidationError):
         user_belle.login = '******'
Example #12
0
 def test_null_and_website(self):
     new_test_user(self.env, login='******', website_id=self.website_1.id)
     new_test_user(self.env, login='******', website_id=False)
Example #13
0
 def test_no_website(self):
     new_test_user(self.env, login='******', website_id=False)
     with self.assertRaises(ValidationError):
         new_test_user(self.env, login='******', website_id=False)