# NodePackageAssetFile
require 'asset_ingester/asset_type/base_asset_type'
require 'asset_ingester/helpers/github_asset_type_helpers'
module AssetIngester
module AssetType
class NodePackage < BaseAssetType
def self.asset_type
'node_package'
end
def self.search_terms
["'registry' in:file filename:.npmrc "]
end
# Public: Retrieves all node package assets from Github
#
# Returns an array of github asset objects sorted by full name
def self.assets
Helpers::GithubAssetTypeHelpers.assets(asset_type, search_terms)
end
end
end
end
# Rspec I tried for asset method
describe '#assets' do
let(:nodePackage) do
[id: 131690,
name: 'acm-care-management-js',
full_name: 'AcuteCaseManagementUI/acm-care-management-js',
owner_name: 'AcuteCaseManagementUI',
owner_url: 'https://github.cerner.com/api/v3/users/AcuteCaseManagementUI',
owner_avatar_url: 'https://avatars.github.cerner.com/u/4095?',
url: 'https://github.cerner.com/api/v3/repos/AcuteCaseManagementUI/acm-
care-management-js',
html_url: 'https://github.cerner.com/AcuteCaseManagementUI/acm-care-management-js',
asset_type: 'node_package']
end
it 'returns the node package assets' do
allow(AssetIngester::Helpers::GithubAssetTypeHelpers).to receive(:assets).with('node_package',["'registry' in:file filename:.npmrc "]).and_return(nodePackage)
key = AssetIngester::AssetType::NodePackage.assets
expect(key).to eq(nodePackage)
end
end
Я пытался протестировать метод ресурсов таким способом. Тест проходит, но я хочу знать, является ли это правильным способом сделать это. Если этот подход полностью неверен, пожалуйста, предложите правильный способ сделать это. Я попытался использовать RSpe c -Stub для проверки метода активов класса NodePackage.