私は、文字列を引数として期待し、その文字列がURLのGetパラメータとして設定されているかどうかをチェックし、設定されている場合は、そのパラメータの値。擬似コードのいくつかの並べ替えでは、その関数の
A本当に簡易版は、私はこの機能が異なるURLのために返すかをテストする必要があるジャスミンには、この
function getParameterValueByName(parameterName) {
url = $window.location.href;
if (parameterName is in url) {
return THE VALUE FROM parameterName;
}
}
のように見えます。私は$window.location.href
の異なる値で複数のテストを実行する必要があります。しかし、模擬する方法$window.location.href
?
+++++
私はついにこれを行う方法を見つけました。私はちょうどこのスニペットを追加しなければならなかった。このURLを変更するたびに、新しい記述ブロックが作成されます。
beforeEach(module('myApp', function ($provide) {
$provide.value('$window', {location: {href: 'https://www.example.com?foo=bar&foo2=bar2'}});
}));
'$ window'オブジェクトを作成し、' location'プロパティを追加すると、 href'プロパティを 'location'に設定します。あなたのコードは1つの値しか得られないので、それが存在することを確認する必要があります。次に、関数をテストするために必要な値に値を設定できます。 – GillesC
私はこの権利を理解しているかどうかは分かりませんが、提案したようなオブジェクトを作成するだけで、機能ジャスミン内部でカルマが実行されているlocalhost URLが使用されます。 – mkoala