semvec/pypi-packages huggingface dataset:
swaggertest 0.1.1
Test your swagger spec

# Swaggertest

This is a very simple tool which tests swagger (OpenAPI) 
specifications. In particular, it checks the schemas provided
in the 'components/schemas' section of the document against
any examples provided along with the schemas.

## Installation

```bash
$ pip install swaggertest
```

## Usage

```bash
$ swaggertest --help
usage: swaggertest [--version] [-v | -q] [--log-file LOG_FILE] [-h] [--debug]
[--pdb]

Swagger testing tool

optional arguments:
  --version            show program's version number and exit
  -v, --verbose        Increase verbosity of output. Can be repeated.
  -q, --quiet          Suppress output except warnings and errors.
  --log-file LOG_FILE  Specify a file to log output. Disabled by default.
  -h, --help           Show help message and exit.
  --debug              Show tracebacks on errors.
  --pdb

Commands:
  complete       print bash completion command (cliff)
  help           print detailed help for another command (cliff)
  test-schemas   Validate examples against schemas
```

The main sub-command is `test-schemas`:

```bash
$ swaggertest help test-schemas
usage: swaggertest test-schemas [-h] [-d] [-p PATH] [-s] filename

Validate examples against schemas

positional arguments:
  filename

optional arguments:
  -h, --help            show this help message and exit
  -d, --detail
  -p PATH, --path PATH  Path to where the schemas are located
  -s, --strict          Default to 'allowExtraProperties: false'
```

To test a spec, just provide it as the `filename` argument. You can also
provide a path argument to specify where the schemas are to be found:

```bash
$ swaggertest test petstore.json --path '/definitions' --detail --strict
Validated 6 schemas:
  - 0 had errors
```
exchangelib-listener 1.1.1
Simple inbox event listener for exchangelib.
Requires Python: >=3.8

Inbox event listener for exchangelib
====================================
This library listens for events in the inbox and raises an event.

## Usage
Create listener:
```python
from exchangelib import DELEGATE, Account, Credentials, Configuration
from exchangelib.properties import NewMailEvent, MovedEvent
from exchangelib_listener import Listener

creds = Credentials(
    username='EMAIL_ADDRESS',
    password='PASSWORD'
)
config = Configuration(
    server='SERVER',
    credentials=creds
)
acct = Account(
    primary_smtp_address='EMAIL_ADDRESS',
    config=config,
    access_type=DELEGATE
)

listener = Listener(acct)
```

Create a method to call when events are raised:
```python
def events_received(events):
    for event in events:
        if isinstance(event, NewMailEvent):
            # Do something
        elif isinstance(event, MovedEvent):
            # Do something

listener.streaming_events_received += events_received
listener.listen()
```

Or receive a single event:
```python
def new_messaged_received():
    # Do something

listener.streaming_event_received += new_messaged_received
listener.listen(NewMailEvent)
```
pyTape 0.0.6
Tape
Requires Python: >=3.6

## pyTape

-----

“pyTape”模块加入了一个叫做“Tape”的数据类型，“Tape”包含了一条很长的“带子”用来记录信息，另外还有一枚“指针”指向带子上面任意的位置，操作上面的数据。

这个模块原来是为上课的时候摸鱼，尝试brainfxxk这样思路清奇语法有趣的语言而准备的。~~使用方法“exce()”开启新世界。~~



### 安装与使用

-----

```pip install pyTape``` 或者进入dist目录直接选择whl安装

导入模块使用```from pyTape import pyTape```或者可以为了使用方便，写成```from pyTape import pyTape as pt```

script/dist目录下有两个文件，可以在windows或linux环境中执行一些brainfxxk指令。

> 使用方法：```cpl {文件名} {文件名}```

接受若干个文件名作为参数，此时，这些文件里储存的brainfxxk指令将逐条地在命令行里执行

若没有提供任何文件名，cpl则会开始交互式brainfxxk编程，用“q”或“exit()”退出



### 关于列表的操作

-----

记录信息的“带子”用一个列表实现，截取列表里面的某一段信息可以使用这样的表达:

> ```{实例名}[下标]``` =等同于= ```{实例名}.reg[下标]```

获取列表里所含元素的数量可以使用这样的表达:

> ```len({实例名})``` =等同于= ```len({实例名}.reg)```

输出列表可以使用这样的表达:

> ```print({实例名})``` =等同于= ```print({实例名}.reg)```

列表里面最小的元素值为0，类型全部为整数，也就是说列表里不会出现负数，只会出现正整数。



### exce()实现brainfxxk语法

-----

~~exce()需要两个参数，其中一个是self~~，另外一个参数作为brainfxxk指令，以字符串的形式传递，如：

> ```{实例名}.exce(<brainfxxk指令>)```或者```{实例名}(<brainfxxk指令>)```



### 关于brainfxxk指令

-----

这个模块暂时只支持```+ - < > [ ] , .```几种运算

#### 运算符"+"

使指针所指元素的值+1

#### 运算符"-"

使指针所指元素的值-1

#### 运算符"<"

指针指向左边一个元素

#### 运算符">"

指针指向右边一个元素

#### 运算符"["与"]"

两个中括号括起来的运算作为循环体，指针所指元素作为while循环的条件

#### 运算符","

请求一个输入，覆盖指针所指元素原来的值

#### 运算符"."

将指针所指元素转换成字符类型输出



### 其他操作

-----

#### 运算符"("与")"

用括号括起来的部分循环n遍，n作为一个正整数紧贴在左边的括号外

> 如```+>+>+>```可以写成```3(+>)```

若需要循环的部分为单个运算符（"("除外），则可以直接省略括号

> 如```+++```可以写成```3+```

#### 运算符"?"

输出一个整数，指针指向元素的下标

#### 运算符"&"

输出一个整数，指针所指元素的值

#### 运算符"*"

重置列表

#### 运算符"!"

将指针指向元素的值为n，则将指针重新指向列表中下标为n的元素

#### Tape的加法

加法符号左右必须都是Tape类型数据，加法的结果为两个列表的元素各自相加

#### Tape的减法

减法符号两边必须是Tape类型数据，左边为被减数右边为减数，结果是两个列表的元素各自相减取绝对值(因为列表里面不能存在负数)

#### Tape的乘法

乘法符号左右必须都是Tape类型数据，结果为两个列表的元素各自相乘

#### Tape的除法

除法符号两边必须是Tape类型数据，左边为被除数右边为除数，结果是两个列表的元素各自相除取整(因为列表里面只能有正整数)

#### Tape取模

%两边必须是Tape类型数据，左边为被除数右边为除数，结果是两个列表的元素各自取模



#### 更新

----

##### 0.0.5

调整了运算符"[]","]"使循环嵌套可能

改掉一些小问题