예제 #1
0
    def test_is_num_attribute(self):
        '''
        数値型のレコード(価格と在庫数)に文字列型の数字を入れた場合のチェック
        '''
        # 各マスタのレコード追加準備
        high_cate = HighCategoryTBL(highcategoryid='category01')
        cate = CategoryTBL(categoryid='category01A01',
                           highcategoryid=high_cate)
        goods = GoodsTBL(goodsid='product01S001',
                         productno='product01',
                         sizename='S',
                         colorname='黒',
                         categoryid=cate,
                         price='4500',
                         goodsstocks='50',
                         salesstartdate='2019-07-29',
                         deleteflag='0')
        # 各マスタのレコード追加
        high_cate.save()
        cate.save()
        goods.save()
        # 全件取得
        saved_goodstbl = GoodsTBL.objects.all()
        actual_goods = saved_goodstbl[0]

        # 価格、在庫数の属性判定
        self.assertEqual(actual_goods.price, int(4500),
                         '価格の属性が想定(数値)と異なっています。')
        self.assertEqual(actual_goods.goodsstocks, int(50),
                         '在庫数の属性が想定(数値)と異なっています。')
        self.assertNotEqual(actual_goods.price, '4500', '価格の属性は文字列ではありません')
        self.assertNotEqual(actual_goods.goodsstocks, '50',
                            '在庫数の属性は文字列ではありません')
예제 #2
0
 def test_is_not_empty(self):
     '''
     1件登録した場合、保存されたレコード数は1件
     '''
     # 各マスタのレコード追加準備
     HighCate = HighCategoryTBL(highcategoryid='category01')
     Cate = CategoryTBL(categoryid='category01A01', highcategoryid=HighCate)
     Goods = GoodsTBL(goodsid='product01S001',
                      productno='product01',
                      sizename='S',
                      colorname='黒',
                      categoryid=Cate,
                      price='4500',
                      goodsstocks='50',
                      salesstartdate='2019-07-29',
                      deleteflag='0')
     # 各マスタのレコード追加
     HighCate.save()
     Cate.save()
     Goods.save()
     # 全件取得
     saved_HighCate = HighCategoryTBL.objects.all()
     saved_Cate = CategoryTBL.objects.all()
     saved_GoodsTBL = GoodsTBL.objects.all()
     # 取得した件数が1件か判定
     self.assertEqual(saved_HighCate.count(), 1)
     self.assertEqual(saved_Cate.count(), 1)
     self.assertEqual(saved_GoodsTBL.count(), 1)
예제 #3
0
def RecordAdd3():
    '''
    商品マスタに1件データを追加する。(論理削除フラグ=1)
    サイズ(L) 、色(赤)
    '''
    Hcate = HighCategoryTBL(highcategoryid='category01', highcategoryname='衣類')
    Cate = CategoryTBL(categoryid='category01A01',
                       categoryname='スカート',
                       highcategoryid=Hcate)
    Goods3 = GoodsTBL(goodsid='product01L003',
                      categoryid=Cate,
                      productno='product01',
                      sizename='L',
                      colorname='赤',
                      price='4500',
                      goodsstocks='0',
                      salesstartdate='2019-07-29',
                      deleteflag='1')
    Goods3.save()
예제 #4
0
def RecordAdd4():
    '''
    商品マスタに1件データを追加する。(販売終了年月日が7月末(終わっている))
    サイズ(S) 、色(赤)
    '''
    Hcate = HighCategoryTBL(highcategoryid='category01', highcategoryname='衣類')
    Cate = CategoryTBL(categoryid='category01A01',
                       categoryname='スカート',
                       highcategoryid=Hcate)
    Goods4 = GoodsTBL(goodsid='product01S003',
                      categoryid=Cate,
                      productno='product01',
                      sizename='S',
                      colorname='赤',
                      price='4500',
                      goodsstocks='0',
                      salesstartdate='2019-07-29',
                      salesenddate='2019-07-31',
                      deleteflag='0')
    Goods4.save()
예제 #5
0
def RecordAdd2():
    '''
    商品マスタに1件データを追加する。
    サイズ(M) 、色(黒)
    '''
    Hcate = HighCategoryTBL(highcategoryid='category01', highcategoryname='衣類')
    Cate = CategoryTBL(categoryid='category01A01',
                       categoryname='スカート',
                       highcategoryid=Hcate)
    Goods2 = GoodsTBL(goodsid='product01M001',
                      categoryid=Cate,
                      productno='product01',
                      sizename='M',
                      colorname='黒',
                      price='4500',
                      goodsstocks='0',
                      salesstartdate='2019-07-29',
                      salesenddate='2020-07-29',
                      deleteflag='0')
    Goods2.save()
예제 #6
0
def RecordAdd():
    '''
    各TBLに1件ずつデータを追加する。
    サイズ(S) 、色(黒)
    '''
    Hcate = HighCategoryTBL(highcategoryid='category01', highcategoryname='衣類')
    Cate = CategoryTBL(categoryid='category01A01',
                       categoryname='スカート',
                       highcategoryid=Hcate)
    Goods1 = GoodsTBL(goodsid='product01S001',
                      categoryid=Cate,
                      productno='product01',
                      sizename='S',
                      colorname='黒',
                      price='4500',
                      goodsstocks='50',
                      salesstartdate='2019-07-29',
                      deleteflag='0')

    Hcate.save()
    Cate.save()
    Goods1.save()
예제 #7
0
    def test_is_duplicate(self):
        '''
        商品IDは異なるが、製品番号、サイズ、色が全て一緒のデータが
        登録できないことを確認
        '''
        # 各マスタのレコード追加準備
        high_cate = HighCategoryTBL(highcategoryid='category01')
        cate = CategoryTBL(categoryid='category01A01',
                           highcategoryid=high_cate)
        goods1 = GoodsTBL(goodsid='product01S001',
                          productno='product01',
                          sizename='S',
                          colorname='黒',
                          categoryid=cate,
                          price='4500',
                          goodsstocks='50',
                          salesstartdate='2019-07-29',
                          deleteflag='0')
        goods2 = GoodsTBL(goodsid='product10S001',
                          productno='product01',
                          sizename='S',
                          colorname='黒',
                          categoryid=cate,
                          price='4500',
                          goodsstocks='50',
                          salesstartdate='2019-07-29',
                          deleteflag='0')
        # 各マスタのレコード追加
        high_cate.save()
        cate.save()
        goods1.save()
        # 商品マスタで、製品番号、サイズ、色がGoods1で定義した値と同等であり、
        # 商品IDのみ異なる場合、レコード作成できるかチェックする。(出来ない想定)
        try:
            with transaction.atomic():
                goods2.save()
        except IntegrityError:  # 重複エラーとなった場合の処理
            pass  # 何もしない

        # 全件取得
        saved_highcate = HighCategoryTBL.objects.all()
        saved_cate = CategoryTBL.objects.all()
        saved_goodstbl = GoodsTBL.objects.all()
        # 取得した件数が1件か判定
        self.assertEqual(saved_highcate.count(), 1, '格納件数が想定と異なっています。')
        self.assertEqual(saved_cate.count(), 1, '格納件数が想定と異なっています。')
        # 重複したデータを追加し用としているが、エラーで追加されていないことをレコード数で確認する。
        self.assertEqual(saved_goodstbl.count(), 1, '格納件数が想定と異なっています。')