Example #1
0
class TagTests(TestCase):
    """tests for Tag"""

    def setUp(self):
        self.client = Client()
        self.fixture = AutoFixture(Tag)

    def tearDown(self):
        Tag.objects.all().delete()

    def populate(self, num):
        self.fixture.create(num)

    def test_save(self):
        tag = Tag()
        tag.name = 'test tag'
        tag.save()
        self.assertIsNotNone(tag.pk)
        self.assertIsNotNone(tag.slug)

    def test_unique_slug(self):
        self.populate(10)

    # TODO: test Tag duplicate names not allowed
    # raises TransactionError:
    # django.db.transaction.TransactionManagementError:
    # An error occurred in the current transaction.
    # You can't execute queries until the end of the 'atomic' block.
    # line 22, in tearDown
    # def test_duplicate_name(self):
    #     self.populate(1)
    #     t_db = Tag.objects.all()[0]
    #     t = Tag(name=t_db.name)
    #     with self.assertRaises(IntegrityError):
    #         t.save()
    #         t.delete()
    #     Tag.objects.all().delete()

    def test_slug_immutable(self):
        self.populate(1)
        t = Tag.objects.all()[0]
        slug = t.slug
        t.name = 'mutable field'
        t.save()
        self.assertEqual(slug, t.slug)

    def test_str(self):
        self.populate(1)
        t = Tag.objects.all()[0]
        self.assertEqual(t.name, str(t))

    def test_url(self):
        self.populate(1)
        t = Tag.objects.all()[0]
        self.assertEqual(
            t.get_absolute_url(), reverse(
                'sitebase:tags:get', args=[t.slug]))

    def test_tags_url(self):
        self.assertIsNotNone(reverse('sitebase:tags:list'))
def setup_module():
    test_user = User.objects.create_user(username='******',password='******',email='*****@*****.**')
    test_user.save()
    test_user_2 = User.objects.create_user(username='******',password='******',email='*****@*****.**')
    test_user_2.save()
    fixture = AutoFixture(Patrao, field_values={'usuario': test_user_2})
    fixture.create(QTD_PATROES)
Example #3
0
    def test_no_triggers(self):
        """
        Try to create event that would normaly launch badge earning.
        Ensure it's not.
        """
        users = User.objects.all()[:10]
        for user in users:
            user.date_joined = user.date_joined - datetime.timedelta(days=370)
            user.save()
        # no pionner
        self.assertEqual(Badge.objects.count(), 0)

        for user in users:
            fixture = AutoFixture(
                Sketch,
                field_values={"user": user})
            fixture.create(5)
        # no collector
        self.assertEqual(Badge.objects.count(), 0)

        for user in users:
            fixture = AutoFixture(
                Sketch,
                field_values={"user": user, "hit_views": 0})
            sketch = fixture.create(1)[0]
            sketch.hit_views = 1000
            sketch.save()
        # no star
        self.assertEqual(Badge.objects.count(), 0)
Example #4
0
    def test_get_pid_without_indexes(self):
        """
        If a house and apartment are without index, then the personal
        account id is generated in form of the following string:
        001000100100010.
        """
        addr_city = addr_models.City(name='Львів')
        addr_city.save()
        addr_street = addr_models.Street(city=addr_city,
                                         name='Городоцька',
                                         type='Street')
        addr_street.save()
        addr_house = addr_models.House(street=addr_street, number=17)
        addr_house.save()
        addr_apartment = addr_models.Apartment(house=addr_house, number=33)
        addr_apartment.save()
        address = addr_models.Address(city=addr_city,
                                      street=addr_street,
                                      house=addr_house,
                                      apartment=addr_apartment)
        address.save()
        house_fixture = AutoFixture(House, generate_fk=True)
        house = house_fixture.create(1)[0]
        apartment = Apartment(house=house, address=address)
        user_fixture = AutoFixture(User, generate_fk=True)
        user = user_fixture.create(1)[0]
        account = Account(apartment=apartment, owner=user)

        pid = account.get_pid()

        self.assertEquals('001000101700330', pid)
Example #5
0
 def testSaveBill(self):
     fixtureProduct=AutoFixture(Product,field_values={'Price':1})
     theproduct=fixtureProduct.create(1)[0]
     theproduct.Price=1
 
     fixtureLocation=AutoFixture(StockLocation,generate_fk=True,
                                 field_values={'LocationCode':'1.1'})
     location=fixtureLocation.create(1)[0]
     fixtureBill=AutoFixture(StockBill,generate_fk=True,field_values={'BillState':'applied'})
     bill=fixtureBill.create(1)[0]
     fixtureBillDetail=AutoFixture(StockBillDetail,generate_fk=True
                                   ,field_values={'stockbill':bill,'product':theproduct,'quantity':1
                                                  ,'location':location})
     detail=fixtureBillDetail.create(5)
     
     bill.save()
     print (bill.BillType)
     self.assertEqual(len(ProductStock.objects.all()),1)
     self.assertEqual(ProductStock.objects.all()[0].quantity,5)
     print ([ProductStock.objects.all()])
     self.assertEqual(bill.TotalAmount,5)
     
     
     bill.BillType='out'
     bill.save()
     
     print (bill.BillType)
     print ([ProductStock.objects.all()])
     self.assertEqual(len(ProductStock.objects.all()),1)
     self.assertEqual(ProductStock.objects.all()[0].quantity,0)
     self.assertEqual(bill.TotalAmount,5)
