當前位置: 首頁>>代碼示例>>Golang>>正文


Golang aws.String函數代碼示例

本文整理匯總了Golang中github.com/rlister/let-me-in/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws.String函數的典型用法代碼示例。如果您正苦於以下問題:Golang String函數的具體用法?Golang String怎麽用?Golang String使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了String函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: TestInputService6ProtocolTestListWithLocationNameAndQueryNameCase1

func TestInputService6ProtocolTestListWithLocationNameAndQueryNameCase1(t *testing.T) {
    svc := NewInputService6ProtocolTest(nil)
    svc.Endpoint = "https://test"

    input := &InputService6TestShapeInputService6TestCaseOperation1Input{
        ListArg: []*string{
            aws.String("a"),
            aws.String("b"),
            aws.String("c"),
        },
    }
    req, _ := svc.InputService6TestCaseOperation1Request(input)
    r := req.HTTPRequest

    // build request
    ec2query.Build(req)
    assert.NoError(t, req.Error)

    // assert body
    assert.NotNil(t, r.Body)
    body, _ := ioutil.ReadAll(r.Body)
    assert.Equal(t, util.Trim(`Action=OperationName&ListQueryName.1=a&ListQueryName.2=b&ListQueryName.3=c&Version=2014-01-01`), util.Trim(string(body)))

    // assert URL
    assert.Equal(t, "https://test/", r.URL.String())

    // assert headers

}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:29,代碼來源:build_test.go

示例2: TestPresignHandler

