[#307] v2/container/test: Do not allocate memory if `!empty`

Move all memory allocation and field settings
in `Generate...(empty bool)` functions behind
`if !empty` check. Do not create empty slices
if `empty == true`.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
remotes/KirillovDenis/feature/refactor-sig-rpc
Pavel Karpy 2021-06-11 15:17:09 +03:00 committed by Alex Vanin
parent 772c8be200
commit 44dafcf0e5
1 changed files with 110 additions and 35 deletions

View File

@ -19,7 +19,9 @@ func GenerateAttribute(empty bool) *container.Attribute {
return m return m
} }
func GenerateAttributes(empty bool) (res []*container.Attribute) { func GenerateAttributes(empty bool) []*container.Attribute {
var res []*container.Attribute
if !empty { if !empty {
res = append(res, res = append(res,
GenerateAttribute(false), GenerateAttribute(false),
@ -27,7 +29,7 @@ func GenerateAttributes(empty bool) (res []*container.Attribute) {
) )
} }
return return res
} }
func GenerateContainer(empty bool) *container.Container { func GenerateContainer(empty bool) *container.Container {
@ -36,12 +38,12 @@ func GenerateContainer(empty bool) *container.Container {
if !empty { if !empty {
m.SetBasicACL(12) m.SetBasicACL(12)
m.SetNonce([]byte{1, 2, 3}) m.SetNonce([]byte{1, 2, 3})
m.SetOwnerID(refstest.GenerateOwnerID(false))
m.SetAttributes(GenerateAttributes(false))
m.SetPlacementPolicy(netmaptest.GeneratePlacementPolicy(false))
} }
m.SetOwnerID(refstest.GenerateOwnerID(empty))
m.SetVersion(refstest.GenerateVersion(empty)) m.SetVersion(refstest.GenerateVersion(empty))
m.SetAttributes(GenerateAttributes(empty))
m.SetPlacementPolicy(netmaptest.GeneratePlacementPolicy(empty))
return m return m
} }
@ -49,7 +51,10 @@ func GenerateContainer(empty bool) *container.Container {
func GeneratePutRequestBody(empty bool) *container.PutRequestBody { func GeneratePutRequestBody(empty bool) *container.PutRequestBody {
m := new(container.PutRequestBody) m := new(container.PutRequestBody)
m.SetContainer(GenerateContainer(empty)) if !empty {
m.SetContainer(GenerateContainer(false))
}
m.SetSignature(refstest.GenerateSignature(empty)) m.SetSignature(refstest.GenerateSignature(empty))
return m return m
@ -58,7 +63,10 @@ func GeneratePutRequestBody(empty bool) *container.PutRequestBody {
func GeneratePutRequest(empty bool) *container.PutRequest { func GeneratePutRequest(empty bool) *container.PutRequest {
m := new(container.PutRequest) m := new(container.PutRequest)
m.SetBody(GeneratePutRequestBody(empty)) if !empty {
m.SetBody(GeneratePutRequestBody(false))
}
m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty))
@ -68,7 +76,9 @@ func GeneratePutRequest(empty bool) *container.PutRequest {
func GeneratePutResponseBody(empty bool) *container.PutResponseBody { func GeneratePutResponseBody(empty bool) *container.PutResponseBody {
m := new(container.PutResponseBody) m := new(container.PutResponseBody)
m.SetContainerID(refstest.GenerateContainerID(empty)) if !empty {
m.SetContainerID(refstest.GenerateContainerID(false))
}
return m return m
} }
@ -76,7 +86,10 @@ func GeneratePutResponseBody(empty bool) *container.PutResponseBody {
func GeneratePutResponse(empty bool) *container.PutResponse { func GeneratePutResponse(empty bool) *container.PutResponse {
m := new(container.PutResponse) m := new(container.PutResponse)
m.SetBody(GeneratePutResponseBody(empty)) if !empty {
m.SetBody(GeneratePutResponseBody(false))
}
m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty))
@ -86,7 +99,9 @@ func GeneratePutResponse(empty bool) *container.PutResponse {
func GenerateGetRequestBody(empty bool) *container.GetRequestBody { func GenerateGetRequestBody(empty bool) *container.GetRequestBody {
m := new(container.GetRequestBody) m := new(container.GetRequestBody)
m.SetContainerID(refstest.GenerateContainerID(empty)) if !empty {
m.SetContainerID(refstest.GenerateContainerID(false))
}
return m return m
} }
@ -94,7 +109,10 @@ func GenerateGetRequestBody(empty bool) *container.GetRequestBody {
func GenerateGetRequest(empty bool) *container.GetRequest { func GenerateGetRequest(empty bool) *container.GetRequest {
m := new(container.GetRequest) m := new(container.GetRequest)
m.SetBody(GenerateGetRequestBody(empty)) if !empty {
m.SetBody(GenerateGetRequestBody(false))
}
m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty))
@ -104,7 +122,10 @@ func GenerateGetRequest(empty bool) *container.GetRequest {
func GenerateGetResponseBody(empty bool) *container.GetResponseBody { func GenerateGetResponseBody(empty bool) *container.GetResponseBody {
m := new(container.GetResponseBody) m := new(container.GetResponseBody)
m.SetContainer(GenerateContainer(empty)) if !empty {
m.SetContainer(GenerateContainer(false))
}
m.SetSignature(refstest.GenerateSignature(empty)) m.SetSignature(refstest.GenerateSignature(empty))
m.SetSessionToken(sessiontest.GenerateSessionToken(empty)) m.SetSessionToken(sessiontest.GenerateSessionToken(empty))
@ -114,7 +135,10 @@ func GenerateGetResponseBody(empty bool) *container.GetResponseBody {
func GenerateGetResponse(empty bool) *container.GetResponse { func GenerateGetResponse(empty bool) *container.GetResponse {
m := new(container.GetResponse) m := new(container.GetResponse)
m.SetBody(GenerateGetResponseBody(empty)) if !empty {
m.SetBody(GenerateGetResponseBody(false))
}
m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty))
@ -124,7 +148,10 @@ func GenerateGetResponse(empty bool) *container.GetResponse {
func GenerateDeleteRequestBody(empty bool) *container.DeleteRequestBody { func GenerateDeleteRequestBody(empty bool) *container.DeleteRequestBody {
m := new(container.DeleteRequestBody) m := new(container.DeleteRequestBody)
m.SetContainerID(refstest.GenerateContainerID(empty)) if !empty {
m.SetContainerID(refstest.GenerateContainerID(false))
}
m.SetSignature(refstest.GenerateSignature(empty)) m.SetSignature(refstest.GenerateSignature(empty))
return m return m
@ -133,7 +160,10 @@ func GenerateDeleteRequestBody(empty bool) *container.DeleteRequestBody {
func GenerateDeleteRequest(empty bool) *container.DeleteRequest { func GenerateDeleteRequest(empty bool) *container.DeleteRequest {
m := new(container.DeleteRequest) m := new(container.DeleteRequest)
m.SetBody(GenerateDeleteRequestBody(empty)) if !empty {
m.SetBody(GenerateDeleteRequestBody(false))
}
m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty))
@ -149,7 +179,10 @@ func GenerateDeleteResponseBody(empty bool) *container.DeleteResponseBody {
func GenerateDeleteResponse(empty bool) *container.DeleteResponse { func GenerateDeleteResponse(empty bool) *container.DeleteResponse {
m := new(container.DeleteResponse) m := new(container.DeleteResponse)
m.SetBody(GenerateDeleteResponseBody(empty)) if !empty {
m.SetBody(GenerateDeleteResponseBody(false))
}
m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty))
@ -159,7 +192,9 @@ func GenerateDeleteResponse(empty bool) *container.DeleteResponse {
func GenerateListRequestBody(empty bool) *container.ListRequestBody { func GenerateListRequestBody(empty bool) *container.ListRequestBody {
m := new(container.ListRequestBody) m := new(container.ListRequestBody)
m.SetOwnerID(refstest.GenerateOwnerID(empty)) if !empty {
m.SetOwnerID(refstest.GenerateOwnerID(false))
}
return m return m
} }
@ -167,7 +202,10 @@ func GenerateListRequestBody(empty bool) *container.ListRequestBody {
func GenerateListRequest(empty bool) *container.ListRequest { func GenerateListRequest(empty bool) *container.ListRequest {
m := new(container.ListRequest) m := new(container.ListRequest)
m.SetBody(GenerateListRequestBody(empty)) if !empty {
m.SetBody(GenerateListRequestBody(false))
}
m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty))
@ -177,7 +215,9 @@ func GenerateListRequest(empty bool) *container.ListRequest {
func GenerateListResponseBody(empty bool) *container.ListResponseBody { func GenerateListResponseBody(empty bool) *container.ListResponseBody {
m := new(container.ListResponseBody) m := new(container.ListResponseBody)
m.SetContainerIDs(refstest.GenerateContainerIDs(empty)) if !empty {
m.SetContainerIDs(refstest.GenerateContainerIDs(false))
}
return m return m
} }
@ -185,7 +225,10 @@ func GenerateListResponseBody(empty bool) *container.ListResponseBody {
func GenerateListResponse(empty bool) *container.ListResponse { func GenerateListResponse(empty bool) *container.ListResponse {
m := new(container.ListResponse) m := new(container.ListResponse)
m.SetBody(GenerateListResponseBody(empty)) if !empty {
m.SetBody(GenerateListResponseBody(false))
}
m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty))
@ -195,7 +238,10 @@ func GenerateListResponse(empty bool) *container.ListResponse {
func GenerateSetExtendedACLRequestBody(empty bool) *container.SetExtendedACLRequestBody { func GenerateSetExtendedACLRequestBody(empty bool) *container.SetExtendedACLRequestBody {
m := new(container.SetExtendedACLRequestBody) m := new(container.SetExtendedACLRequestBody)
m.SetEACL(acltest.GenerateTable(empty)) if !empty {
m.SetEACL(acltest.GenerateTable(false))
}
m.SetSignature(refstest.GenerateSignature(empty)) m.SetSignature(refstest.GenerateSignature(empty))
return m return m
@ -204,7 +250,10 @@ func GenerateSetExtendedACLRequestBody(empty bool) *container.SetExtendedACLRequ
func GenerateSetExtendedACLRequest(empty bool) *container.SetExtendedACLRequest { func GenerateSetExtendedACLRequest(empty bool) *container.SetExtendedACLRequest {
m := new(container.SetExtendedACLRequest) m := new(container.SetExtendedACLRequest)
m.SetBody(GenerateSetExtendedACLRequestBody(empty)) if !empty {
m.SetBody(GenerateSetExtendedACLRequestBody(false))
}
m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty))
@ -220,7 +269,10 @@ func GenerateSetExtendedACLResponseBody(empty bool) *container.SetExtendedACLRes
func GenerateSetExtendedACLResponse(empty bool) *container.SetExtendedACLResponse { func GenerateSetExtendedACLResponse(empty bool) *container.SetExtendedACLResponse {
m := new(container.SetExtendedACLResponse) m := new(container.SetExtendedACLResponse)
m.SetBody(GenerateSetExtendedACLResponseBody(empty)) if !empty {
m.SetBody(GenerateSetExtendedACLResponseBody(false))
}
m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty))
@ -230,7 +282,9 @@ func GenerateSetExtendedACLResponse(empty bool) *container.SetExtendedACLRespons
func GenerateGetExtendedACLRequestBody(empty bool) *container.GetExtendedACLRequestBody { func GenerateGetExtendedACLRequestBody(empty bool) *container.GetExtendedACLRequestBody {
m := new(container.GetExtendedACLRequestBody) m := new(container.GetExtendedACLRequestBody)
m.SetContainerID(refstest.GenerateContainerID(empty)) if !empty {
m.SetContainerID(refstest.GenerateContainerID(false))
}
return m return m
} }
@ -238,7 +292,10 @@ func GenerateGetExtendedACLRequestBody(empty bool) *container.GetExtendedACLRequ
func GenerateGetExtendedACLRequest(empty bool) *container.GetExtendedACLRequest { func GenerateGetExtendedACLRequest(empty bool) *container.GetExtendedACLRequest {
m := new(container.GetExtendedACLRequest) m := new(container.GetExtendedACLRequest)
m.SetBody(GenerateGetExtendedACLRequestBody(empty)) if !empty {
m.SetBody(GenerateGetExtendedACLRequestBody(false))
}
m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty))
@ -248,7 +305,10 @@ func GenerateGetExtendedACLRequest(empty bool) *container.GetExtendedACLRequest
func GenerateGetExtendedACLResponseBody(empty bool) *container.GetExtendedACLResponseBody { func GenerateGetExtendedACLResponseBody(empty bool) *container.GetExtendedACLResponseBody {
m := new(container.GetExtendedACLResponseBody) m := new(container.GetExtendedACLResponseBody)
m.SetEACL(acltest.GenerateTable(empty)) if !empty {
m.SetEACL(acltest.GenerateTable(false))
}
m.SetSignature(refstest.GenerateSignature(empty)) m.SetSignature(refstest.GenerateSignature(empty))
m.SetSessionToken(sessiontest.GenerateSessionToken(empty)) m.SetSessionToken(sessiontest.GenerateSessionToken(empty))
@ -258,7 +318,10 @@ func GenerateGetExtendedACLResponseBody(empty bool) *container.GetExtendedACLRes
func GenerateGetExtendedACLResponse(empty bool) *container.GetExtendedACLResponse { func GenerateGetExtendedACLResponse(empty bool) *container.GetExtendedACLResponse {
m := new(container.GetExtendedACLResponse) m := new(container.GetExtendedACLResponse)
m.SetBody(GenerateGetExtendedACLResponseBody(empty)) if !empty {
m.SetBody(GenerateGetExtendedACLResponseBody(false))
}
m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty))
@ -268,14 +331,18 @@ func GenerateGetExtendedACLResponse(empty bool) *container.GetExtendedACLRespons
func GenerateUsedSpaceAnnouncement(empty bool) *container.UsedSpaceAnnouncement { func GenerateUsedSpaceAnnouncement(empty bool) *container.UsedSpaceAnnouncement {
m := new(container.UsedSpaceAnnouncement) m := new(container.UsedSpaceAnnouncement)
m.SetContainerID(refstest.GenerateContainerID(empty)) if !empty {
m.SetEpoch(1) m.SetContainerID(refstest.GenerateContainerID(false))
m.SetUsedSpace(2) m.SetEpoch(1)
m.SetUsedSpace(2)
}
return m return m
} }
func GenerateUsedSpaceAnnouncements(empty bool) (res []*container.UsedSpaceAnnouncement) { func GenerateUsedSpaceAnnouncements(empty bool) []*container.UsedSpaceAnnouncement {
var res []*container.UsedSpaceAnnouncement
if !empty { if !empty {
res = append(res, res = append(res,
GenerateUsedSpaceAnnouncement(false), GenerateUsedSpaceAnnouncement(false),
@ -283,13 +350,15 @@ func GenerateUsedSpaceAnnouncements(empty bool) (res []*container.UsedSpaceAnnou
) )
} }
return return res
} }
func GenerateAnnounceUsedSpaceRequestBody(empty bool) *container.AnnounceUsedSpaceRequestBody { func GenerateAnnounceUsedSpaceRequestBody(empty bool) *container.AnnounceUsedSpaceRequestBody {
m := new(container.AnnounceUsedSpaceRequestBody) m := new(container.AnnounceUsedSpaceRequestBody)
m.SetAnnouncements(GenerateUsedSpaceAnnouncements(empty)) if !empty {
m.SetAnnouncements(GenerateUsedSpaceAnnouncements(false))
}
return m return m
} }
@ -297,7 +366,10 @@ func GenerateAnnounceUsedSpaceRequestBody(empty bool) *container.AnnounceUsedSpa
func GenerateAnnounceUsedSpaceRequest(empty bool) *container.AnnounceUsedSpaceRequest { func GenerateAnnounceUsedSpaceRequest(empty bool) *container.AnnounceUsedSpaceRequest {
m := new(container.AnnounceUsedSpaceRequest) m := new(container.AnnounceUsedSpaceRequest)
m.SetBody(GenerateAnnounceUsedSpaceRequestBody(empty)) if !empty {
m.SetBody(GenerateAnnounceUsedSpaceRequestBody(false))
}
m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateRequestMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateRequestVerificationHeader(empty))
@ -313,7 +385,10 @@ func GenerateAnnounceUsedSpaceResponseBody(empty bool) *container.AnnounceUsedSp
func GenerateAnnounceUsedSpaceResponse(empty bool) *container.AnnounceUsedSpaceResponse { func GenerateAnnounceUsedSpaceResponse(empty bool) *container.AnnounceUsedSpaceResponse {
m := new(container.AnnounceUsedSpaceResponse) m := new(container.AnnounceUsedSpaceResponse)
m.SetBody(GenerateAnnounceUsedSpaceResponseBody(empty)) if !empty {
m.SetBody(GenerateAnnounceUsedSpaceResponseBody(false))
}
m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty)) m.SetMetaHeader(sessiontest.GenerateResponseMetaHeader(empty))
m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty)) m.SetVerificationHeader(sessiontest.GenerateResponseVerificationHeader(empty))