Example #6
0
 def create_obj(self):
     fixture = AutoFixture(ProductImage,
                           field_values={'status': 0},
                           generate_fk=True)
     fixture.create(1)
     self.obj = ProductImage.objects.get(pk=1)
     return self.obj
def post_save_placement(sender, instance, created, **kwargs):
    if created:
        print("post_save_placement")
        ccd = AutoFixture(PlacementCompanyContactData, field_values={'placement': instance}, overwrite_defaults=True)
        ccd.create(1)
        sap = AutoFixture(StudentActivePlacement, field_values={'student': instance.student, 'placement': instance})
        sap.create(1)
Example #8
0
    def handle(self, *args, **kwargs):
        self.stdout.write("Generating Data...")

        self.user_count = kwargs.get('users')
        self.event_count = kwargs.get('events')
        self.occurences_count = kwargs.get('occurrences')
        self.categories_count = kwargs.get('categories')

        # Create test users, or select them if they already exist
        users = []
        for k, v in enumerate(range(self.user_count)):
            try:
                user = User.objects.create_user(username='******' % (v), password='******')
            except IntegrityError:
                user = User.objects.get(username='******' % (v))
            users.append(user)

        ofixture = AutoFixture(Occurence)
        occurrences = ofixture.create(self.occurences_count)

        cfixture = AutoFixture(Category)
        categories = cfixture.create(self.categories_count)

        # Generators ensure each event has randomly chosen items
        values = {
            'user': ChoicesGenerator(values=users),
            'category': ChoicesGenerator(values=categories),
            'occurrences': InstanceSelector(Occurence.objects.get_query_set(), max_count=10, min_count=1),
        }
        efixture = AutoFixture(Event, field_values=values)
        events = efixture.create(self.event_count)

        self.stdout.write("Done")
def incident_detail(business: Business, d: DateDim):
    v = {
        'business': business,
        'building': business.building,
        'incident_type': 'Structural',
        'occurrence': d,
        'region': region,
        'province': province,
        'city': city
    }
    checklist = business.building.building_checklist.get(
        date_checked__year=d.year, business=business)

    if business.building.avg_fire_rating() < 2:
        damage_range = [5, 25]
        casualty_range = [0, .1]
        intensity_range = [1, 5]
        severity_range = [1, 6]
        duration_range = [30, 240]
        minor_injuries_range = [0, .1]
        major_injuries_range = [0, .2]
    elif business.building.avg_fire_rating() < 3:
        damage_range = [5, 60]
        casualty_range = [0, .15]
        intensity_range = [1, 7]
        severity_range = [1, 6]
        duration_range = [45, 340]
        minor_injuries_range = [0, .4]
        major_injuries_range = [0, .3]
    elif business.building.avg_fire_rating() < 4:
        damage_range = [12, 95]
        casualty_range = [0, .2]
        intensity_range = [1, 8]
        severity_range = [1, 8]
        duration_range = [60, 540]
        minor_injuries_range = [0, .5]
        major_injuries_range = [0, .4]
    else:
        damage_range = [30, 999]
        casualty_range = [0, .5]
        intensity_range = [2, 10]
        severity_range = [3, 10]
        duration_range = [60, 1940]
        minor_injuries_range = [0, .6]
        major_injuries_range = [0, .5]

    v['property_damage'] = random.uniform(damage_range[0], damage_range[1])
    v['casualties'] = random.uniform(casualty_range[0], casualty_range[1])
    v['major_injuries'] = random.uniform(major_injuries_range[0],
                                         major_injuries_range[1])
    v['minor_injuries'] = random.uniform(minor_injuries_range[0],
                                         minor_injuries_range[1])
    v['intensity'] = random.uniform(intensity_range[0], intensity_range[1])
    v['severity'] = random.uniform(severity_range[0], severity_range[1])
    v['duration'] = random.uniform(duration_range[0], duration_range[1])

    fixture = AutoFixture(Incident, field_values=v)

    fixture.create(1)
    print(f"{fixture} created")
Example #10
0
class AuthorTests(TestCase):
    """tests for Author"""

    def setUp(self):
        self.client = Client()
        self.fixture = AutoFixture(Author)

    def tearDown(self):
        Author.objects.all().delete()

    def populate(self, num):
        self.fixture.create(num)

    def test_save(self):
        author = Author()
        author.name = 'test Author'
        author.email = '*****@*****.**'
        author.short_bio = 'just an awesome author'
        author.save()
        self.assertIsNotNone(author.pk)
        self.assertIsNotNone(author.slug)

    def test_unique_slug(self):
        self.populate(10)

    def test_slug_immutable(self):
        self.populate(1)
        a = Author.objects.all()[0]
        slug = a.slug
        a.name = 'mutable field'
        a.save()
        self.assertEqual(slug, a.slug)

    def test_duplicate_names(self):
        self.populate(1)
        a_db = Author.objects.all()[0]
        a = Author(
            name=a_db.name,
            email='*****@*****.**',
            short_bio='just another author')
        try:
            a.save()
        except Exception as e:
            self.fail('Failed: {}'.format(e))

    def test_str(self):
        self.populate(1)
        a = Author.objects.all()[0]
        self.assertEqual(a.name, str(a))

    def test_url(self):
        self.populate(1)
        a = Author.objects.all()[0]
        self.assertEqual(
            a.get_absolute_url(), reverse(
                'sitebase:authors:get', args=[a.slug]))

    def test_authors_url(self):
        self.assertIsNotNone(reverse('sitebase:authors:list'))