func TestPresignHandler(t *testing.T) {
    svc := s3.New(nil)
    req, _ := svc.PutObjectRequest(&s3.PutObjectInput{
        Bucket:             aws.String("bucket"),
        Key:                aws.String("key"),
        ContentDisposition: aws.String("a+b c$d"),
        ACL:                aws.String("public-read"),
    })
    req.Time = time.Unix(0, 0)
    urlstr, err := req.Presign(5 * time.Minute)

    assert.NoError(t, err)

    expectedDate := "19700101T000000Z"
    expectedHeaders := "host;x-amz-acl"
    expectedSig := "7edcb4e3a1bf12f4989018d75acbe3a7f03df24bd6f3112602d59fc551f0e4e2"
    expectedCred := "AKID/19700101/mock-region/s3/aws4_request"

    u, _ := url.Parse(urlstr)
    urlQ := u.Query()
    assert.Equal(t, expectedSig, urlQ.Get("X-Amz-Signature"))
    assert.Equal(t, expectedCred, urlQ.Get("X-Amz-Credential"))
    assert.Equal(t, expectedHeaders, urlQ.Get("X-Amz-SignedHeaders"))
    assert.Equal(t, expectedDate, urlQ.Get("X-Amz-Date"))
    assert.Equal(t, "300", urlQ.Get("X-Amz-Expires"))

    assert.NotContains(t, urlstr, "+") // + encoded as %20
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:28,代碼來源:functional_test.go

示例3: getGroupIds

// convert group names to ids, which are needed for vpcs
func getGroupIds(client *ec2.EC2, names []string) []*string {

    // get names as array of aws.String objects
    values := make([]*string, len(names))
    for i, name := range names {
        values[i] = aws.String(name)
    }

    // request params as filter for names
    params := &ec2.DescribeSecurityGroupsInput{
        Filters: []*ec2.Filter{
            {
                Name:   aws.String("group-name"),
                Values: values,
            },
        },
    }

    // send request
    resp, err := client.DescribeSecurityGroups(params)
    check(err)

    // return ids
    for i, group := range resp.SecurityGroups {
        values[i] = group.GroupId
    }

    return values
}
開發者ID:venkateshdaram434,項目名稱:let-me-in,代碼行數:30,代碼來源:let-me-in.go

示例4: TestInputService2ProtocolTestStructureWithLocationNameAndQueryNameAppliedToMembersCase1

func TestInputService2ProtocolTestStructureWithLocationNameAndQueryNameAppliedToMembersCase1(t *testing.T) {
    svc := NewInputService2ProtocolTest(nil)
    svc.Endpoint = "https://test"

    input := &InputService2TestShapeInputService2TestCaseOperation1Input{
        Bar:  aws.String("val2"),
        Foo:  aws.String("val1"),
        Yuck: aws.String("val3"),
    }
    req, _ := svc.InputService2TestCaseOperation1Request(input)
    r := req.HTTPRequest

    // build request
    ec2query.Build(req)
    assert.NoError(t, req.Error)

    // assert body
    assert.NotNil(t, r.Body)
    body, _ := ioutil.ReadAll(r.Body)
    assert.Equal(t, util.Trim(`Action=OperationName&BarLocationName=val2&Foo=val1&Version=2014-01-01&yuckQueryName=val3`), util.Trim(string(body)))

    // assert URL
    assert.Equal(t, "https://test/", r.URL.String())

    // assert headers

}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:27,代碼來源:build_test.go

示例5: TestPaginationEachPage

// Use DynamoDB methods for simplicity
func TestPaginationEachPage(t *testing.T) {
    db := dynamodb.New(nil)
    tokens, pages, numPages, gotToEnd := []string{}, []string{}, 0, false

    reqNum := 0
    resps := []*dynamodb.ListTablesOutput{
        {TableNames: []*string{aws.String("Table1"), aws.String("Table2")}, LastEvaluatedTableName: aws.String("Table2")},
        {TableNames: []*string{aws.String("Table3"), aws.String("Table4")}, LastEvaluatedTableName: aws.String("Table4")},
        {TableNames: []*string{aws.String("Table5")}},
    }

    db.Handlers.Send.Clear() // mock sending
    db.Handlers.Unmarshal.Clear()
    db.Handlers.UnmarshalMeta.Clear()
    db.Handlers.ValidateResponse.Clear()
    db.Handlers.Build.PushBack(func(r *request.Request) {
        in := r.Params.(*dynamodb.ListTablesInput)
        if in == nil {
            tokens = append(tokens, "")
        } else if in.ExclusiveStartTableName != nil {
            tokens = append(tokens, *in.ExclusiveStartTableName)
        }
    })
    db.Handlers.Unmarshal.PushBack(func(r *request.Request) {
        r.Data = resps[reqNum]
        reqNum++
    })

    params := &dynamodb.ListTablesInput{Limit: aws.Int64(2)}
    req, _ := db.ListTablesRequest(params)
    err := req.EachPage(func(p interface{}, last bool) bool {
        numPages++
        for _, t := range p.(*dynamodb.ListTablesOutput).TableNames {
            pages = append(pages, *t)
        }
        if last {
            if gotToEnd {
                assert.Fail(t, "last=true happened twice")
            }
            gotToEnd = true
        }

        return true
    })

    assert.Equal(t, []string{"Table2", "Table4"}, tokens)
    assert.Equal(t, []string{"Table1", "Table2", "Table3", "Table4", "Table5"}, pages)
    assert.Equal(t, 3, numPages)
    assert.True(t, gotToEnd)
    assert.Nil(t, err)
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:52,代碼來源:request_pagination_test.go

示例6: TestNoErrors

func TestNoErrors(t *testing.T) {
    input := &StructShape{
        RequiredList: []*ConditionalStructShape{},
        RequiredMap: map[string]*ConditionalStructShape{
            "key1": {Name: aws.String("Name")},
            "key2": {Name: aws.String("Name")},
        },
        RequiredBool:   aws.Bool(true),
        OptionalStruct: &ConditionalStructShape{Name: aws.String("Name")},
    }

    req := testSvc.NewRequest(&request.Operation{}, input, nil)
    corehandlers.ValidateParametersHandler.Fn(req)
    assert.NoError(t, req.Error)
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:15,代碼來源:param_validator_test.go

示例7: TestEC2RoleProviderExpiryWindowIsExpired

func TestEC2RoleProviderExpiryWindowIsExpired(t *testing.T) {
    server := initTestServer("2014-12-16T01:51:37Z", false)
    defer server.Close()

    p := &ec2rolecreds.EC2RoleProvider{
        Client:       ec2metadata.New(&ec2metadata.Config{Endpoint: aws.String(server.URL + "/latest")}),
        ExpiryWindow: time.Hour * 1,
    }
    p.CurrentTime = func() time.Time {
        return time.Date(2014, 12, 15, 0, 51, 37, 0, time.UTC)
    }

    assert.True(t, p.IsExpired(), "Expect creds to be expired before retrieve.")

    _, err := p.Retrieve()
    assert.Nil(t, err, "Expect no error")

    assert.False(t, p.IsExpired(), "Expect creds to not be expired after retrieve.")

    p.CurrentTime = func() time.Time {
        return time.Date(2014, 12, 16, 0, 55, 37, 0, time.UTC)
    }

    assert.True(t, p.IsExpired(), "Expect creds to be expired.")
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:25,代碼來源:ec2_role_provider_test.go

示例8: TestInputService3ProtocolTestNestedStructureMembersCase1

func TestInputService3ProtocolTestNestedStructureMembersCase1(t *testing.T) {
    svc := NewInputService3ProtocolTest(nil)
    svc.Endpoint = "https://test"

    input := &InputService3TestShapeInputService3TestCaseOperation1Input{
        StructArg: &InputService3TestShapeStructType{
            ScalarArg: aws.String("foo"),
        },
    }
    req, _ := svc.InputService3TestCaseOperation1Request(input)
    r := req.HTTPRequest

    // build request
    ec2query.Build(req)
    assert.NoError(t, req.Error)

    // assert body
    assert.NotNil(t, r.Body)
    body, _ := ioutil.ReadAll(r.Body)
    assert.Equal(t, util.Trim(`Action=OperationName&Struct.Scalar=foo&Version=2014-01-01`), util.Trim(string(body)))

    // assert URL
    assert.Equal(t, "https://test/", r.URL.String())

    // assert headers

}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:27,代碼來源:build_test.go

示例9: TestPaginationTruncation

// Use S3 for simplicity
func TestPaginationTruncation(t *testing.T) {
    count := 0
    client := s3.New(nil)

    reqNum := &count
    resps := []*s3.ListObjectsOutput{
        {IsTruncated: aws.Bool(true), Contents: []*s3.Object{{Key: aws.String("Key1")}}},
        {IsTruncated: aws.Bool(true), Contents: []*s3.Object{{Key: aws.String("Key2")}}},
        {IsTruncated: aws.Bool(false), Contents: []*s3.Object{{Key: aws.String("Key3")}}},
        {IsTruncated: aws.Bool(true), Contents: []*s3.Object{{Key: aws.String("Key4")}}},
    }

    client.Handlers.Send.Clear() // mock sending
    client.Handlers.Unmarshal.Clear()
    client.Handlers.UnmarshalMeta.Clear()
    client.Handlers.ValidateResponse.Clear()
    client.Handlers.Unmarshal.PushBack(func(r *request.Request) {
        r.Data = resps[*reqNum]
        *reqNum++
    })

    params := &s3.ListObjectsInput{Bucket: aws.String("bucket")}

    results := []string{}
    err := client.ListObjectsPages(params, func(p *s3.ListObjectsOutput, last bool) bool {
        results = append(results, *p.Contents[0].Key)
        return true
    })

    assert.Equal(t, []string{"Key1", "Key2", "Key3"}, results)
    assert.Nil(t, err)

    // Try again without truncation token at all
    count = 0
    resps[1].IsTruncated = nil
    resps[2].IsTruncated = aws.Bool(true)
    results = []string{}
    err = client.ListObjectsPages(params, func(p *s3.ListObjectsOutput, last bool) bool {
        results = append(results, *p.Contents[0].Key)
        return true
    })

    assert.Equal(t, []string{"Key1", "Key2"}, results)
    assert.Nil(t, err)

}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:47,代碼來源:request_pagination_test.go

示例10: revokeGroup

// revoke permission from security group
func revokeGroup(client *ec2.EC2, id *string, protocol *string, port *int, cidr *string) {

    // make the request
    params := &ec2.RevokeSecurityGroupIngressInput{
        GroupId:    aws.String(*id),
        IpProtocol: aws.String(*protocol),
        FromPort:   aws.Int64(int64(*port)),
        ToPort:     aws.Int64(int64(*port)),
        CidrIp:     aws.String(*cidr),
    }

    _, err := client.RevokeSecurityGroupIngress(params)

    // be idempotent, i.e. skip error if this permission does not exist in group
    if err != nil {
        if err.(awserr.Error).Code() != "InvalidPermission.NotFound" {
            panic(err)
        }
    }
}
開發者ID:venkateshdaram434,項目名稱:let-me-in,代碼行數:21,代碼來源:let-me-in.go

示例11: TestMetadataAvailable

func TestMetadataAvailable(t *testing.T) {
    server := initTestServer(
        "/latest/meta-data/instance-id",
        "instance-id",
    )
    defer server.Close()
    c := ec2metadata.New(&ec2metadata.Config{Endpoint: aws.String(server.URL + "/latest")})

    available := c.Available()

    assert.True(t, available)
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:12,代碼來源:api_test.go

示例12: TestCopySnapshotPresignedURL

func TestCopySnapshotPresignedURL(t *testing.T) {
    svc := ec2.New(&aws.Config{Region: aws.String("us-west-2")})

    assert.NotPanics(t, func() {
        // Doesn't panic on nil input
        req, _ := svc.CopySnapshotRequest(nil)
        req.Sign()
    })

    req, _ := svc.CopySnapshotRequest(&ec2.CopySnapshotInput{
        SourceRegion:     aws.String("us-west-1"),
        SourceSnapshotId: aws.String("snap-id"),
    })
    req.Sign()

    b, _ := ioutil.ReadAll(req.HTTPRequest.Body)
    q, _ := url.ParseQuery(string(b))
    url, _ := url.QueryUnescape(q.Get("PresignedUrl"))
    assert.Equal(t, "us-west-2", q.Get("DestinationRegion"))
    assert.Regexp(t, `^https://ec2\.us-west-1\.amazon.+&DestinationRegion=us-west-2`, url)
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:21,代碼來源:customizations_test.go

示例13: TestGetMetadata

func TestGetMetadata(t *testing.T) {
    server := initTestServer(
        "/latest/meta-data/some/path",
        "success", // real response includes suffix
    )
    defer server.Close()
    c := ec2metadata.New(&ec2metadata.Config{Endpoint: aws.String(server.URL + "/latest")})

    resp, err := c.GetMetadata("some/path")

    assert.NoError(t, err)
    assert.Equal(t, "success", resp)
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:13,代碼來源:api_test.go

示例14: TestGetRegion

func TestGetRegion(t *testing.T) {
    server := initTestServer(
        "/latest/meta-data/placement/availability-zone",
        "us-west-2a", // real response includes suffix
    )
    defer server.Close()
    c := ec2metadata.New(&ec2metadata.Config{Endpoint: aws.String(server.URL + "/latest")})

    region, err := c.Region()

    assert.NoError(t, err)
    assert.Equal(t, "us-west-2", region)
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:13,代碼來源:api_test.go

示例15: TestPaginationEarlyExit

// Use DynamoDB methods for simplicity
func TestPaginationEarlyExit(t *testing.T) {
    db := dynamodb.New(nil)
    numPages, gotToEnd := 0, false

    reqNum := 0
    resps := []*dynamodb.ListTablesOutput{
        {TableNames: []*string{aws.String("Table1"), aws.String("Table2")}, LastEvaluatedTableName: aws.String("Table2")},
        {TableNames: []*string{aws.String("Table3"), aws.String("Table4")}, LastEvaluatedTableName: aws.String("Table4")},
        {TableNames: []*string{aws.String("Table5")}},
    }

    db.Handlers.Send.Clear() // mock sending
    db.Handlers.Unmarshal.Clear()
    db.Handlers.UnmarshalMeta.Clear()
    db.Handlers.ValidateResponse.Clear()
    db.Handlers.Unmarshal.PushBack(func(r *request.Request) {
        r.Data = resps[reqNum]
        reqNum++
    })

    params := &dynamodb.ListTablesInput{Limit: aws.Int64(2)}
    err := db.ListTablesPages(params, func(p *dynamodb.ListTablesOutput, last bool) bool {
        numPages++
        if numPages == 2 {
            return false
        }
        if last {
            if gotToEnd {
                assert.Fail(t, "last=true happened twice")
            }
            gotToEnd = true
        }
        return true
    })

    assert.Equal(t, 2, numPages)
    assert.False(t, gotToEnd)
    assert.Nil(t, err)
}
開發者ID:rlister,項目名稱:let-me-in,代碼行數:40,代碼來源:request_pagination_test.go


注:本文中的github.com/rlister/let-me-in/Godeps/_workspace/src/github.com/aws/aws-sdk-go/aws.String函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。