This package has been deprecated

Author message:

use only mz-mock

mz-mock-decorator
TypeScript icon, indicating that this package has built-in type declarations

1.0.5 • Public • Published
Описание

Библиотека c декоратороми для моков и генераторов Подходит для дебагинга и тестирования

Установка
npm i --save mz-mock-decorator
Пример №1 использования декораторов
  import {MzMock, MzMockObservable, MzMockPromise, MzMockResultTypeEnum, MzMockSimple} from "./@res/mz-mock";
  import {of} from "rxjs";
  
  class Class {
    @MzMockSimple (
      {
        result: 'from simple mock',
        active: true
      }
    )
    private simple (a: any, b: any) {
    return `from result - a = ${a} | b = ${b}`;
    }
    
    @MzMockObservable (
      {
        result: 'from observable mock',
        active: true
      }
    )
    private mockSampleObservable (a: any, b: any) {
    return of(`from result - a = ${a} | b = ${b}`)
    }
    
    @MzMockPromise (
      {
        result: 'from promise mock',
        active: false
      }
    )
    private mockSamplePromise1 (a: any, b: any) {
    return new Promise(
        (resolve) => {
          resolve(`from promise - a = ${a} | b = ${b}`)
        }
    )
    }
    
    
    @MzMock (
      {
        result: 'from promise MzMock',
        active: true,
        type: MzMockResultTypeEnum.promise
      }
    )
    private mockSamplePromise (a: any, b: any) {
    return new Promise(
        (resolve) => {
          resolve(`from MzMock promise - a = ${a} | b = ${b}`)
        }
    )
    }
    
    @MzMock (
      {
        result: (a, b) => `from function MzMock- a = ${a} | b = ${b}`,
        active: false,
        type: MzMockResultTypeEnum.function
      }
    )
    private mockSampleSimple2 (a: any, b: any) {
        return `from function - a = ${a} | b = ${b}`;
    }
    
    
    /*
    * return mock
    * */
    @MzMock(
      {
          type: MzMockResultTypeEnum.simple,
          path: 'mock.test.a',
          result: {mock: {test: { a: 1}}},
          default: 0,
          active: true
      }
    )
    private testFunction ()
    {
        return 'from real 1';
    }
  }
Пример №2 использования генераторов для моков
import {MzMockGenerator} from "./@res/mz-mock";

export const names = [
    'Амирхан',
    'Муса',
    'Адам',
    'Сайхан',
    'Абдуллах',
    'Зураб',
    'Тони',
    'Джони деп',
    'Капитан америка',
    'Сайфуллахь',
    'Джарвис',
    'Убайд',
    'Хизир',
    'Муслим',
    'Азнаур',
    'Зина',
    'Залина',
    'Марина',
    'Екатенира',
    'Света',
    'Фатима',
];

const surnames = [
    'Aliev',
    'Magomadov',
    'Abdulaev'
]

const mzMockGenerator = new MzMockGenerator(
    {
        default: names,
        surnames: surnames,

    }
);

const testObject = {
    id: 1,
    appsTitle: 'Apps',
    appItems: mzMockGenerator.getObjectWithRandomParams<any>(
        {
            /* get random number with default params from 1 to 1000 */
            randomNumber: '__random-number__',
            /* get random number with specific min and max params */
            randomNumberWithMinAndMax: '__random-number(9999, 99999)__',
            /* get index */
            index: '__idx__',
            /* get index with increment 1 */
            number: '__idx(1)__',
            appImg: '__icon-url__',
            /* get random element from default box */
            appName: '__box__',
            /* get random element from surnames box */
            surname: '__box(surnames)__',
            testKey: 'abdullakh',
            selected: false,
        },
        20
    ),
};

Результат примера №2

{
  randomNumber: 225,
  randomNumberWithMinAndMax: 66116,
  index: 0,
  number: 1,
  appImg: 'https://i.pravatar.cc/300?img=30',
  appName: 'Екатенира',
  surname: 'Magomadov',
  testKey: 'abdullakh',
  selected: false
},
{
  randomNumber: 313,
  randomNumberWithMinAndMax: 57895,
  index: 1,
  number: 2,
  appImg: 'https://i.pravatar.cc/300?img=11',
  appName: 'Муслим',
  surname: 'Magomadov',
  testKey: 'abdullakh',
  selected: false
},

Readme

Keywords

none

Package Sidebar

Install

npm i mz-mock-decorator

Weekly Downloads

0

Version

1.0.5

License

ISC

Unpacked Size

40.6 kB

Total Files

29

Last publish

Collaborators

  • zurab