Example #11
0
 def setUp(self):
     self.u = self.make_user()
     client_fixture = AutoFixture(Client, follow_fk=True)
     carfixture = AutoFixture(Car, follow_fk=True)
     self.clients = client_fixture.create(10)
     self.cars = carfixture.create(1)
     now = timezone.now() + timedelta(days=3)
     PaypalAccount.objects.create(user=self.u, expire=now)
Example #12
0
 def setUp(self):
     '''
     initialisation for tests
     '''
     location_fixture = AutoFixture(Location)
     location_fixture.create(1)
     self.test_user_util = TestUserUtility()
     self.user = self.test_user_util.user
 def setUp(self):
     '''
     initialisation for tests
     '''
     location_fixture = AutoFixture(Location)
     location_fixture.create(1)
     self.test_user_util = TestUserUtility()
     self.user = self.test_user_util.user
Example #14
0
class TagTests(TestCase):
    """tests for Tag"""
    def setUp(self):
        self.client = Client()
        self.fixture = AutoFixture(Tag)

    def tearDown(self):
        Tag.objects.all().delete()

    def populate(self, num):
        self.fixture.create(num)

    def test_save(self):
        tag = Tag()
        tag.name = 'test tag'
        tag.save()
        self.assertIsNotNone(tag.pk)
        self.assertIsNotNone(tag.slug)

    def test_unique_slug(self):
        self.populate(10)

    # TODO: test Tag duplicate names not allowed
    # raises TransactionError:
    # django.db.transaction.TransactionManagementError:
    # An error occurred in the current transaction.
    # You can't execute queries until the end of the 'atomic' block.
    # line 22, in tearDown
    # def test_duplicate_name(self):
    #     self.populate(1)
    #     t_db = Tag.objects.all()[0]
    #     t = Tag(name=t_db.name)
    #     with self.assertRaises(IntegrityError):
    #         t.save()
    #         t.delete()
    #     Tag.objects.all().delete()

    def test_slug_immutable(self):
        self.populate(1)
        t = Tag.objects.all()[0]
        slug = t.slug
        t.name = 'mutable field'
        t.save()
        self.assertEqual(slug, t.slug)

    def test_str(self):
        self.populate(1)
        t = Tag.objects.all()[0]
        self.assertEqual(t.name, str(t))

    def test_url(self):
        self.populate(1)
        t = Tag.objects.all()[0]
        self.assertEqual(t.get_absolute_url(),
                         reverse('sitebase:tags:get', args=[t.slug]))

    def test_tags_url(self):
        self.assertIsNotNone(reverse('sitebase:tags:list'))
Example #15
0
 def create_brand(self):
     fixture = AutoFixture(Brand,
                           field_values={
                               'slug': 'obj-slug',
                               'status': 0
                           })
     fixture.create(1)
     self.obj = Brand.objects.get(slug='obj-slug')
     return self.obj
Example #16
0
 def testLocationGetChildren(self):
     
     fixtureParent=AutoFixture(StockLocation)
     locationParent=fixtureParent.create(1)[0]
     fixture=AutoFixture(StockLocation,
                         field_values={"ParentLocation":locationParent},
                          generate_fk=True)
     locations=fixture.create(5)
     self.assertEqual(5,len( locationParent.GetChildren()))
Example #17
0
 def test_GenerateStockDetail(self):
     ft_stockbill=AutoFixture(StockBill,generate_fk=True)
     stockbills=ft_stockbill.create(2)
     ft_cbd=AutoFixture(CheckBillDetail,generate_fk=True, field_values={'quantity':1,'realquantity':4})
     detail=ft_cbd.create(1)[0]
     #import pdb;pdb.set_trace()
     detail.GenerateStockDetail(stockbills[0],stockbills[1])
     self.assertEqual(1,stockbills[1].billdetailbase_set.count())
     self.assertEqual(3,stockbills[1].billdetailbase_set.all()[0].quantity)
Example #18
0
class AuthorTests(TestCase):
    """tests for Author"""
    def setUp(self):
        self.client = Client()
        self.fixture = AutoFixture(Author)

    def tearDown(self):
        Author.objects.all().delete()

    def populate(self, num):
        self.fixture.create(num)

    def test_save(self):
        author = Author()
        author.name = 'test Author'
        author.email = '*****@*****.**'
        author.short_bio = 'just an awesome author'
        author.save()
        self.assertIsNotNone(author.pk)
        self.assertIsNotNone(author.slug)

    def test_unique_slug(self):
        self.populate(10)

    def test_slug_immutable(self):
        self.populate(1)
        a = Author.objects.all()[0]
        slug = a.slug
        a.name = 'mutable field'
        a.save()
        self.assertEqual(slug, a.slug)

    def test_duplicate_names(self):
        self.populate(1)
        a_db = Author.objects.all()[0]
        a = Author(name=a_db.name,
                   email='*****@*****.**',
                   short_bio='just another author')
        try:
            a.save()
        except Exception as e:
            self.fail('Failed: {}'.format(e))

    def test_str(self):
        self.populate(1)
        a = Author.objects.all()[0]
        self.assertEqual(a.name, str(a))

    def test_url(self):
        self.populate(1)
        a = Author.objects.all()[0]
        self.assertEqual(a.get_absolute_url(),
                         reverse('sitebase:authors:get', args=[a.slug]))

    def test_authors_url(self):
        self.assertIsNotNone(reverse('sitebase:authors:list'))
