Codeception / Codeception/module-soap

Issue in XML parser in SOAP function

オープン
#7 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
PHP
スター
0
フォーク
4
PR マージ指標
30日以内にマージされた PR はありません

説明

If I do:

``` php
$xml = new \Codeception\Util\XmlBuilder();
$xml->name->val('test')->parent()
->catid->val(4);

$I->sendSoapRequest('create', $xml);
```

The soap request works:

```
[Request] test4
```

However if I do:

```
$I->sendSoapRequest('create', 'test4');
```

It says:

```

[PHPUnit_Framework_Exception] DOMDocument::loadXML(): Extra content at the end of the document in Entity, line: 1

```

The problem I think is here: https://github.com/Codeception/Codeception/blob/2.1/src/Codeception/Util/Xml.php#L27-L57

The parser seems able to parse a xml string wrapped in an outer tag ():

`$I->sendSoapRequest('create', 'test4');`

but not like:

`$I->sendSoapRequest('create', 'test4');`

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

Codeception/Util/Xml.php の 27-57 行目から始め、sendSoapRequest が XML 引数をどのように処理するかを追跡してください。兄弟要素で失敗を再現し、ラップされた例と比較してください。ラップされていない name 要素と catid 要素が、DOMDocument のパース例外なしに SOAP リクエストで受け入れられれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
php
領域
api
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。