+ [[false, 'owner_uuid'],
+ [false, []],
+ [false, ''],
+ [true, 'container_uuid'],
+ [true, ['container_uuid']],
+ [true, ['owner_uuid', 'container_uuid'], ['uuid', 'container_uuid', 'state', 'output']],
+ ].each do |check_container_included, include_param, select_param|
+ test "contents, include=#{include_param.inspect}" do
+ authorize_with :active
+ get :contents, params: {
+ :id => users(:active).uuid,
+ :include => include_param,
+ :limit => 1000,
+ :select => select_param,
+ }
+ assert_response 200
+ if include_param.empty?
+ assert_equal false, json_response.include?('included')
+ return
+ end
+ incl = {}
+ json_response['included'].andand.each do |ctr|
+ incl[ctr['uuid']] = ctr
+ end
+ next if !check_container_included
+ checked_crs = 0
+ json_response['items'].each do |item|
+ next if !item['container_uuid']
+ assert_equal item['container_uuid'], incl[item['container_uuid']]['uuid']
+ assert_not_empty incl[item['container_uuid']]['state']
+ checked_crs += 1
+ end
+ assert_operator 0, :<, checked_crs
+ end
+ end
+