Example #19
0
class BlogSeriesTests(TestCase):
    """tests for BlogSeries"""

    def setUp(self):
        self.client = Client()
        self.fixture = AutoFixture(BlogSeries)

    def tearDown(self):
        BlogSeries.objects.all().delete()

    def populate(self, num):
        self.fixture.create(num)

    def test_save(self):
        series = BlogSeries()
        series.title = 'test BlogSeries'
        series.short_description = 'just some blog series'
        series.save()
        self.assertIsNotNone(series.pk)
        self.assertIsNotNone(series.slug)

    def test_unique_slug(self):
        self.populate(10)

    def test_slug_immutable(self):
        self.populate(1)
        series = BlogSeries.objects.all()[0]
        slug = series.slug
        series.title = 'mutable field'
        series.save()
        self.assertEqual(slug, series.slug)

    def test_duplicate_names(self):
        self.populate(1)
        series = BlogSeries.objects.all()[0]
        series.title='mutable field'
        try:
            series.save()
        except Exception as e:
            self.fail('Failed: {}'.format(e))

    def test_str(self):
        self.populate(1)
        series = BlogSeries.objects.all()[0]
        self.assertEqual(series.title, str(series))

    def test_url(self):
        self.populate(1)
        series = BlogSeries.objects.all()[0]
        self.assertEqual(
            series.get_absolute_url(), reverse(
                'blog:series', args=[series.slug]))

    def test_seriess_url(self):
        self.assertIsNotNone(reverse('blog:series-list'))
Example #20
0
    def test_GenerateChangeDetail(self):
        af_checkbill=AutoFixture(CheckBill,generate_fk=True)
        bill=af_checkbill.create(1)[0]

        af_checkbilldetail=AutoFixture(CheckBillDetail, generate_fk=True,field_values={'stockbill':bill,'quantity':1,'realquantity':4})
        billdetails=af_checkbilldetail.create(4)
        self.assertEqual(4,len(billdetails))
        change_list=bill.GenerateChangeDetail()
        self.assertEqual(4,len(change_list))
        for change in change_list:
            self.assertEqual(change.quantity,3)
Example #21
0
def setup_module():
    test_user = User.objects.create_user(username='******',
                                         password='******',
                                         email='*****@*****.**')
    test_user.save()
    test_user_2 = User.objects.create_user(username='******',
                                           password='******',
                                           email='*****@*****.**')
    test_user_2.save()
    fixture = AutoFixture(Patrao, field_values={'usuario': test_user_2})
    fixture.create(QTD_PATROES)
Example #22
0
 def create_obj(self):
     fixture = AutoFixture(Product,
                           field_values={
                               'slug': 'obj-slug',
                               'status': 0,
                               'price': 100.0
                           },
                           generate_fk=True)
     fixture.create(1)
     self.obj = Product.objects.get(slug='obj-slug')
     return self.obj
Example #23
0
class BlogSeriesTests(TestCase):
    """tests for BlogSeries"""
    def setUp(self):
        self.client = Client()
        self.fixture = AutoFixture(BlogSeries)

    def tearDown(self):
        BlogSeries.objects.all().delete()

    def populate(self, num):
        self.fixture.create(num)

    def test_save(self):
        series = BlogSeries()
        series.title = 'test BlogSeries'
        series.short_description = 'just some blog series'
        series.save()
        self.assertIsNotNone(series.pk)
        self.assertIsNotNone(series.slug)

    def test_unique_slug(self):
        self.populate(10)

    def test_slug_immutable(self):
        self.populate(1)
        series = BlogSeries.objects.all()[0]
        slug = series.slug
        series.title = 'mutable field'
        series.save()
        self.assertEqual(slug, series.slug)

    def test_duplicate_names(self):
        self.populate(1)
        series = BlogSeries.objects.all()[0]
        series.title = 'mutable field'
        try:
            series.save()
        except Exception as e:
            self.fail('Failed: {}'.format(e))

    def test_str(self):
        self.populate(1)
        series = BlogSeries.objects.all()[0]
        self.assertEqual(series.title, str(series))

    def test_url(self):
        self.populate(1)
        series = BlogSeries.objects.all()[0]
        self.assertEqual(series.get_absolute_url(),
                         reverse('blog:series', args=[series.slug]))

    def test_seriess_url(self):
        self.assertIsNotNone(reverse('blog:series-list'))
Example #24
0
 def test_url(self):
     self.populate(1)
     b = BlogPost.objects.filter(series=None)[0]
     self.assertEqual(b.get_absolute_url(),
                      reverse('blog:post', args=[b.slug]))
     series_fixture = AutoFixture(BlogSeries)
     series_fixture.create(1)
     b.series = BlogSeries.objects.all()[0]
     b.save()
     b = BlogPost.objects.filter(series__isnull=False)[0]
     self.assertEqual(b.get_absolute_url(),
                      reverse('blog:post', args=[b.series.slug, b.slug]))
