_acs-tcl__files__check_info_files (private)

 _acs-tcl__files__check_info_files

Defined in packages/acs-tcl/tcl/test/file-test-procs.tcl

Partial Call Graph (max 5 caller/called nodes):
%3 aa_log aa_log (public) aa_log_result aa_log_result (public) apm_package_installed_p apm_package_installed_p (public) apm_read_package_info_file apm_read_package_info_file (public) _acs-tcl__files__check_info_files _acs-tcl__files__check_info_files _acs-tcl__files__check_info_files->aa_log _acs-tcl__files__check_info_files->aa_log_result _acs-tcl__files__check_info_files->apm_package_installed_p _acs-tcl__files__check_info_files->apm_read_package_info_file

Testcases:
No testcase defined.
Source code:
        
        set _aa_export {}
        set body_count 1
        foreach testcase_body {{
    foreach spec_file [glob -nocomplain "$::acs::rootdir/packages/*/*.info"] {
        set errp 0
        if {  [catch {array set version [apm_read_package_info_file $spec_file]} errMsg] } {
            aa_log_result fail "$spec_file returned $errMsg"
            set errp 1
        } else {
            # Skip uninstalled packages
            if {![apm_package_installed_p $version(package.key)]} {
                continue
            }
            regexp {packages/([^/]*)/} $spec_file match key
            if {$version(package.key) ne $key } {
                aa_log_result fail "MISMATCH DIRECTORY/PACKAGE KEY: $spec_file $version(package.key) != $key"
                set errp 1
            }
            # check on the requires, provides, etc stuff.
            if {$version(provides) eq ""
                && [string equal $version(package.type) apm_service] } {
                aa_log_result fail "$spec_file SERVICE MISSING PROVIDES: $key"
                set errp 1
            } elseif$version(provides) ne ""} {
                if { $version(name) ne [lindex $version(provides) 0 1] } {
                    aa_log_result fail "$spec_file: MISMATCH PROVIDES VERSION: $version(provides) $version(name)"
                    set errp 1
                }
                if { $key ne [lindex $version(provides) 0 0] } {
                    aa_log_result fail "$spec_file MISMATCH PROVIDES KEY: $key $version(provides)"
                    set errp 1
                }
            }

            # check for duplicate parameters
            array unset params
            foreach param $version(parameters) {
                set name [lindex $param 0]
                if {[info exists params($name)]} {
                    aa_log_result fail "$spec_file: DUPLICATE PARAMETER: $name"
                    set errp 1
                }
                set params($name$name
            }
        }
        if {!$errp} {
            aa_log_result pass "$spec_file no errors"
        }
    }
}} {
          aa_log "Running testcase body $body_count"
          set ::__aa_test_indent [info level]
          set catch_val [catch $testcase_body msg]
          if {$catch_val != 0 && $catch_val != 2} {
              aa_log_result "fail" "files__check_info_files (body $body_count): Error during execution: $msg, stack trace: \n$::errorInfo"
          }
          incr body_count
        }
XQL Not present:
Generic, PostgreSQL, Oracle
[ hide source ] | [ make this the default ]
Show another procedure: