self.run_cocoapods_scenario

in tasks/e2e.rb [261:290]


    def self.run_cocoapods_scenario(config, template_path)
        
        template_config_path = "#{template_path}.config"
        extra_config = File.exist?(template_config_path) ? JSON.load(File.read(template_config_path)) : {}
        producer_configuration = cocoapods_configuration_string(config, {'mode' => 'producer'}.merge(extra_config))
        consumer_configuration = cocoapods_configuration_string(config, extra_config)
        expectations = build_expectations(template_path)

        puts("****** Scenario: #{template_path}")

        
        pre_producer_setup
        dump_podfile(producer_configuration, template_path)
        puts('Building producer ...')
        Dir.chdir(E2E_COCOAPODS_SAMPLE_DIR) do
            build_project_cocoapods('iphone', 'iOS', CONFIGURATION)
            
            system("#{XCRC_BINARIES}/xcprepare stats --reset --format json")
        end

        
        pre_consumer_setup
        dump_podfile(consumer_configuration, template_path)
        puts('Building consumer ...')
        Dir.chdir(E2E_COCOAPODS_SAMPLE_DIR) do
            build_project_cocoapods('iphone', 'iOS', CONFIGURATION, {'derivedDataPath' => "#{DERIVED_DATA_PATH}_consumer"})
            valide_hit_rate(expectations)
        end
    end