Example #25
0
    def setUp(self):
        super(MonitorUpdateTestCase, self).setUp()
        self.user = User(username='******', password='******', email='*****@*****.**')
        self.user.save()
        fixture = AutoFixture(MonitorUpdate)
        fixture.create(10)

        try:
            self.api_key = ApiKey.objects.get(user=self.user)
        except ApiKey.DoesNotExist:
            self.api_key = ApiKey.objects.create(user=self.user)
        self.auth_string = '&username={0}&api_key={1}'.format(
            self.user.username, self.api_key.key)
 def setUp(self):
     '''
     initialisation for tests
     '''
     bulletin_fixture = AutoFixture(Bulletin)
     bulletin_fixture.create(5)
     bull = Bulletin.objects.get(id=1)
     bull.actors_role.clear()
     bull.save()
     location_fixture = AutoFixture(Location)
     location_fixture.create(1)
     self.test_user_util = TestUserUtility()
     self.user = self.test_user_util.user
Example #27
0
 def test_unique_slug(self):
     fixture = AutoFixture(Author)
     fixture.create(1)
     author_orig = Author.objects.all()[0]
     unique_slug = get_unique_slug(
         Author, author_orig, 'name', name=author_orig.name)
     author_new = Author(name=author_orig.name)
     author_new.save()
     self.assertNotEqual(author_new.slug, author_orig.slug)
     self.assertEqual(author_new.slug, unique_slug)
     self.assertNotEqual(
         author_new.slug, get_unique_slug(
             Author, author_orig, 'name', name=author_orig.name))
 def setUp(self):
     '''
     initialisation for tests
     '''
     bulletin_fixture = AutoFixture(Bulletin)
     bulletin_fixture.create(5)
     bull = Bulletin.objects.get(id=1)
     bull.actors_role.clear()
     bull.save()
     location_fixture = AutoFixture(Location)
     location_fixture.create(1)
     self.test_user_util = TestUserUtility()
     self.user = self.test_user_util.user
Example #29
0
	def generateCartWithItems(self, request):
		fixture = AutoFixture(Category)
		category = fixture.create(1)

		fixture = AutoFixture(Product)
		products = fixture.create(5) # 5 products
		quantity = 3 # added 3 times, thus 5*3=15
		products[0].title="kartofi"
		products[1].title="makaroni"
		cart = Cart(request)
		for product in products:
			cart.add(product, product.price, quantity)
		return cart
Example #30
0
    def test_get_cooperative(self):
        """
        The cooperative is retrieved from the apartment.
        """
        hc_fixture = AutoFixture(HousingCooperative)
        hc = hc_fixture.create(1)[0]
        AutoFixture(House).create(1)
        apartment_fixture = AutoFixture(Apartment)
        apartment = apartment_fixture.create(1)[0]

        cooperative = apartment.get_cooperative()

        self.assertEqual(hc.id, cooperative.id)
Example #31
0
 def create_product_caracteristic(self, product, ftype, name, value):
     fixture = AutoFixture(ProductCaracteristic, field_values={'name':name, 
                                                               'product':product,
                                                               'ftype':ftype,
                                                               'value':value
                                                               }
                           )
     fixture.create(1)
     obj = ProductCaracteristic.objects.get(pk=1)
     obj.value = value
     obj.type = ftype
     obj.save()
     return obj
Example #32
0
 def testLocationGetProductStock(self):
     
     fixtureProduct=AutoFixture(Product)
     theproduct=fixtureProduct.create(1)[0]
     
     
     fixturelocation=AutoFixture(StockLocation,generate_fk=True)
     location=fixturelocation.create(1)[0]
     fixturestock=AutoFixture(ProductStock,field_values={'product':theproduct},)
     stocks=fixturestock.create(5)
     for stock in stocks:
         stock.stocklocation=location
     
     self.assertEqual(len(location.productstock_set.all()),5)
Example #33
0
 def test_url(self):
     self.populate(1)
     b = BlogPost.objects.filter(series=None)[0]
     self.assertEqual(
         b.get_absolute_url(), reverse(
             'blog:post', args=[b.slug]))
     series_fixture = AutoFixture(BlogSeries)
     series_fixture.create(1)
     b.series = BlogSeries.objects.all()[0]
     b.save()
     b = BlogPost.objects.filter(series__isnull=False)[0]
     self.assertEqual(
         b.get_absolute_url(), reverse(
             'blog:post', args=[b.series.slug, b.slug]))
Example #34
0
    def test_get_cooperative(self):
        """
        The cooperative is retrieved from the house.
        """
        hc_fixture = AutoFixture(HousingCooperative)
        hc = hc_fixture.create(1)[0]
        house_fixture = AutoFixture(House,
                                    field_values={'cooperative': hc},
                                    generate_fk=True)
        house = house_fixture.create(1)[0]

        cooperative = house.get_cooperative()

        self.assertEqual(hc.id, cooperative.id)
