github.com/henvic/wedeploycli@v1.7.6-0.20200319005353-3630f582f284/functional/tests/scale.exp (about)

     1  #!/usr/bin/expect
     2  
     3  if { $_mode != "complete" } {
     4    print_msg_stderr "\nSkipping scale tests\n"
     5    return
     6  }
     7  
     8  spawn $env(SHELL)
     9  
    10  Feature: "Scale"
    11  
    12  Scenario: "Configure scale for a service" {
    13    set_user_plan standard
    14  
    15    set scale1 [prefixed_project scale1]
    16    create_project $scale1
    17    create_service $scale1 hosting1
    18    create_service $scale1 hosting2
    19  
    20    send "$::bin scale\r"
    21    expect {
    22      timeout { handle_timeout; break }
    23      "Please*select*a service from the list below"
    24    }
    25    expect {
    26      timeout { handle_timeout; break }
    27      "Type service ID or #"
    28    }
    29    send "hosting1\r"
    30    expect {
    31      timeout { handle_timeout; break }
    32      "Number of instances"
    33    }
    34    send "3\r"
    35    expect {
    36      timeout { handle_timeout; break }
    37      -gl "Scaling service \"*hosting1*\" on project \"*$scale1*\" on * to *3* instances."
    38    }
    39    send "$::bin curl /projects/$scale1/services/hosting1\r"
    40    expect {
    41      timeout { handle_timeout; break }
    42      -gl "\"scale\"*:*3"
    43    }
    44    send "$::bin curl /projects/$scale1/services/hosting2\r"
    45    expect {
    46      timeout { handle_timeout; break }
    47      -gl "\"scale\"*:*1"
    48    }
    49  } { delete_project $scale1 }
    50  
    51  Scenario: "Cannot exceed service quota with scale" {
    52    set scale2 [prefixed_project scale2]
    53    create_project $scale2
    54    create_service $scale2 hosting1
    55  
    56    send "$::bin scale -p $scale2 -s hosting1\r"
    57    expect {
    58      timeout { handle_timeout; break }
    59      "Number of instances"
    60    }
    61    send "22\r"
    62    expect {
    63      timeout { handle_timeout; break }
    64      "You've reached your plan limits"
    65    }
    66    send "$::bin curl /projects/$scale2/services/hosting1\r"
    67    expect {
    68      timeout { handle_timeout; break }
    69      -gl "\"scale\"*:*1"
    70    }
    71  } { delete_project $scale2 }