簡単な (一見) 質問 - $resource が実際にそのようにインスタンス化されていることを確認するために、AngularJS コントローラーで簡単な健全性チェックを実行しようとしています。それは大きなアプリですが、例えば:
.factory('AccountSearchService_XHR', ["$resource", function($resource) {
var baseUrl = "http://localhost\\:8081/api/:version/accounts/:accountNumber";
return $resource(baseUrl,
{
version: "@version",
accountNumber: "@accountNumber"
},
{
get: {method: 'GET', isArray: false}
});
}]);
その後、コントローラーで:
$scope.accountObj.currentAccount = AccountSearchService_XHR.get({
version: "v1",
accountNumber: "1234"
},
function(result) {... etc etc});
$scope.accountObj.currentAccount
私のAPIへの呼び出しは正常に機能し、すべてが期待どおりのデータを返します-しかし、呼び出しを行う前にリソースであるかどうかをテストしたいと思い.get
ます(非常に重要な大文字の「R」に注意してください)。
$scope.accountObj.currentAccount
クロム デバッガーでオブジェクトを検査すると、次のようになります。
Resource {accountHolderName: Object, socialSecurityNumer: null, birthDate: "05/14/1965", maritalStatus: ...}
ただし、セットアップが複雑なため、通常のオブジェクトとして上書きされることがありますが ( typeof
return "object"
)、デバッガーで検査すると、Resource
ステータスが失われていることが確認されます。
だから - それが $resource であるかどうかをテストする方法を知っている人はいますか? ほぼtypeof $scope.accountObj.currentAccount
リターンのような"Resource"
?それとも、物事がすべて適切で立派に接続されていることを確認するためのより良いベストプラクティスの方法でしょうか?
検索時に見たすべての SO 記事は、実際の Jasmine テストを中心に展開しています。
前もって感謝します。