def post_save_student(sender, instance, created, **kwargs):
    if created:
        print("post_save_student")
        from autofixture import generators

        pl = AutoFixture(Placement, overwrite_defaults=True,
                         field_values={
                             'report': generators.StaticGenerator('ullmanfa/placement/report/Arbeitszeugnis_Audi.pdf'),
                             'presentation': generators.StaticGenerator(
                                 'ullmanfa/placement/presentation/Arbeitszeugnis_Audi.pdf'),
                             'certificate': generators.StaticGenerator(
                                 'ullmanfa/placement/certificate/Arbeitszeugnis_Audi.pdf'),
                             'student': instance})
        pl.create(1)
    def setUp(self):
        super(BulletinTestCase, self).setUp()
        self.test_user_util = TestUserUtility()
        self.user = self.test_user_util.user
        self.location = Location(name_en='test location', loc_type='Village')
        self.location.save()
        self.actor = Actor(fullname_en='Test Actor',
                           fullname_ar='Test name ar',
                           nickname_en='nick name',
                           nickname_ar='nick name')
        self.actor.save()
        self.role = ActorRole(role_status='Detained', actor_id=self.actor.pk)
        self.role.save()

        self.sourceType = SourceType(source_type='test source type',
                                     description='test source description')

        self.sourceType.save()
        self.source = Source(reliability_score=0,
                             name_en='test source',
                             source_type_id=self.sourceType.pk)

        self.source.save()
        self.source = Source(reliability_score=0,
                             name_en='test source 2',
                             source_type_id=self.sourceType.pk)

        self.source.save()
        self.label = Label(name_en='test label')
        self.label.save()
        self.comment = Comment(assigned_user_id=self.user.pk,
                               status_id=3,
                               comments_en='test comment')
        self.comment.save()

        self.media = Media(media_type='Video',
                           name_en='test media',
                           media_file='')
        self.media.save()

        fixture = AutoFixture(Bulletin, generate_m2m={1, 5})
        fixture.create(10)

        try:
            self.api_key = ApiKey.objects.get(user=self.user)
        except ApiKey.DoesNotExist:
            self.api_key = ApiKey.objects.create(user=self.user)
        self.auth_string = '&username={0}&api_key={1}'.format(
            self.user.username, self.api_key.key)
 def setUp(self):
     super(TimeInfoTestCase, self).setUp()
     self.user = User(username='******', password='******', email='*****@*****.**')
     self.user.save()
     fixture = AutoFixture(TimeInfo)
     fixture.create(10)
     now = timezone.now()
     self.from_datetime = now.isoformat()
     self.to_datetime = now.isoformat()
     try:
         self.api_key = ApiKey.objects.get(user=self.user)
     except ApiKey.DoesNotExist:
         self.api_key = ApiKey.objects.create(user=self.user)
     self.auth_string = '&username={0}&api_key={1}'.format(
         self.user.username, self.api_key.key)
Example #38
0
def checklists(businesses, year):
    schedule = DateDim.objects.get_days_between(start=f'{year}-01-01',
                                                end=f'{year}-12-31')

    for business in businesses:
        fixture = AutoFixture(Checklist,
                              field_values={
                                  'business': business,
                                  'building': business.building,
                                  'date_checked': random.choice(schedule)
                              })

        fixture.create(1)

    return print('Checklists created')
Example #39
0
 def create_fixtures(self, apartment):
     meter_fixture = AutoFixture(Meter)
     self.meter = meter_fixture.create(1)[0]
     apartment_meter_fixture = AutoFixture(ApartmentMeter,
                                           field_values={
                                               'apartment': apartment,
                                               'meter': self.meter,
                                           })
     self.apartment_meter = apartment_meter_fixture.create(1)[0]
     self.meter_indicator_fixture = AutoFixture(ApartmentMeterIndicator,
                                                field_values={
                                                    'meter':
                                                    self.apartment_meter,
                                                })
     self.meter_indicator = self.meter_indicator_fixture.create(1)[0]
 def setUp(self):
     super(TimeInfoTestCase, self).setUp()
     self.user = User(username='******', password='******', email='*****@*****.**')
     self.user.save()
     fixture = AutoFixture(TimeInfo)
     fixture.create(10)
     now = timezone.now()
     self.from_datetime = now.isoformat()
     self.to_datetime = now.isoformat()
     try:
         self.api_key = ApiKey.objects.get(user=self.user)
     except ApiKey.DoesNotExist:
         self.api_key = ApiKey.objects.create(user=self.user)
     self.auth_string = '&username={0}&api_key={1}'.format(
         self.user.username, self.api_key.key)
Example #41
0
def preload_businesses(data):
    for key, item in data.items():
        __building = item['building']
        __business = item['business']
        __address = item['address']
        __latitude = item['latitude']
        __longitude = item['longitude']

        try:
            building = Building.objects.get(name=__building)
        except Building.DoesNotExist:
            building = create_building(item)

        building = Building.objects.get(name=__building)

        try:
            business = Business.objects.get(name=__business)
        except Business.DoesNotExist:
            fixture = AutoFixture(Business,
                                  field_values={
                                      'name': __business,
                                      'address': __address,
                                      'region': region,
                                      'province': province,
                                      'city': city,
                                      'building': building
                                  })

            business = fixture.create(1)

        print(f"{business} created in {building}")
def generate_sample_from_model(model, num):
    """
    Generate num instances of model
    """
    fixture = AutoFixture(model)
    entries = fixture.create(num)
    return entries
Example #43
0
def create_technican_detail():
    for i in range(0, N):
        lat_long = generate_random_location()
        res = w3w.reverse(lat=lat_long[0], lng=lat_long[1])['words']
        willing_to_travel = random.randint(1, 30)
        max_num_jobs_allowed = random.randint(1, 6)
        av_rating = random.uniform(0, 5)
        ficture3 = AutoFixture(TechnicianDetail,
                               field_values={
                                   'number_jobs_active':
                                   random.randint(0, 5),
                                   'number_of_jobs_completed':
                                   random.randint(0, 100),
                                   'rating': [{
                                       'job_id': 1,
                                       'user_rating': 3
                                   }],
                                   'what3words':
                                   res,
                                   'willing_to_travel':
                                   willing_to_travel,
                                   'max_num_jobs_allowed':
                                   max_num_jobs_allowed,
                                   'average_rating':
                                   av_rating
                               })
        entries3 = ficture3.create(1)
Example #44
0
    def setUp(self):
        self.client = Client()
        self.url = reverse('tasks')
        self.user = AutoFixture(User).create(1)[0]
        fixture = AutoFixture(Task, field_values={'owner': self.user})

        self.tasks = fixture.create(10)
Example #45
0
 def create_tournament(beginDate=None, endDate=None):
     beginDate = beginDate or datetime.date(2007, 4, 24)
     endDate = endDate or datetime.date(2010, 4, 22)
     fixture_tournament = AutoFixture(
         Tournament, generate_fk=True, field_values={"begin_date": beginDate, "end_date": endDate}
     )
     return fixture_tournament.create(1)[0]
Example #46
0
    def test_trigger_create(self):
        """
        Create the star trigger, check if it does it's work
        """

        data = {
            "code": "star",
            "condition": "NEW.hit_views >= 1000 ",
            "name": "Star",
            "trigger_condition": "update",
            "trigger_table": "dummy_sketch",
            "user_field": "user_id"
        }
        create_trigger(data)

        self.assertEqual(Badge.objects.count(), 0)
        users = User.objects.all()[:10]
        for user in users:
            fixture = AutoFixture(
                Sketch,
                field_values={"user": user, "hit_views": 0})
            sketch = fixture.create(1)[0]
            sketch.hit_views = 1000
            sketch.save()
        self.assertEqual(Badge.objects.count(), 10)
Example #47
0
def buildings(buildings):
    for building in buildings:
        fixture = AutoFixture(Building,
                              field_values={
                                  'name': building,
                                  'address': buildings[building]['address'],
                                  'region': region,
                                  'province': province,
                                  'city': city,
                                  'latitude': buildings[building]['latitude'],
                                  'longitude': buildings[building]['longitude']
                              })

        fixture.create(1)

    return print('Buildings created')
Example #48
0
 def test_unique_slug(self):
     fixture = AutoFixture(Author)
     fixture.create(1)
     author_orig = Author.objects.all()[0]
     unique_slug = get_unique_slug(Author,
                                   author_orig,
                                   'name',
                                   name=author_orig.name)
     author_new = Author(name=author_orig.name)
     author_new.save()
     self.assertNotEqual(author_new.slug, author_orig.slug)
     self.assertEqual(author_new.slug, unique_slug)
     self.assertNotEqual(
         author_new.slug,
         get_unique_slug(Author, author_orig, 'name',
                         name=author_orig.name))
def fake_book(count=10):
    fixture = AutoFixture(Book)
    entries = fixture.create(count, commit=False)
    for entry in entries:
        entry.currency = choice([entry.USD, entry.CAD, entry.EUR, entry.AED])
        entry.save()
        entry.authors.add(choice(Author.objects.values_list('id', flat=True)))
 def setUp(self):
     self.test_util = TestUserUtility()
     fixture = AutoFixture(VersionStatus, generate_fk=True)
     fixture.create(10)
     # we'll need to create the UserLog objects manually to ensure a valid
     # login and logout datetime
     # see line 110
     #fixture = AutoFixture(UserLog, generate_fk=True)
     #fixture.create(10)
     fixture = AutoFixture(User)
     fixture.create(1)
     fixture = AutoFixture(Bulletin)
     fixture.create(1)
     fixture = AutoFixture(Incident)
     fixture.create(1)
     fixture = AutoFixture(Actor)
     fixture.create(1)
 def test_assigned_user_perm_enforced(self):
     self.test_user_util.add_user_to_group('data-analyst')
     fixture = AutoFixture(User)
     fixture.create(1)
     precreated_incident = Incident.objects.all()[0]
     precreated_incident.assigned_user = User.objects.get(id=2)
     precreated_incident.save()
     url = '/api/v1/incident/{0}/?format=json{1}'.format(
         precreated_incident.id, self.auth_string)
     put_data = create_put_data(4)
     response = self.api_client.put(url, data=put_data)
     assigned_user_id = retrieve_user_id(response)
     self.assertEqual(assigned_user_id, 2)
     self.test_user_util.add_user_to_group('chief-data-analyst')
     response = self.api_client.put(url, data=put_data)
     assigned_user_id = retrieve_user_id(response)
     self.assertEqual(assigned_user_id, 1)
Example #52
0
    def handle(self, *args, **options):

        fixture = AutoFixture(User, field_values={'username': generators.StringGenerator(max_length=10),'first_name':generators.FirstNameGenerator(), 'last_name':generators.LastNameGenerator(),
                                                  'email':generators.EmailGenerator(), 'password':UNUSABLE_PASSWORD})
        entries = fixture.create(50)

        for us in User.objects.all():
            if us.username != 'alberto':
                us.set_password('pass')
                us.save()

        fixture = AutoFixture(auction, field_values={
            'min_price': generators.PositiveSmallIntegerGenerator(max_value=1000), 'lock':False})
        entries = fixture.create(50)


        fixture = AutoFixture(bid, field_values={
            'amount': generators.IntegerGenerator(min_value=0), 'status':'W'})
        entries = fixture.create(20)

        auct = auction.objects.all()
        for auc in auct:
            if (auc.deadline > timezone.make_aware(datetime.now(), timezone.get_default_timezone())):
                auc.lifecycle = 'A'
                auc.save()
            if (auc.deadline < timezone.make_aware(datetime.now(), timezone.get_default_timezone()) and auc.lifecycle=='A'):
                auc.lifecycle = 'D'
                auc.save()

        bids = bid.objects.all()
        for b in bids:
            for a in bids:
                if (b.auct == a.auct and a != b):
                    if (b.status == 'W' and a.status == 'W'):
                        if (b.amount > a.amount):
                            a.status = 'L'
                            a.save()
                        else:
                            b.status = 'L'
                            b.save()
            if (b.amount < b.auct.min_price):
                b.amount = b.auct.min_price+1
                b.save()
            if (b.user == b.auct.seller):
                b.delete()
    def setUp(self):
        super(IncidentTestCase, self).setUp()
        self.test_user_util = TestUserUtility()
        self.user = self.test_user_util.user

        self.location = Location(name_en='test location', loc_type='Village')
        self.location.save()

        self.actor = Actor(
            fullname_en='Test Actor',
            fullname_ar='Test name ar',
            nickname_en='nick name',
            nickname_ar='nick name')
        self.actor.save()
        self.role = ActorRole(role_status='Detained', actor_id=self.actor.pk)
        self.role.save()

        self.statusUpdate = StatusUpdate(status_en='test status')
        self.statusUpdate.save()

        self.crimeCategory = CrimeCategory(
            name_en='test crime category',
            level=1,
            description_en='test source incident_details')
        self.crimeCategory.save()
        self.label = Label(name_en='test label')
        self.label.save()

        self.comment = Comment(
            assigned_user_id=self.user.pk,
            status_id=self.statusUpdate.pk,
            comments_en='test comment')
        self.comment.save()

        fixture = AutoFixture(Incident, generate_m2m={1, 5})
        fixture.create(10)

        try:
            self.api_key = ApiKey.objects.get(user=self.user)
        except ApiKey.DoesNotExist:
            self.api_key = ApiKey.objects.create(user=self.user)
        self.auth_string = '&username={0}&api_key={1}'.format(
            self.user.username, self.api_key.key)
Example #54
0
 def create_obj(self, slug='cat1', category=None, name='carac_name', ftype='int', unit='cm'):
     fixture = AutoFixture(Category, field_values={'slug':'cat1'})
     fixture.create(1)
     if category is None:
         category  = Category.objects.get(slug=slug)
     fixture = AutoFixture(CategoryCaracteristic, field_values={
                                                                'name':name,
                                                                'category':category,
                                                                'type':ftype,
                                                                'unit':unit,
                                                                'choices':choices
                                                                }
                           )
     fixture.create(1)
     self.obj = CategoryCaracteristic.objects.get(pk=1)
     self.obj.type = ftype
     self.obj.save()
     self.category = category
     return self.obj
Example #55
0
def get_autofixture(app_label, model_name, f_key=False, n_instances=1):
    app_label = get_module_name(app_label)
    try:
        model_class = get_app_model(app_label, model_name) #ContentType.objects.get(model=model_name).model_class()
        fixtures = AutoFixture(model_class, generate_fk=f_key)
        entries = fixtures.create(n_instances)
    except Exception as e:
        print e
        return 'Error!'
    return 'Created(s)!'
Example #56
0
    def handle(self, *args, **options):

        toto = User.objects.get(pk=1)
        android = Category.objects.get(pk=7)
        subject = Subject.objects.create(category=android, author=toto, name="Ths is a subject", nb_see=0, nb_message=0)
        subject.save()
        #subject = Subject.objects.filter(category=android, author=toto)
        fixture = AutoFixture(NormalMessage, field_values={'author': toto, 'subject': subject})
        entries = fixture.create(100)
        message = "Thread created please go here for test localhost:8000/subject/" + str(subject.pk) + "/1"
        print(message)
    def setUp(self):
        super(ActorTestCase, self).setUp()
        self.test_user_util = TestUserUtility()
        self.user = self.test_user_util.user
        fixture = AutoFixture(Actor)
        fixture.create(10)
        self.actor = Actor(
            fullname_en='Test Actor',
            fullname_ar='Test name ar',
            nickname_en='nick name',
            nickname_ar='nick name'
        )
        self.actor.save()

        try:
            self.api_key = ApiKey.objects.get(user=self.user)
        except ApiKey.DoesNotExist:
            self.api_key = ApiKey.objects.create(user=self.user)
        self.auth_string = '&username={0}&api_key={1}'.format(
            self.user.username, self.api_key.key)