build_test.go 92 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759
  1. package restxml_test
  2. import (
  3. "bytes"
  4. "encoding/json"
  5. "encoding/xml"
  6. "io"
  7. "io/ioutil"
  8. "net/http"
  9. "net/url"
  10. "testing"
  11. "time"
  12. "github.com/aws/aws-sdk-go/aws"
  13. "github.com/aws/aws-sdk-go/aws/defaults"
  14. "github.com/aws/aws-sdk-go/aws/request"
  15. "github.com/aws/aws-sdk-go/aws/service"
  16. "github.com/aws/aws-sdk-go/aws/service/serviceinfo"
  17. "github.com/aws/aws-sdk-go/internal/protocol/restxml"
  18. "github.com/aws/aws-sdk-go/internal/protocol/xml/xmlutil"
  19. "github.com/aws/aws-sdk-go/internal/signer/v4"
  20. "github.com/aws/aws-sdk-go/internal/util"
  21. "github.com/stretchr/testify/assert"
  22. )
  23. var _ bytes.Buffer // always import bytes
  24. var _ http.Request
  25. var _ json.Marshaler
  26. var _ time.Time
  27. var _ xmlutil.XMLNode
  28. var _ xml.Attr
  29. var _ = ioutil.Discard
  30. var _ = util.Trim("")
  31. var _ = url.Values{}
  32. var _ = io.EOF
  33. type InputService1ProtocolTest struct {
  34. *service.Service
  35. }
  36. // New returns a new InputService1ProtocolTest client.
  37. func NewInputService1ProtocolTest(config *aws.Config) *InputService1ProtocolTest {
  38. service := &service.Service{
  39. ServiceInfo: serviceinfo.ServiceInfo{
  40. Config: defaults.DefaultConfig.Merge(config),
  41. ServiceName: "inputservice1protocoltest",
  42. APIVersion: "2014-01-01",
  43. },
  44. }
  45. service.Initialize()
  46. // Handlers
  47. service.Handlers.Sign.PushBack(v4.Sign)
  48. service.Handlers.Build.PushBack(restxml.Build)
  49. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  50. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  51. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  52. return &InputService1ProtocolTest{service}
  53. }
  54. // newRequest creates a new request for a InputService1ProtocolTest operation and runs any
  55. // custom request initialization.
  56. func (c *InputService1ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  57. req := c.NewRequest(op, params, data)
  58. return req
  59. }
  60. const opInputService1TestCaseOperation1 = "OperationName"
  61. // InputService1TestCaseOperation1Request generates a request for the InputService1TestCaseOperation1 operation.
  62. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1Request(input *InputService1TestShapeInputShape) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation1Output) {
  63. op := &request.Operation{
  64. Name: opInputService1TestCaseOperation1,
  65. HTTPMethod: "POST",
  66. HTTPPath: "/2014-01-01/hostedzone",
  67. }
  68. if input == nil {
  69. input = &InputService1TestShapeInputShape{}
  70. }
  71. req = c.newRequest(op, input, output)
  72. output = &InputService1TestShapeInputService1TestCaseOperation1Output{}
  73. req.Data = output
  74. return
  75. }
  76. func (c *InputService1ProtocolTest) InputService1TestCaseOperation1(input *InputService1TestShapeInputShape) (*InputService1TestShapeInputService1TestCaseOperation1Output, error) {
  77. req, out := c.InputService1TestCaseOperation1Request(input)
  78. err := req.Send()
  79. return out, err
  80. }
  81. const opInputService1TestCaseOperation2 = "OperationName"
  82. // InputService1TestCaseOperation2Request generates a request for the InputService1TestCaseOperation2 operation.
  83. func (c *InputService1ProtocolTest) InputService1TestCaseOperation2Request(input *InputService1TestShapeInputShape) (req *request.Request, output *InputService1TestShapeInputService1TestCaseOperation2Output) {
  84. op := &request.Operation{
  85. Name: opInputService1TestCaseOperation2,
  86. HTTPMethod: "PUT",
  87. HTTPPath: "/2014-01-01/hostedzone",
  88. }
  89. if input == nil {
  90. input = &InputService1TestShapeInputShape{}
  91. }
  92. req = c.newRequest(op, input, output)
  93. output = &InputService1TestShapeInputService1TestCaseOperation2Output{}
  94. req.Data = output
  95. return
  96. }
  97. func (c *InputService1ProtocolTest) InputService1TestCaseOperation2(input *InputService1TestShapeInputShape) (*InputService1TestShapeInputService1TestCaseOperation2Output, error) {
  98. req, out := c.InputService1TestCaseOperation2Request(input)
  99. err := req.Send()
  100. return out, err
  101. }
  102. type InputService1TestShapeInputService1TestCaseOperation1Output struct {
  103. metadataInputService1TestShapeInputService1TestCaseOperation1Output `json:"-" xml:"-"`
  104. }
  105. type metadataInputService1TestShapeInputService1TestCaseOperation1Output struct {
  106. SDKShapeTraits bool `type:"structure"`
  107. }
  108. type InputService1TestShapeInputService1TestCaseOperation2Output struct {
  109. metadataInputService1TestShapeInputService1TestCaseOperation2Output `json:"-" xml:"-"`
  110. }
  111. type metadataInputService1TestShapeInputService1TestCaseOperation2Output struct {
  112. SDKShapeTraits bool `type:"structure"`
  113. }
  114. type InputService1TestShapeInputShape struct {
  115. Description *string `type:"string"`
  116. Name *string `type:"string"`
  117. metadataInputService1TestShapeInputShape `json:"-" xml:"-"`
  118. }
  119. type metadataInputService1TestShapeInputShape struct {
  120. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  121. }
  122. type InputService2ProtocolTest struct {
  123. *service.Service
  124. }
  125. // New returns a new InputService2ProtocolTest client.
  126. func NewInputService2ProtocolTest(config *aws.Config) *InputService2ProtocolTest {
  127. service := &service.Service{
  128. ServiceInfo: serviceinfo.ServiceInfo{
  129. Config: defaults.DefaultConfig.Merge(config),
  130. ServiceName: "inputservice2protocoltest",
  131. APIVersion: "2014-01-01",
  132. },
  133. }
  134. service.Initialize()
  135. // Handlers
  136. service.Handlers.Sign.PushBack(v4.Sign)
  137. service.Handlers.Build.PushBack(restxml.Build)
  138. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  139. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  140. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  141. return &InputService2ProtocolTest{service}
  142. }
  143. // newRequest creates a new request for a InputService2ProtocolTest operation and runs any
  144. // custom request initialization.
  145. func (c *InputService2ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  146. req := c.NewRequest(op, params, data)
  147. return req
  148. }
  149. const opInputService2TestCaseOperation1 = "OperationName"
  150. // InputService2TestCaseOperation1Request generates a request for the InputService2TestCaseOperation1 operation.
  151. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1Request(input *InputService2TestShapeInputService2TestCaseOperation1Input) (req *request.Request, output *InputService2TestShapeInputService2TestCaseOperation1Output) {
  152. op := &request.Operation{
  153. Name: opInputService2TestCaseOperation1,
  154. HTTPMethod: "POST",
  155. HTTPPath: "/2014-01-01/hostedzone",
  156. }
  157. if input == nil {
  158. input = &InputService2TestShapeInputService2TestCaseOperation1Input{}
  159. }
  160. req = c.newRequest(op, input, output)
  161. output = &InputService2TestShapeInputService2TestCaseOperation1Output{}
  162. req.Data = output
  163. return
  164. }
  165. func (c *InputService2ProtocolTest) InputService2TestCaseOperation1(input *InputService2TestShapeInputService2TestCaseOperation1Input) (*InputService2TestShapeInputService2TestCaseOperation1Output, error) {
  166. req, out := c.InputService2TestCaseOperation1Request(input)
  167. err := req.Send()
  168. return out, err
  169. }
  170. type InputService2TestShapeInputService2TestCaseOperation1Input struct {
  171. First *bool `type:"boolean"`
  172. Fourth *int64 `type:"integer"`
  173. Second *bool `type:"boolean"`
  174. Third *float64 `type:"float"`
  175. metadataInputService2TestShapeInputService2TestCaseOperation1Input `json:"-" xml:"-"`
  176. }
  177. type metadataInputService2TestShapeInputService2TestCaseOperation1Input struct {
  178. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  179. }
  180. type InputService2TestShapeInputService2TestCaseOperation1Output struct {
  181. metadataInputService2TestShapeInputService2TestCaseOperation1Output `json:"-" xml:"-"`
  182. }
  183. type metadataInputService2TestShapeInputService2TestCaseOperation1Output struct {
  184. SDKShapeTraits bool `type:"structure"`
  185. }
  186. type InputService3ProtocolTest struct {
  187. *service.Service
  188. }
  189. // New returns a new InputService3ProtocolTest client.
  190. func NewInputService3ProtocolTest(config *aws.Config) *InputService3ProtocolTest {
  191. service := &service.Service{
  192. ServiceInfo: serviceinfo.ServiceInfo{
  193. Config: defaults.DefaultConfig.Merge(config),
  194. ServiceName: "inputservice3protocoltest",
  195. APIVersion: "2014-01-01",
  196. },
  197. }
  198. service.Initialize()
  199. // Handlers
  200. service.Handlers.Sign.PushBack(v4.Sign)
  201. service.Handlers.Build.PushBack(restxml.Build)
  202. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  203. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  204. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  205. return &InputService3ProtocolTest{service}
  206. }
  207. // newRequest creates a new request for a InputService3ProtocolTest operation and runs any
  208. // custom request initialization.
  209. func (c *InputService3ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  210. req := c.NewRequest(op, params, data)
  211. return req
  212. }
  213. const opInputService3TestCaseOperation1 = "OperationName"
  214. // InputService3TestCaseOperation1Request generates a request for the InputService3TestCaseOperation1 operation.
  215. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1Request(input *InputService3TestShapeInputService3TestCaseOperation1Input) (req *request.Request, output *InputService3TestShapeInputService3TestCaseOperation1Output) {
  216. op := &request.Operation{
  217. Name: opInputService3TestCaseOperation1,
  218. HTTPMethod: "POST",
  219. HTTPPath: "/2014-01-01/hostedzone",
  220. }
  221. if input == nil {
  222. input = &InputService3TestShapeInputService3TestCaseOperation1Input{}
  223. }
  224. req = c.newRequest(op, input, output)
  225. output = &InputService3TestShapeInputService3TestCaseOperation1Output{}
  226. req.Data = output
  227. return
  228. }
  229. func (c *InputService3ProtocolTest) InputService3TestCaseOperation1(input *InputService3TestShapeInputService3TestCaseOperation1Input) (*InputService3TestShapeInputService3TestCaseOperation1Output, error) {
  230. req, out := c.InputService3TestCaseOperation1Request(input)
  231. err := req.Send()
  232. return out, err
  233. }
  234. type InputService3TestShapeInputService3TestCaseOperation1Input struct {
  235. Description *string `type:"string"`
  236. SubStructure *InputService3TestShapeSubStructure `type:"structure"`
  237. metadataInputService3TestShapeInputService3TestCaseOperation1Input `json:"-" xml:"-"`
  238. }
  239. type metadataInputService3TestShapeInputService3TestCaseOperation1Input struct {
  240. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  241. }
  242. type InputService3TestShapeInputService3TestCaseOperation1Output struct {
  243. metadataInputService3TestShapeInputService3TestCaseOperation1Output `json:"-" xml:"-"`
  244. }
  245. type metadataInputService3TestShapeInputService3TestCaseOperation1Output struct {
  246. SDKShapeTraits bool `type:"structure"`
  247. }
  248. type InputService3TestShapeSubStructure struct {
  249. Bar *string `type:"string"`
  250. Foo *string `type:"string"`
  251. metadataInputService3TestShapeSubStructure `json:"-" xml:"-"`
  252. }
  253. type metadataInputService3TestShapeSubStructure struct {
  254. SDKShapeTraits bool `type:"structure"`
  255. }
  256. type InputService4ProtocolTest struct {
  257. *service.Service
  258. }
  259. // New returns a new InputService4ProtocolTest client.
  260. func NewInputService4ProtocolTest(config *aws.Config) *InputService4ProtocolTest {
  261. service := &service.Service{
  262. ServiceInfo: serviceinfo.ServiceInfo{
  263. Config: defaults.DefaultConfig.Merge(config),
  264. ServiceName: "inputservice4protocoltest",
  265. APIVersion: "2014-01-01",
  266. },
  267. }
  268. service.Initialize()
  269. // Handlers
  270. service.Handlers.Sign.PushBack(v4.Sign)
  271. service.Handlers.Build.PushBack(restxml.Build)
  272. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  273. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  274. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  275. return &InputService4ProtocolTest{service}
  276. }
  277. // newRequest creates a new request for a InputService4ProtocolTest operation and runs any
  278. // custom request initialization.
  279. func (c *InputService4ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  280. req := c.NewRequest(op, params, data)
  281. return req
  282. }
  283. const opInputService4TestCaseOperation1 = "OperationName"
  284. // InputService4TestCaseOperation1Request generates a request for the InputService4TestCaseOperation1 operation.
  285. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1Request(input *InputService4TestShapeInputService4TestCaseOperation1Input) (req *request.Request, output *InputService4TestShapeInputService4TestCaseOperation1Output) {
  286. op := &request.Operation{
  287. Name: opInputService4TestCaseOperation1,
  288. HTTPMethod: "POST",
  289. HTTPPath: "/2014-01-01/hostedzone",
  290. }
  291. if input == nil {
  292. input = &InputService4TestShapeInputService4TestCaseOperation1Input{}
  293. }
  294. req = c.newRequest(op, input, output)
  295. output = &InputService4TestShapeInputService4TestCaseOperation1Output{}
  296. req.Data = output
  297. return
  298. }
  299. func (c *InputService4ProtocolTest) InputService4TestCaseOperation1(input *InputService4TestShapeInputService4TestCaseOperation1Input) (*InputService4TestShapeInputService4TestCaseOperation1Output, error) {
  300. req, out := c.InputService4TestCaseOperation1Request(input)
  301. err := req.Send()
  302. return out, err
  303. }
  304. type InputService4TestShapeInputService4TestCaseOperation1Input struct {
  305. Description *string `type:"string"`
  306. SubStructure *InputService4TestShapeSubStructure `type:"structure"`
  307. metadataInputService4TestShapeInputService4TestCaseOperation1Input `json:"-" xml:"-"`
  308. }
  309. type metadataInputService4TestShapeInputService4TestCaseOperation1Input struct {
  310. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  311. }
  312. type InputService4TestShapeInputService4TestCaseOperation1Output struct {
  313. metadataInputService4TestShapeInputService4TestCaseOperation1Output `json:"-" xml:"-"`
  314. }
  315. type metadataInputService4TestShapeInputService4TestCaseOperation1Output struct {
  316. SDKShapeTraits bool `type:"structure"`
  317. }
  318. type InputService4TestShapeSubStructure struct {
  319. Bar *string `type:"string"`
  320. Foo *string `type:"string"`
  321. metadataInputService4TestShapeSubStructure `json:"-" xml:"-"`
  322. }
  323. type metadataInputService4TestShapeSubStructure struct {
  324. SDKShapeTraits bool `type:"structure"`
  325. }
  326. type InputService5ProtocolTest struct {
  327. *service.Service
  328. }
  329. // New returns a new InputService5ProtocolTest client.
  330. func NewInputService5ProtocolTest(config *aws.Config) *InputService5ProtocolTest {
  331. service := &service.Service{
  332. ServiceInfo: serviceinfo.ServiceInfo{
  333. Config: defaults.DefaultConfig.Merge(config),
  334. ServiceName: "inputservice5protocoltest",
  335. APIVersion: "2014-01-01",
  336. },
  337. }
  338. service.Initialize()
  339. // Handlers
  340. service.Handlers.Sign.PushBack(v4.Sign)
  341. service.Handlers.Build.PushBack(restxml.Build)
  342. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  343. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  344. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  345. return &InputService5ProtocolTest{service}
  346. }
  347. // newRequest creates a new request for a InputService5ProtocolTest operation and runs any
  348. // custom request initialization.
  349. func (c *InputService5ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  350. req := c.NewRequest(op, params, data)
  351. return req
  352. }
  353. const opInputService5TestCaseOperation1 = "OperationName"
  354. // InputService5TestCaseOperation1Request generates a request for the InputService5TestCaseOperation1 operation.
  355. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1Request(input *InputService5TestShapeInputService5TestCaseOperation1Input) (req *request.Request, output *InputService5TestShapeInputService5TestCaseOperation1Output) {
  356. op := &request.Operation{
  357. Name: opInputService5TestCaseOperation1,
  358. HTTPMethod: "POST",
  359. HTTPPath: "/2014-01-01/hostedzone",
  360. }
  361. if input == nil {
  362. input = &InputService5TestShapeInputService5TestCaseOperation1Input{}
  363. }
  364. req = c.newRequest(op, input, output)
  365. output = &InputService5TestShapeInputService5TestCaseOperation1Output{}
  366. req.Data = output
  367. return
  368. }
  369. func (c *InputService5ProtocolTest) InputService5TestCaseOperation1(input *InputService5TestShapeInputService5TestCaseOperation1Input) (*InputService5TestShapeInputService5TestCaseOperation1Output, error) {
  370. req, out := c.InputService5TestCaseOperation1Request(input)
  371. err := req.Send()
  372. return out, err
  373. }
  374. type InputService5TestShapeInputService5TestCaseOperation1Input struct {
  375. ListParam []*string `type:"list"`
  376. metadataInputService5TestShapeInputService5TestCaseOperation1Input `json:"-" xml:"-"`
  377. }
  378. type metadataInputService5TestShapeInputService5TestCaseOperation1Input struct {
  379. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  380. }
  381. type InputService5TestShapeInputService5TestCaseOperation1Output struct {
  382. metadataInputService5TestShapeInputService5TestCaseOperation1Output `json:"-" xml:"-"`
  383. }
  384. type metadataInputService5TestShapeInputService5TestCaseOperation1Output struct {
  385. SDKShapeTraits bool `type:"structure"`
  386. }
  387. type InputService6ProtocolTest struct {
  388. *service.Service
  389. }
  390. // New returns a new InputService6ProtocolTest client.
  391. func NewInputService6ProtocolTest(config *aws.Config) *InputService6ProtocolTest {
  392. service := &service.Service{
  393. ServiceInfo: serviceinfo.ServiceInfo{
  394. Config: defaults.DefaultConfig.Merge(config),
  395. ServiceName: "inputservice6protocoltest",
  396. APIVersion: "2014-01-01",
  397. },
  398. }
  399. service.Initialize()
  400. // Handlers
  401. service.Handlers.Sign.PushBack(v4.Sign)
  402. service.Handlers.Build.PushBack(restxml.Build)
  403. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  404. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  405. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  406. return &InputService6ProtocolTest{service}
  407. }
  408. // newRequest creates a new request for a InputService6ProtocolTest operation and runs any
  409. // custom request initialization.
  410. func (c *InputService6ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  411. req := c.NewRequest(op, params, data)
  412. return req
  413. }
  414. const opInputService6TestCaseOperation1 = "OperationName"
  415. // InputService6TestCaseOperation1Request generates a request for the InputService6TestCaseOperation1 operation.
  416. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1Request(input *InputService6TestShapeInputService6TestCaseOperation1Input) (req *request.Request, output *InputService6TestShapeInputService6TestCaseOperation1Output) {
  417. op := &request.Operation{
  418. Name: opInputService6TestCaseOperation1,
  419. HTTPMethod: "POST",
  420. HTTPPath: "/2014-01-01/hostedzone",
  421. }
  422. if input == nil {
  423. input = &InputService6TestShapeInputService6TestCaseOperation1Input{}
  424. }
  425. req = c.newRequest(op, input, output)
  426. output = &InputService6TestShapeInputService6TestCaseOperation1Output{}
  427. req.Data = output
  428. return
  429. }
  430. func (c *InputService6ProtocolTest) InputService6TestCaseOperation1(input *InputService6TestShapeInputService6TestCaseOperation1Input) (*InputService6TestShapeInputService6TestCaseOperation1Output, error) {
  431. req, out := c.InputService6TestCaseOperation1Request(input)
  432. err := req.Send()
  433. return out, err
  434. }
  435. type InputService6TestShapeInputService6TestCaseOperation1Input struct {
  436. ListParam []*string `locationName:"AlternateName" locationNameList:"NotMember" type:"list"`
  437. metadataInputService6TestShapeInputService6TestCaseOperation1Input `json:"-" xml:"-"`
  438. }
  439. type metadataInputService6TestShapeInputService6TestCaseOperation1Input struct {
  440. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  441. }
  442. type InputService6TestShapeInputService6TestCaseOperation1Output struct {
  443. metadataInputService6TestShapeInputService6TestCaseOperation1Output `json:"-" xml:"-"`
  444. }
  445. type metadataInputService6TestShapeInputService6TestCaseOperation1Output struct {
  446. SDKShapeTraits bool `type:"structure"`
  447. }
  448. type InputService7ProtocolTest struct {
  449. *service.Service
  450. }
  451. // New returns a new InputService7ProtocolTest client.
  452. func NewInputService7ProtocolTest(config *aws.Config) *InputService7ProtocolTest {
  453. service := &service.Service{
  454. ServiceInfo: serviceinfo.ServiceInfo{
  455. Config: defaults.DefaultConfig.Merge(config),
  456. ServiceName: "inputservice7protocoltest",
  457. APIVersion: "2014-01-01",
  458. },
  459. }
  460. service.Initialize()
  461. // Handlers
  462. service.Handlers.Sign.PushBack(v4.Sign)
  463. service.Handlers.Build.PushBack(restxml.Build)
  464. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  465. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  466. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  467. return &InputService7ProtocolTest{service}
  468. }
  469. // newRequest creates a new request for a InputService7ProtocolTest operation and runs any
  470. // custom request initialization.
  471. func (c *InputService7ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  472. req := c.NewRequest(op, params, data)
  473. return req
  474. }
  475. const opInputService7TestCaseOperation1 = "OperationName"
  476. // InputService7TestCaseOperation1Request generates a request for the InputService7TestCaseOperation1 operation.
  477. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1Request(input *InputService7TestShapeInputService7TestCaseOperation1Input) (req *request.Request, output *InputService7TestShapeInputService7TestCaseOperation1Output) {
  478. op := &request.Operation{
  479. Name: opInputService7TestCaseOperation1,
  480. HTTPMethod: "POST",
  481. HTTPPath: "/2014-01-01/hostedzone",
  482. }
  483. if input == nil {
  484. input = &InputService7TestShapeInputService7TestCaseOperation1Input{}
  485. }
  486. req = c.newRequest(op, input, output)
  487. output = &InputService7TestShapeInputService7TestCaseOperation1Output{}
  488. req.Data = output
  489. return
  490. }
  491. func (c *InputService7ProtocolTest) InputService7TestCaseOperation1(input *InputService7TestShapeInputService7TestCaseOperation1Input) (*InputService7TestShapeInputService7TestCaseOperation1Output, error) {
  492. req, out := c.InputService7TestCaseOperation1Request(input)
  493. err := req.Send()
  494. return out, err
  495. }
  496. type InputService7TestShapeInputService7TestCaseOperation1Input struct {
  497. ListParam []*string `type:"list" flattened:"true"`
  498. metadataInputService7TestShapeInputService7TestCaseOperation1Input `json:"-" xml:"-"`
  499. }
  500. type metadataInputService7TestShapeInputService7TestCaseOperation1Input struct {
  501. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  502. }
  503. type InputService7TestShapeInputService7TestCaseOperation1Output struct {
  504. metadataInputService7TestShapeInputService7TestCaseOperation1Output `json:"-" xml:"-"`
  505. }
  506. type metadataInputService7TestShapeInputService7TestCaseOperation1Output struct {
  507. SDKShapeTraits bool `type:"structure"`
  508. }
  509. type InputService8ProtocolTest struct {
  510. *service.Service
  511. }
  512. // New returns a new InputService8ProtocolTest client.
  513. func NewInputService8ProtocolTest(config *aws.Config) *InputService8ProtocolTest {
  514. service := &service.Service{
  515. ServiceInfo: serviceinfo.ServiceInfo{
  516. Config: defaults.DefaultConfig.Merge(config),
  517. ServiceName: "inputservice8protocoltest",
  518. APIVersion: "2014-01-01",
  519. },
  520. }
  521. service.Initialize()
  522. // Handlers
  523. service.Handlers.Sign.PushBack(v4.Sign)
  524. service.Handlers.Build.PushBack(restxml.Build)
  525. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  526. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  527. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  528. return &InputService8ProtocolTest{service}
  529. }
  530. // newRequest creates a new request for a InputService8ProtocolTest operation and runs any
  531. // custom request initialization.
  532. func (c *InputService8ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  533. req := c.NewRequest(op, params, data)
  534. return req
  535. }
  536. const opInputService8TestCaseOperation1 = "OperationName"
  537. // InputService8TestCaseOperation1Request generates a request for the InputService8TestCaseOperation1 operation.
  538. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1Request(input *InputService8TestShapeInputService8TestCaseOperation1Input) (req *request.Request, output *InputService8TestShapeInputService8TestCaseOperation1Output) {
  539. op := &request.Operation{
  540. Name: opInputService8TestCaseOperation1,
  541. HTTPMethod: "POST",
  542. HTTPPath: "/2014-01-01/hostedzone",
  543. }
  544. if input == nil {
  545. input = &InputService8TestShapeInputService8TestCaseOperation1Input{}
  546. }
  547. req = c.newRequest(op, input, output)
  548. output = &InputService8TestShapeInputService8TestCaseOperation1Output{}
  549. req.Data = output
  550. return
  551. }
  552. func (c *InputService8ProtocolTest) InputService8TestCaseOperation1(input *InputService8TestShapeInputService8TestCaseOperation1Input) (*InputService8TestShapeInputService8TestCaseOperation1Output, error) {
  553. req, out := c.InputService8TestCaseOperation1Request(input)
  554. err := req.Send()
  555. return out, err
  556. }
  557. type InputService8TestShapeInputService8TestCaseOperation1Input struct {
  558. ListParam []*string `locationName:"item" type:"list" flattened:"true"`
  559. metadataInputService8TestShapeInputService8TestCaseOperation1Input `json:"-" xml:"-"`
  560. }
  561. type metadataInputService8TestShapeInputService8TestCaseOperation1Input struct {
  562. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  563. }
  564. type InputService8TestShapeInputService8TestCaseOperation1Output struct {
  565. metadataInputService8TestShapeInputService8TestCaseOperation1Output `json:"-" xml:"-"`
  566. }
  567. type metadataInputService8TestShapeInputService8TestCaseOperation1Output struct {
  568. SDKShapeTraits bool `type:"structure"`
  569. }
  570. type InputService9ProtocolTest struct {
  571. *service.Service
  572. }
  573. // New returns a new InputService9ProtocolTest client.
  574. func NewInputService9ProtocolTest(config *aws.Config) *InputService9ProtocolTest {
  575. service := &service.Service{
  576. ServiceInfo: serviceinfo.ServiceInfo{
  577. Config: defaults.DefaultConfig.Merge(config),
  578. ServiceName: "inputservice9protocoltest",
  579. APIVersion: "2014-01-01",
  580. },
  581. }
  582. service.Initialize()
  583. // Handlers
  584. service.Handlers.Sign.PushBack(v4.Sign)
  585. service.Handlers.Build.PushBack(restxml.Build)
  586. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  587. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  588. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  589. return &InputService9ProtocolTest{service}
  590. }
  591. // newRequest creates a new request for a InputService9ProtocolTest operation and runs any
  592. // custom request initialization.
  593. func (c *InputService9ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  594. req := c.NewRequest(op, params, data)
  595. return req
  596. }
  597. const opInputService9TestCaseOperation1 = "OperationName"
  598. // InputService9TestCaseOperation1Request generates a request for the InputService9TestCaseOperation1 operation.
  599. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1Request(input *InputService9TestShapeInputService9TestCaseOperation1Input) (req *request.Request, output *InputService9TestShapeInputService9TestCaseOperation1Output) {
  600. op := &request.Operation{
  601. Name: opInputService9TestCaseOperation1,
  602. HTTPMethod: "POST",
  603. HTTPPath: "/2014-01-01/hostedzone",
  604. }
  605. if input == nil {
  606. input = &InputService9TestShapeInputService9TestCaseOperation1Input{}
  607. }
  608. req = c.newRequest(op, input, output)
  609. output = &InputService9TestShapeInputService9TestCaseOperation1Output{}
  610. req.Data = output
  611. return
  612. }
  613. func (c *InputService9ProtocolTest) InputService9TestCaseOperation1(input *InputService9TestShapeInputService9TestCaseOperation1Input) (*InputService9TestShapeInputService9TestCaseOperation1Output, error) {
  614. req, out := c.InputService9TestCaseOperation1Request(input)
  615. err := req.Send()
  616. return out, err
  617. }
  618. type InputService9TestShapeInputService9TestCaseOperation1Input struct {
  619. ListParam []*InputService9TestShapeSingleFieldStruct `locationName:"item" type:"list" flattened:"true"`
  620. metadataInputService9TestShapeInputService9TestCaseOperation1Input `json:"-" xml:"-"`
  621. }
  622. type metadataInputService9TestShapeInputService9TestCaseOperation1Input struct {
  623. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  624. }
  625. type InputService9TestShapeInputService9TestCaseOperation1Output struct {
  626. metadataInputService9TestShapeInputService9TestCaseOperation1Output `json:"-" xml:"-"`
  627. }
  628. type metadataInputService9TestShapeInputService9TestCaseOperation1Output struct {
  629. SDKShapeTraits bool `type:"structure"`
  630. }
  631. type InputService9TestShapeSingleFieldStruct struct {
  632. Element *string `locationName:"value" type:"string"`
  633. metadataInputService9TestShapeSingleFieldStruct `json:"-" xml:"-"`
  634. }
  635. type metadataInputService9TestShapeSingleFieldStruct struct {
  636. SDKShapeTraits bool `type:"structure"`
  637. }
  638. type InputService10ProtocolTest struct {
  639. *service.Service
  640. }
  641. // New returns a new InputService10ProtocolTest client.
  642. func NewInputService10ProtocolTest(config *aws.Config) *InputService10ProtocolTest {
  643. service := &service.Service{
  644. ServiceInfo: serviceinfo.ServiceInfo{
  645. Config: defaults.DefaultConfig.Merge(config),
  646. ServiceName: "inputservice10protocoltest",
  647. APIVersion: "2014-01-01",
  648. },
  649. }
  650. service.Initialize()
  651. // Handlers
  652. service.Handlers.Sign.PushBack(v4.Sign)
  653. service.Handlers.Build.PushBack(restxml.Build)
  654. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  655. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  656. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  657. return &InputService10ProtocolTest{service}
  658. }
  659. // newRequest creates a new request for a InputService10ProtocolTest operation and runs any
  660. // custom request initialization.
  661. func (c *InputService10ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  662. req := c.NewRequest(op, params, data)
  663. return req
  664. }
  665. const opInputService10TestCaseOperation1 = "OperationName"
  666. // InputService10TestCaseOperation1Request generates a request for the InputService10TestCaseOperation1 operation.
  667. func (c *InputService10ProtocolTest) InputService10TestCaseOperation1Request(input *InputService10TestShapeInputService10TestCaseOperation1Input) (req *request.Request, output *InputService10TestShapeInputService10TestCaseOperation1Output) {
  668. op := &request.Operation{
  669. Name: opInputService10TestCaseOperation1,
  670. HTTPMethod: "POST",
  671. HTTPPath: "/2014-01-01/hostedzone",
  672. }
  673. if input == nil {
  674. input = &InputService10TestShapeInputService10TestCaseOperation1Input{}
  675. }
  676. req = c.newRequest(op, input, output)
  677. output = &InputService10TestShapeInputService10TestCaseOperation1Output{}
  678. req.Data = output
  679. return
  680. }
  681. func (c *InputService10ProtocolTest) InputService10TestCaseOperation1(input *InputService10TestShapeInputService10TestCaseOperation1Input) (*InputService10TestShapeInputService10TestCaseOperation1Output, error) {
  682. req, out := c.InputService10TestCaseOperation1Request(input)
  683. err := req.Send()
  684. return out, err
  685. }
  686. type InputService10TestShapeInputService10TestCaseOperation1Input struct {
  687. StructureParam *InputService10TestShapeStructureShape `type:"structure"`
  688. metadataInputService10TestShapeInputService10TestCaseOperation1Input `json:"-" xml:"-"`
  689. }
  690. type metadataInputService10TestShapeInputService10TestCaseOperation1Input struct {
  691. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  692. }
  693. type InputService10TestShapeInputService10TestCaseOperation1Output struct {
  694. metadataInputService10TestShapeInputService10TestCaseOperation1Output `json:"-" xml:"-"`
  695. }
  696. type metadataInputService10TestShapeInputService10TestCaseOperation1Output struct {
  697. SDKShapeTraits bool `type:"structure"`
  698. }
  699. type InputService10TestShapeStructureShape struct {
  700. B []byte `locationName:"b" type:"blob"`
  701. T *time.Time `locationName:"t" type:"timestamp" timestampFormat:"iso8601"`
  702. metadataInputService10TestShapeStructureShape `json:"-" xml:"-"`
  703. }
  704. type metadataInputService10TestShapeStructureShape struct {
  705. SDKShapeTraits bool `type:"structure"`
  706. }
  707. type InputService11ProtocolTest struct {
  708. *service.Service
  709. }
  710. // New returns a new InputService11ProtocolTest client.
  711. func NewInputService11ProtocolTest(config *aws.Config) *InputService11ProtocolTest {
  712. service := &service.Service{
  713. ServiceInfo: serviceinfo.ServiceInfo{
  714. Config: defaults.DefaultConfig.Merge(config),
  715. ServiceName: "inputservice11protocoltest",
  716. APIVersion: "2014-01-01",
  717. },
  718. }
  719. service.Initialize()
  720. // Handlers
  721. service.Handlers.Sign.PushBack(v4.Sign)
  722. service.Handlers.Build.PushBack(restxml.Build)
  723. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  724. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  725. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  726. return &InputService11ProtocolTest{service}
  727. }
  728. // newRequest creates a new request for a InputService11ProtocolTest operation and runs any
  729. // custom request initialization.
  730. func (c *InputService11ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  731. req := c.NewRequest(op, params, data)
  732. return req
  733. }
  734. const opInputService11TestCaseOperation1 = "OperationName"
  735. // InputService11TestCaseOperation1Request generates a request for the InputService11TestCaseOperation1 operation.
  736. func (c *InputService11ProtocolTest) InputService11TestCaseOperation1Request(input *InputService11TestShapeInputService11TestCaseOperation1Input) (req *request.Request, output *InputService11TestShapeInputService11TestCaseOperation1Output) {
  737. op := &request.Operation{
  738. Name: opInputService11TestCaseOperation1,
  739. HTTPMethod: "POST",
  740. HTTPPath: "/",
  741. }
  742. if input == nil {
  743. input = &InputService11TestShapeInputService11TestCaseOperation1Input{}
  744. }
  745. req = c.newRequest(op, input, output)
  746. output = &InputService11TestShapeInputService11TestCaseOperation1Output{}
  747. req.Data = output
  748. return
  749. }
  750. func (c *InputService11ProtocolTest) InputService11TestCaseOperation1(input *InputService11TestShapeInputService11TestCaseOperation1Input) (*InputService11TestShapeInputService11TestCaseOperation1Output, error) {
  751. req, out := c.InputService11TestCaseOperation1Request(input)
  752. err := req.Send()
  753. return out, err
  754. }
  755. type InputService11TestShapeInputService11TestCaseOperation1Input struct {
  756. Foo map[string]*string `location:"headers" locationName:"x-foo-" type:"map"`
  757. metadataInputService11TestShapeInputService11TestCaseOperation1Input `json:"-" xml:"-"`
  758. }
  759. type metadataInputService11TestShapeInputService11TestCaseOperation1Input struct {
  760. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  761. }
  762. type InputService11TestShapeInputService11TestCaseOperation1Output struct {
  763. metadataInputService11TestShapeInputService11TestCaseOperation1Output `json:"-" xml:"-"`
  764. }
  765. type metadataInputService11TestShapeInputService11TestCaseOperation1Output struct {
  766. SDKShapeTraits bool `type:"structure"`
  767. }
  768. type InputService12ProtocolTest struct {
  769. *service.Service
  770. }
  771. // New returns a new InputService12ProtocolTest client.
  772. func NewInputService12ProtocolTest(config *aws.Config) *InputService12ProtocolTest {
  773. service := &service.Service{
  774. ServiceInfo: serviceinfo.ServiceInfo{
  775. Config: defaults.DefaultConfig.Merge(config),
  776. ServiceName: "inputservice12protocoltest",
  777. APIVersion: "2014-01-01",
  778. },
  779. }
  780. service.Initialize()
  781. // Handlers
  782. service.Handlers.Sign.PushBack(v4.Sign)
  783. service.Handlers.Build.PushBack(restxml.Build)
  784. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  785. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  786. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  787. return &InputService12ProtocolTest{service}
  788. }
  789. // newRequest creates a new request for a InputService12ProtocolTest operation and runs any
  790. // custom request initialization.
  791. func (c *InputService12ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  792. req := c.NewRequest(op, params, data)
  793. return req
  794. }
  795. const opInputService12TestCaseOperation1 = "OperationName"
  796. // InputService12TestCaseOperation1Request generates a request for the InputService12TestCaseOperation1 operation.
  797. func (c *InputService12ProtocolTest) InputService12TestCaseOperation1Request(input *InputService12TestShapeInputService12TestCaseOperation1Input) (req *request.Request, output *InputService12TestShapeInputService12TestCaseOperation1Output) {
  798. op := &request.Operation{
  799. Name: opInputService12TestCaseOperation1,
  800. HTTPMethod: "POST",
  801. HTTPPath: "/",
  802. }
  803. if input == nil {
  804. input = &InputService12TestShapeInputService12TestCaseOperation1Input{}
  805. }
  806. req = c.newRequest(op, input, output)
  807. output = &InputService12TestShapeInputService12TestCaseOperation1Output{}
  808. req.Data = output
  809. return
  810. }
  811. func (c *InputService12ProtocolTest) InputService12TestCaseOperation1(input *InputService12TestShapeInputService12TestCaseOperation1Input) (*InputService12TestShapeInputService12TestCaseOperation1Output, error) {
  812. req, out := c.InputService12TestCaseOperation1Request(input)
  813. err := req.Send()
  814. return out, err
  815. }
  816. type InputService12TestShapeInputService12TestCaseOperation1Input struct {
  817. Foo *string `locationName:"foo" type:"string"`
  818. metadataInputService12TestShapeInputService12TestCaseOperation1Input `json:"-" xml:"-"`
  819. }
  820. type metadataInputService12TestShapeInputService12TestCaseOperation1Input struct {
  821. SDKShapeTraits bool `type:"structure" payload:"Foo"`
  822. }
  823. type InputService12TestShapeInputService12TestCaseOperation1Output struct {
  824. metadataInputService12TestShapeInputService12TestCaseOperation1Output `json:"-" xml:"-"`
  825. }
  826. type metadataInputService12TestShapeInputService12TestCaseOperation1Output struct {
  827. SDKShapeTraits bool `type:"structure"`
  828. }
  829. type InputService13ProtocolTest struct {
  830. *service.Service
  831. }
  832. // New returns a new InputService13ProtocolTest client.
  833. func NewInputService13ProtocolTest(config *aws.Config) *InputService13ProtocolTest {
  834. service := &service.Service{
  835. ServiceInfo: serviceinfo.ServiceInfo{
  836. Config: defaults.DefaultConfig.Merge(config),
  837. ServiceName: "inputservice13protocoltest",
  838. APIVersion: "2014-01-01",
  839. },
  840. }
  841. service.Initialize()
  842. // Handlers
  843. service.Handlers.Sign.PushBack(v4.Sign)
  844. service.Handlers.Build.PushBack(restxml.Build)
  845. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  846. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  847. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  848. return &InputService13ProtocolTest{service}
  849. }
  850. // newRequest creates a new request for a InputService13ProtocolTest operation and runs any
  851. // custom request initialization.
  852. func (c *InputService13ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  853. req := c.NewRequest(op, params, data)
  854. return req
  855. }
  856. const opInputService13TestCaseOperation1 = "OperationName"
  857. // InputService13TestCaseOperation1Request generates a request for the InputService13TestCaseOperation1 operation.
  858. func (c *InputService13ProtocolTest) InputService13TestCaseOperation1Request(input *InputService13TestShapeInputShape) (req *request.Request, output *InputService13TestShapeInputService13TestCaseOperation1Output) {
  859. op := &request.Operation{
  860. Name: opInputService13TestCaseOperation1,
  861. HTTPMethod: "POST",
  862. HTTPPath: "/",
  863. }
  864. if input == nil {
  865. input = &InputService13TestShapeInputShape{}
  866. }
  867. req = c.newRequest(op, input, output)
  868. output = &InputService13TestShapeInputService13TestCaseOperation1Output{}
  869. req.Data = output
  870. return
  871. }
  872. func (c *InputService13ProtocolTest) InputService13TestCaseOperation1(input *InputService13TestShapeInputShape) (*InputService13TestShapeInputService13TestCaseOperation1Output, error) {
  873. req, out := c.InputService13TestCaseOperation1Request(input)
  874. err := req.Send()
  875. return out, err
  876. }
  877. const opInputService13TestCaseOperation2 = "OperationName"
  878. // InputService13TestCaseOperation2Request generates a request for the InputService13TestCaseOperation2 operation.
  879. func (c *InputService13ProtocolTest) InputService13TestCaseOperation2Request(input *InputService13TestShapeInputShape) (req *request.Request, output *InputService13TestShapeInputService13TestCaseOperation2Output) {
  880. op := &request.Operation{
  881. Name: opInputService13TestCaseOperation2,
  882. HTTPMethod: "POST",
  883. HTTPPath: "/",
  884. }
  885. if input == nil {
  886. input = &InputService13TestShapeInputShape{}
  887. }
  888. req = c.newRequest(op, input, output)
  889. output = &InputService13TestShapeInputService13TestCaseOperation2Output{}
  890. req.Data = output
  891. return
  892. }
  893. func (c *InputService13ProtocolTest) InputService13TestCaseOperation2(input *InputService13TestShapeInputShape) (*InputService13TestShapeInputService13TestCaseOperation2Output, error) {
  894. req, out := c.InputService13TestCaseOperation2Request(input)
  895. err := req.Send()
  896. return out, err
  897. }
  898. type InputService13TestShapeInputService13TestCaseOperation1Output struct {
  899. metadataInputService13TestShapeInputService13TestCaseOperation1Output `json:"-" xml:"-"`
  900. }
  901. type metadataInputService13TestShapeInputService13TestCaseOperation1Output struct {
  902. SDKShapeTraits bool `type:"structure"`
  903. }
  904. type InputService13TestShapeInputService13TestCaseOperation2Output struct {
  905. metadataInputService13TestShapeInputService13TestCaseOperation2Output `json:"-" xml:"-"`
  906. }
  907. type metadataInputService13TestShapeInputService13TestCaseOperation2Output struct {
  908. SDKShapeTraits bool `type:"structure"`
  909. }
  910. type InputService13TestShapeInputShape struct {
  911. Foo []byte `locationName:"foo" type:"blob"`
  912. metadataInputService13TestShapeInputShape `json:"-" xml:"-"`
  913. }
  914. type metadataInputService13TestShapeInputShape struct {
  915. SDKShapeTraits bool `type:"structure" payload:"Foo"`
  916. }
  917. type InputService14ProtocolTest struct {
  918. *service.Service
  919. }
  920. // New returns a new InputService14ProtocolTest client.
  921. func NewInputService14ProtocolTest(config *aws.Config) *InputService14ProtocolTest {
  922. service := &service.Service{
  923. ServiceInfo: serviceinfo.ServiceInfo{
  924. Config: defaults.DefaultConfig.Merge(config),
  925. ServiceName: "inputservice14protocoltest",
  926. APIVersion: "2014-01-01",
  927. },
  928. }
  929. service.Initialize()
  930. // Handlers
  931. service.Handlers.Sign.PushBack(v4.Sign)
  932. service.Handlers.Build.PushBack(restxml.Build)
  933. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  934. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  935. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  936. return &InputService14ProtocolTest{service}
  937. }
  938. // newRequest creates a new request for a InputService14ProtocolTest operation and runs any
  939. // custom request initialization.
  940. func (c *InputService14ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  941. req := c.NewRequest(op, params, data)
  942. return req
  943. }
  944. const opInputService14TestCaseOperation1 = "OperationName"
  945. // InputService14TestCaseOperation1Request generates a request for the InputService14TestCaseOperation1 operation.
  946. func (c *InputService14ProtocolTest) InputService14TestCaseOperation1Request(input *InputService14TestShapeInputShape) (req *request.Request, output *InputService14TestShapeInputService14TestCaseOperation1Output) {
  947. op := &request.Operation{
  948. Name: opInputService14TestCaseOperation1,
  949. HTTPMethod: "POST",
  950. HTTPPath: "/",
  951. }
  952. if input == nil {
  953. input = &InputService14TestShapeInputShape{}
  954. }
  955. req = c.newRequest(op, input, output)
  956. output = &InputService14TestShapeInputService14TestCaseOperation1Output{}
  957. req.Data = output
  958. return
  959. }
  960. func (c *InputService14ProtocolTest) InputService14TestCaseOperation1(input *InputService14TestShapeInputShape) (*InputService14TestShapeInputService14TestCaseOperation1Output, error) {
  961. req, out := c.InputService14TestCaseOperation1Request(input)
  962. err := req.Send()
  963. return out, err
  964. }
  965. const opInputService14TestCaseOperation2 = "OperationName"
  966. // InputService14TestCaseOperation2Request generates a request for the InputService14TestCaseOperation2 operation.
  967. func (c *InputService14ProtocolTest) InputService14TestCaseOperation2Request(input *InputService14TestShapeInputShape) (req *request.Request, output *InputService14TestShapeInputService14TestCaseOperation2Output) {
  968. op := &request.Operation{
  969. Name: opInputService14TestCaseOperation2,
  970. HTTPMethod: "POST",
  971. HTTPPath: "/",
  972. }
  973. if input == nil {
  974. input = &InputService14TestShapeInputShape{}
  975. }
  976. req = c.newRequest(op, input, output)
  977. output = &InputService14TestShapeInputService14TestCaseOperation2Output{}
  978. req.Data = output
  979. return
  980. }
  981. func (c *InputService14ProtocolTest) InputService14TestCaseOperation2(input *InputService14TestShapeInputShape) (*InputService14TestShapeInputService14TestCaseOperation2Output, error) {
  982. req, out := c.InputService14TestCaseOperation2Request(input)
  983. err := req.Send()
  984. return out, err
  985. }
  986. const opInputService14TestCaseOperation3 = "OperationName"
  987. // InputService14TestCaseOperation3Request generates a request for the InputService14TestCaseOperation3 operation.
  988. func (c *InputService14ProtocolTest) InputService14TestCaseOperation3Request(input *InputService14TestShapeInputShape) (req *request.Request, output *InputService14TestShapeInputService14TestCaseOperation3Output) {
  989. op := &request.Operation{
  990. Name: opInputService14TestCaseOperation3,
  991. HTTPMethod: "POST",
  992. HTTPPath: "/",
  993. }
  994. if input == nil {
  995. input = &InputService14TestShapeInputShape{}
  996. }
  997. req = c.newRequest(op, input, output)
  998. output = &InputService14TestShapeInputService14TestCaseOperation3Output{}
  999. req.Data = output
  1000. return
  1001. }
  1002. func (c *InputService14ProtocolTest) InputService14TestCaseOperation3(input *InputService14TestShapeInputShape) (*InputService14TestShapeInputService14TestCaseOperation3Output, error) {
  1003. req, out := c.InputService14TestCaseOperation3Request(input)
  1004. err := req.Send()
  1005. return out, err
  1006. }
  1007. type InputService14TestShapeFooShape struct {
  1008. Baz *string `locationName:"baz" type:"string"`
  1009. metadataInputService14TestShapeFooShape `json:"-" xml:"-"`
  1010. }
  1011. type metadataInputService14TestShapeFooShape struct {
  1012. SDKShapeTraits bool `locationName:"foo" type:"structure"`
  1013. }
  1014. type InputService14TestShapeInputService14TestCaseOperation1Output struct {
  1015. metadataInputService14TestShapeInputService14TestCaseOperation1Output `json:"-" xml:"-"`
  1016. }
  1017. type metadataInputService14TestShapeInputService14TestCaseOperation1Output struct {
  1018. SDKShapeTraits bool `type:"structure"`
  1019. }
  1020. type InputService14TestShapeInputService14TestCaseOperation2Output struct {
  1021. metadataInputService14TestShapeInputService14TestCaseOperation2Output `json:"-" xml:"-"`
  1022. }
  1023. type metadataInputService14TestShapeInputService14TestCaseOperation2Output struct {
  1024. SDKShapeTraits bool `type:"structure"`
  1025. }
  1026. type InputService14TestShapeInputService14TestCaseOperation3Output struct {
  1027. metadataInputService14TestShapeInputService14TestCaseOperation3Output `json:"-" xml:"-"`
  1028. }
  1029. type metadataInputService14TestShapeInputService14TestCaseOperation3Output struct {
  1030. SDKShapeTraits bool `type:"structure"`
  1031. }
  1032. type InputService14TestShapeInputShape struct {
  1033. Foo *InputService14TestShapeFooShape `locationName:"foo" type:"structure"`
  1034. metadataInputService14TestShapeInputShape `json:"-" xml:"-"`
  1035. }
  1036. type metadataInputService14TestShapeInputShape struct {
  1037. SDKShapeTraits bool `type:"structure" payload:"Foo"`
  1038. }
  1039. type InputService15ProtocolTest struct {
  1040. *service.Service
  1041. }
  1042. // New returns a new InputService15ProtocolTest client.
  1043. func NewInputService15ProtocolTest(config *aws.Config) *InputService15ProtocolTest {
  1044. service := &service.Service{
  1045. ServiceInfo: serviceinfo.ServiceInfo{
  1046. Config: defaults.DefaultConfig.Merge(config),
  1047. ServiceName: "inputservice15protocoltest",
  1048. APIVersion: "2014-01-01",
  1049. },
  1050. }
  1051. service.Initialize()
  1052. // Handlers
  1053. service.Handlers.Sign.PushBack(v4.Sign)
  1054. service.Handlers.Build.PushBack(restxml.Build)
  1055. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  1056. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  1057. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  1058. return &InputService15ProtocolTest{service}
  1059. }
  1060. // newRequest creates a new request for a InputService15ProtocolTest operation and runs any
  1061. // custom request initialization.
  1062. func (c *InputService15ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1063. req := c.NewRequest(op, params, data)
  1064. return req
  1065. }
  1066. const opInputService15TestCaseOperation1 = "OperationName"
  1067. // InputService15TestCaseOperation1Request generates a request for the InputService15TestCaseOperation1 operation.
  1068. func (c *InputService15ProtocolTest) InputService15TestCaseOperation1Request(input *InputService15TestShapeInputService15TestCaseOperation1Input) (req *request.Request, output *InputService15TestShapeInputService15TestCaseOperation1Output) {
  1069. op := &request.Operation{
  1070. Name: opInputService15TestCaseOperation1,
  1071. HTTPMethod: "POST",
  1072. HTTPPath: "/",
  1073. }
  1074. if input == nil {
  1075. input = &InputService15TestShapeInputService15TestCaseOperation1Input{}
  1076. }
  1077. req = c.newRequest(op, input, output)
  1078. output = &InputService15TestShapeInputService15TestCaseOperation1Output{}
  1079. req.Data = output
  1080. return
  1081. }
  1082. func (c *InputService15ProtocolTest) InputService15TestCaseOperation1(input *InputService15TestShapeInputService15TestCaseOperation1Input) (*InputService15TestShapeInputService15TestCaseOperation1Output, error) {
  1083. req, out := c.InputService15TestCaseOperation1Request(input)
  1084. err := req.Send()
  1085. return out, err
  1086. }
  1087. type InputService15TestShapeGrant struct {
  1088. Grantee *InputService15TestShapeGrantee `type:"structure"`
  1089. metadataInputService15TestShapeGrant `json:"-" xml:"-"`
  1090. }
  1091. type metadataInputService15TestShapeGrant struct {
  1092. SDKShapeTraits bool `locationName:"Grant" type:"structure"`
  1093. }
  1094. type InputService15TestShapeGrantee struct {
  1095. EmailAddress *string `type:"string"`
  1096. Type *string `locationName:"xsi:type" type:"string" xmlAttribute:"true"`
  1097. metadataInputService15TestShapeGrantee `json:"-" xml:"-"`
  1098. }
  1099. type metadataInputService15TestShapeGrantee struct {
  1100. SDKShapeTraits bool `type:"structure" xmlPrefix:"xsi" xmlURI:"http://www.w3.org/2001/XMLSchema-instance"`
  1101. }
  1102. type InputService15TestShapeInputService15TestCaseOperation1Input struct {
  1103. Grant *InputService15TestShapeGrant `locationName:"Grant" type:"structure"`
  1104. metadataInputService15TestShapeInputService15TestCaseOperation1Input `json:"-" xml:"-"`
  1105. }
  1106. type metadataInputService15TestShapeInputService15TestCaseOperation1Input struct {
  1107. SDKShapeTraits bool `type:"structure" payload:"Grant"`
  1108. }
  1109. type InputService15TestShapeInputService15TestCaseOperation1Output struct {
  1110. metadataInputService15TestShapeInputService15TestCaseOperation1Output `json:"-" xml:"-"`
  1111. }
  1112. type metadataInputService15TestShapeInputService15TestCaseOperation1Output struct {
  1113. SDKShapeTraits bool `type:"structure"`
  1114. }
  1115. type InputService16ProtocolTest struct {
  1116. *service.Service
  1117. }
  1118. // New returns a new InputService16ProtocolTest client.
  1119. func NewInputService16ProtocolTest(config *aws.Config) *InputService16ProtocolTest {
  1120. service := &service.Service{
  1121. ServiceInfo: serviceinfo.ServiceInfo{
  1122. Config: defaults.DefaultConfig.Merge(config),
  1123. ServiceName: "inputservice16protocoltest",
  1124. APIVersion: "2014-01-01",
  1125. },
  1126. }
  1127. service.Initialize()
  1128. // Handlers
  1129. service.Handlers.Sign.PushBack(v4.Sign)
  1130. service.Handlers.Build.PushBack(restxml.Build)
  1131. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  1132. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  1133. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  1134. return &InputService16ProtocolTest{service}
  1135. }
  1136. // newRequest creates a new request for a InputService16ProtocolTest operation and runs any
  1137. // custom request initialization.
  1138. func (c *InputService16ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1139. req := c.NewRequest(op, params, data)
  1140. return req
  1141. }
  1142. const opInputService16TestCaseOperation1 = "OperationName"
  1143. // InputService16TestCaseOperation1Request generates a request for the InputService16TestCaseOperation1 operation.
  1144. func (c *InputService16ProtocolTest) InputService16TestCaseOperation1Request(input *InputService16TestShapeInputService16TestCaseOperation1Input) (req *request.Request, output *InputService16TestShapeInputService16TestCaseOperation1Output) {
  1145. op := &request.Operation{
  1146. Name: opInputService16TestCaseOperation1,
  1147. HTTPMethod: "GET",
  1148. HTTPPath: "/{Bucket}/{Key+}",
  1149. }
  1150. if input == nil {
  1151. input = &InputService16TestShapeInputService16TestCaseOperation1Input{}
  1152. }
  1153. req = c.newRequest(op, input, output)
  1154. output = &InputService16TestShapeInputService16TestCaseOperation1Output{}
  1155. req.Data = output
  1156. return
  1157. }
  1158. func (c *InputService16ProtocolTest) InputService16TestCaseOperation1(input *InputService16TestShapeInputService16TestCaseOperation1Input) (*InputService16TestShapeInputService16TestCaseOperation1Output, error) {
  1159. req, out := c.InputService16TestCaseOperation1Request(input)
  1160. err := req.Send()
  1161. return out, err
  1162. }
  1163. type InputService16TestShapeInputService16TestCaseOperation1Input struct {
  1164. Bucket *string `location:"uri" type:"string"`
  1165. Key *string `location:"uri" type:"string"`
  1166. metadataInputService16TestShapeInputService16TestCaseOperation1Input `json:"-" xml:"-"`
  1167. }
  1168. type metadataInputService16TestShapeInputService16TestCaseOperation1Input struct {
  1169. SDKShapeTraits bool `type:"structure"`
  1170. }
  1171. type InputService16TestShapeInputService16TestCaseOperation1Output struct {
  1172. metadataInputService16TestShapeInputService16TestCaseOperation1Output `json:"-" xml:"-"`
  1173. }
  1174. type metadataInputService16TestShapeInputService16TestCaseOperation1Output struct {
  1175. SDKShapeTraits bool `type:"structure"`
  1176. }
  1177. type InputService17ProtocolTest struct {
  1178. *service.Service
  1179. }
  1180. // New returns a new InputService17ProtocolTest client.
  1181. func NewInputService17ProtocolTest(config *aws.Config) *InputService17ProtocolTest {
  1182. service := &service.Service{
  1183. ServiceInfo: serviceinfo.ServiceInfo{
  1184. Config: defaults.DefaultConfig.Merge(config),
  1185. ServiceName: "inputservice17protocoltest",
  1186. APIVersion: "2014-01-01",
  1187. },
  1188. }
  1189. service.Initialize()
  1190. // Handlers
  1191. service.Handlers.Sign.PushBack(v4.Sign)
  1192. service.Handlers.Build.PushBack(restxml.Build)
  1193. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  1194. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  1195. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  1196. return &InputService17ProtocolTest{service}
  1197. }
  1198. // newRequest creates a new request for a InputService17ProtocolTest operation and runs any
  1199. // custom request initialization.
  1200. func (c *InputService17ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1201. req := c.NewRequest(op, params, data)
  1202. return req
  1203. }
  1204. const opInputService17TestCaseOperation1 = "OperationName"
  1205. // InputService17TestCaseOperation1Request generates a request for the InputService17TestCaseOperation1 operation.
  1206. func (c *InputService17ProtocolTest) InputService17TestCaseOperation1Request(input *InputService17TestShapeInputShape) (req *request.Request, output *InputService17TestShapeInputService17TestCaseOperation1Output) {
  1207. op := &request.Operation{
  1208. Name: opInputService17TestCaseOperation1,
  1209. HTTPMethod: "POST",
  1210. HTTPPath: "/path",
  1211. }
  1212. if input == nil {
  1213. input = &InputService17TestShapeInputShape{}
  1214. }
  1215. req = c.newRequest(op, input, output)
  1216. output = &InputService17TestShapeInputService17TestCaseOperation1Output{}
  1217. req.Data = output
  1218. return
  1219. }
  1220. func (c *InputService17ProtocolTest) InputService17TestCaseOperation1(input *InputService17TestShapeInputShape) (*InputService17TestShapeInputService17TestCaseOperation1Output, error) {
  1221. req, out := c.InputService17TestCaseOperation1Request(input)
  1222. err := req.Send()
  1223. return out, err
  1224. }
  1225. const opInputService17TestCaseOperation2 = "OperationName"
  1226. // InputService17TestCaseOperation2Request generates a request for the InputService17TestCaseOperation2 operation.
  1227. func (c *InputService17ProtocolTest) InputService17TestCaseOperation2Request(input *InputService17TestShapeInputShape) (req *request.Request, output *InputService17TestShapeInputService17TestCaseOperation2Output) {
  1228. op := &request.Operation{
  1229. Name: opInputService17TestCaseOperation2,
  1230. HTTPMethod: "POST",
  1231. HTTPPath: "/path?abc=mno",
  1232. }
  1233. if input == nil {
  1234. input = &InputService17TestShapeInputShape{}
  1235. }
  1236. req = c.newRequest(op, input, output)
  1237. output = &InputService17TestShapeInputService17TestCaseOperation2Output{}
  1238. req.Data = output
  1239. return
  1240. }
  1241. func (c *InputService17ProtocolTest) InputService17TestCaseOperation2(input *InputService17TestShapeInputShape) (*InputService17TestShapeInputService17TestCaseOperation2Output, error) {
  1242. req, out := c.InputService17TestCaseOperation2Request(input)
  1243. err := req.Send()
  1244. return out, err
  1245. }
  1246. type InputService17TestShapeInputService17TestCaseOperation1Output struct {
  1247. metadataInputService17TestShapeInputService17TestCaseOperation1Output `json:"-" xml:"-"`
  1248. }
  1249. type metadataInputService17TestShapeInputService17TestCaseOperation1Output struct {
  1250. SDKShapeTraits bool `type:"structure"`
  1251. }
  1252. type InputService17TestShapeInputService17TestCaseOperation2Output struct {
  1253. metadataInputService17TestShapeInputService17TestCaseOperation2Output `json:"-" xml:"-"`
  1254. }
  1255. type metadataInputService17TestShapeInputService17TestCaseOperation2Output struct {
  1256. SDKShapeTraits bool `type:"structure"`
  1257. }
  1258. type InputService17TestShapeInputShape struct {
  1259. Foo *string `location:"querystring" locationName:"param-name" type:"string"`
  1260. metadataInputService17TestShapeInputShape `json:"-" xml:"-"`
  1261. }
  1262. type metadataInputService17TestShapeInputShape struct {
  1263. SDKShapeTraits bool `type:"structure"`
  1264. }
  1265. type InputService18ProtocolTest struct {
  1266. *service.Service
  1267. }
  1268. // New returns a new InputService18ProtocolTest client.
  1269. func NewInputService18ProtocolTest(config *aws.Config) *InputService18ProtocolTest {
  1270. service := &service.Service{
  1271. ServiceInfo: serviceinfo.ServiceInfo{
  1272. Config: defaults.DefaultConfig.Merge(config),
  1273. ServiceName: "inputservice18protocoltest",
  1274. APIVersion: "2014-01-01",
  1275. },
  1276. }
  1277. service.Initialize()
  1278. // Handlers
  1279. service.Handlers.Sign.PushBack(v4.Sign)
  1280. service.Handlers.Build.PushBack(restxml.Build)
  1281. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  1282. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  1283. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  1284. return &InputService18ProtocolTest{service}
  1285. }
  1286. // newRequest creates a new request for a InputService18ProtocolTest operation and runs any
  1287. // custom request initialization.
  1288. func (c *InputService18ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1289. req := c.NewRequest(op, params, data)
  1290. return req
  1291. }
  1292. const opInputService18TestCaseOperation1 = "OperationName"
  1293. // InputService18TestCaseOperation1Request generates a request for the InputService18TestCaseOperation1 operation.
  1294. func (c *InputService18ProtocolTest) InputService18TestCaseOperation1Request(input *InputService18TestShapeInputShape) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation1Output) {
  1295. op := &request.Operation{
  1296. Name: opInputService18TestCaseOperation1,
  1297. HTTPMethod: "POST",
  1298. HTTPPath: "/path",
  1299. }
  1300. if input == nil {
  1301. input = &InputService18TestShapeInputShape{}
  1302. }
  1303. req = c.newRequest(op, input, output)
  1304. output = &InputService18TestShapeInputService18TestCaseOperation1Output{}
  1305. req.Data = output
  1306. return
  1307. }
  1308. func (c *InputService18ProtocolTest) InputService18TestCaseOperation1(input *InputService18TestShapeInputShape) (*InputService18TestShapeInputService18TestCaseOperation1Output, error) {
  1309. req, out := c.InputService18TestCaseOperation1Request(input)
  1310. err := req.Send()
  1311. return out, err
  1312. }
  1313. const opInputService18TestCaseOperation2 = "OperationName"
  1314. // InputService18TestCaseOperation2Request generates a request for the InputService18TestCaseOperation2 operation.
  1315. func (c *InputService18ProtocolTest) InputService18TestCaseOperation2Request(input *InputService18TestShapeInputShape) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation2Output) {
  1316. op := &request.Operation{
  1317. Name: opInputService18TestCaseOperation2,
  1318. HTTPMethod: "POST",
  1319. HTTPPath: "/path",
  1320. }
  1321. if input == nil {
  1322. input = &InputService18TestShapeInputShape{}
  1323. }
  1324. req = c.newRequest(op, input, output)
  1325. output = &InputService18TestShapeInputService18TestCaseOperation2Output{}
  1326. req.Data = output
  1327. return
  1328. }
  1329. func (c *InputService18ProtocolTest) InputService18TestCaseOperation2(input *InputService18TestShapeInputShape) (*InputService18TestShapeInputService18TestCaseOperation2Output, error) {
  1330. req, out := c.InputService18TestCaseOperation2Request(input)
  1331. err := req.Send()
  1332. return out, err
  1333. }
  1334. const opInputService18TestCaseOperation3 = "OperationName"
  1335. // InputService18TestCaseOperation3Request generates a request for the InputService18TestCaseOperation3 operation.
  1336. func (c *InputService18ProtocolTest) InputService18TestCaseOperation3Request(input *InputService18TestShapeInputShape) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation3Output) {
  1337. op := &request.Operation{
  1338. Name: opInputService18TestCaseOperation3,
  1339. HTTPMethod: "POST",
  1340. HTTPPath: "/path",
  1341. }
  1342. if input == nil {
  1343. input = &InputService18TestShapeInputShape{}
  1344. }
  1345. req = c.newRequest(op, input, output)
  1346. output = &InputService18TestShapeInputService18TestCaseOperation3Output{}
  1347. req.Data = output
  1348. return
  1349. }
  1350. func (c *InputService18ProtocolTest) InputService18TestCaseOperation3(input *InputService18TestShapeInputShape) (*InputService18TestShapeInputService18TestCaseOperation3Output, error) {
  1351. req, out := c.InputService18TestCaseOperation3Request(input)
  1352. err := req.Send()
  1353. return out, err
  1354. }
  1355. const opInputService18TestCaseOperation4 = "OperationName"
  1356. // InputService18TestCaseOperation4Request generates a request for the InputService18TestCaseOperation4 operation.
  1357. func (c *InputService18ProtocolTest) InputService18TestCaseOperation4Request(input *InputService18TestShapeInputShape) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation4Output) {
  1358. op := &request.Operation{
  1359. Name: opInputService18TestCaseOperation4,
  1360. HTTPMethod: "POST",
  1361. HTTPPath: "/path",
  1362. }
  1363. if input == nil {
  1364. input = &InputService18TestShapeInputShape{}
  1365. }
  1366. req = c.newRequest(op, input, output)
  1367. output = &InputService18TestShapeInputService18TestCaseOperation4Output{}
  1368. req.Data = output
  1369. return
  1370. }
  1371. func (c *InputService18ProtocolTest) InputService18TestCaseOperation4(input *InputService18TestShapeInputShape) (*InputService18TestShapeInputService18TestCaseOperation4Output, error) {
  1372. req, out := c.InputService18TestCaseOperation4Request(input)
  1373. err := req.Send()
  1374. return out, err
  1375. }
  1376. const opInputService18TestCaseOperation5 = "OperationName"
  1377. // InputService18TestCaseOperation5Request generates a request for the InputService18TestCaseOperation5 operation.
  1378. func (c *InputService18ProtocolTest) InputService18TestCaseOperation5Request(input *InputService18TestShapeInputShape) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation5Output) {
  1379. op := &request.Operation{
  1380. Name: opInputService18TestCaseOperation5,
  1381. HTTPMethod: "POST",
  1382. HTTPPath: "/path",
  1383. }
  1384. if input == nil {
  1385. input = &InputService18TestShapeInputShape{}
  1386. }
  1387. req = c.newRequest(op, input, output)
  1388. output = &InputService18TestShapeInputService18TestCaseOperation5Output{}
  1389. req.Data = output
  1390. return
  1391. }
  1392. func (c *InputService18ProtocolTest) InputService18TestCaseOperation5(input *InputService18TestShapeInputShape) (*InputService18TestShapeInputService18TestCaseOperation5Output, error) {
  1393. req, out := c.InputService18TestCaseOperation5Request(input)
  1394. err := req.Send()
  1395. return out, err
  1396. }
  1397. const opInputService18TestCaseOperation6 = "OperationName"
  1398. // InputService18TestCaseOperation6Request generates a request for the InputService18TestCaseOperation6 operation.
  1399. func (c *InputService18ProtocolTest) InputService18TestCaseOperation6Request(input *InputService18TestShapeInputShape) (req *request.Request, output *InputService18TestShapeInputService18TestCaseOperation6Output) {
  1400. op := &request.Operation{
  1401. Name: opInputService18TestCaseOperation6,
  1402. HTTPMethod: "POST",
  1403. HTTPPath: "/path",
  1404. }
  1405. if input == nil {
  1406. input = &InputService18TestShapeInputShape{}
  1407. }
  1408. req = c.newRequest(op, input, output)
  1409. output = &InputService18TestShapeInputService18TestCaseOperation6Output{}
  1410. req.Data = output
  1411. return
  1412. }
  1413. func (c *InputService18ProtocolTest) InputService18TestCaseOperation6(input *InputService18TestShapeInputShape) (*InputService18TestShapeInputService18TestCaseOperation6Output, error) {
  1414. req, out := c.InputService18TestCaseOperation6Request(input)
  1415. err := req.Send()
  1416. return out, err
  1417. }
  1418. type InputService18TestShapeInputService18TestCaseOperation1Output struct {
  1419. metadataInputService18TestShapeInputService18TestCaseOperation1Output `json:"-" xml:"-"`
  1420. }
  1421. type metadataInputService18TestShapeInputService18TestCaseOperation1Output struct {
  1422. SDKShapeTraits bool `type:"structure"`
  1423. }
  1424. type InputService18TestShapeInputService18TestCaseOperation2Output struct {
  1425. metadataInputService18TestShapeInputService18TestCaseOperation2Output `json:"-" xml:"-"`
  1426. }
  1427. type metadataInputService18TestShapeInputService18TestCaseOperation2Output struct {
  1428. SDKShapeTraits bool `type:"structure"`
  1429. }
  1430. type InputService18TestShapeInputService18TestCaseOperation3Output struct {
  1431. metadataInputService18TestShapeInputService18TestCaseOperation3Output `json:"-" xml:"-"`
  1432. }
  1433. type metadataInputService18TestShapeInputService18TestCaseOperation3Output struct {
  1434. SDKShapeTraits bool `type:"structure"`
  1435. }
  1436. type InputService18TestShapeInputService18TestCaseOperation4Output struct {
  1437. metadataInputService18TestShapeInputService18TestCaseOperation4Output `json:"-" xml:"-"`
  1438. }
  1439. type metadataInputService18TestShapeInputService18TestCaseOperation4Output struct {
  1440. SDKShapeTraits bool `type:"structure"`
  1441. }
  1442. type InputService18TestShapeInputService18TestCaseOperation5Output struct {
  1443. metadataInputService18TestShapeInputService18TestCaseOperation5Output `json:"-" xml:"-"`
  1444. }
  1445. type metadataInputService18TestShapeInputService18TestCaseOperation5Output struct {
  1446. SDKShapeTraits bool `type:"structure"`
  1447. }
  1448. type InputService18TestShapeInputService18TestCaseOperation6Output struct {
  1449. metadataInputService18TestShapeInputService18TestCaseOperation6Output `json:"-" xml:"-"`
  1450. }
  1451. type metadataInputService18TestShapeInputService18TestCaseOperation6Output struct {
  1452. SDKShapeTraits bool `type:"structure"`
  1453. }
  1454. type InputService18TestShapeInputShape struct {
  1455. RecursiveStruct *InputService18TestShapeRecursiveStructType `type:"structure"`
  1456. metadataInputService18TestShapeInputShape `json:"-" xml:"-"`
  1457. }
  1458. type metadataInputService18TestShapeInputShape struct {
  1459. SDKShapeTraits bool `locationName:"OperationRequest" type:"structure" xmlURI:"https://foo/"`
  1460. }
  1461. type InputService18TestShapeRecursiveStructType struct {
  1462. NoRecurse *string `type:"string"`
  1463. RecursiveList []*InputService18TestShapeRecursiveStructType `type:"list"`
  1464. RecursiveMap map[string]*InputService18TestShapeRecursiveStructType `type:"map"`
  1465. RecursiveStruct *InputService18TestShapeRecursiveStructType `type:"structure"`
  1466. metadataInputService18TestShapeRecursiveStructType `json:"-" xml:"-"`
  1467. }
  1468. type metadataInputService18TestShapeRecursiveStructType struct {
  1469. SDKShapeTraits bool `type:"structure"`
  1470. }
  1471. type InputService19ProtocolTest struct {
  1472. *service.Service
  1473. }
  1474. // New returns a new InputService19ProtocolTest client.
  1475. func NewInputService19ProtocolTest(config *aws.Config) *InputService19ProtocolTest {
  1476. service := &service.Service{
  1477. ServiceInfo: serviceinfo.ServiceInfo{
  1478. Config: defaults.DefaultConfig.Merge(config),
  1479. ServiceName: "inputservice19protocoltest",
  1480. APIVersion: "2014-01-01",
  1481. },
  1482. }
  1483. service.Initialize()
  1484. // Handlers
  1485. service.Handlers.Sign.PushBack(v4.Sign)
  1486. service.Handlers.Build.PushBack(restxml.Build)
  1487. service.Handlers.Unmarshal.PushBack(restxml.Unmarshal)
  1488. service.Handlers.UnmarshalMeta.PushBack(restxml.UnmarshalMeta)
  1489. service.Handlers.UnmarshalError.PushBack(restxml.UnmarshalError)
  1490. return &InputService19ProtocolTest{service}
  1491. }
  1492. // newRequest creates a new request for a InputService19ProtocolTest operation and runs any
  1493. // custom request initialization.
  1494. func (c *InputService19ProtocolTest) newRequest(op *request.Operation, params, data interface{}) *request.Request {
  1495. req := c.NewRequest(op, params, data)
  1496. return req
  1497. }
  1498. const opInputService19TestCaseOperation1 = "OperationName"
  1499. // InputService19TestCaseOperation1Request generates a request for the InputService19TestCaseOperation1 operation.
  1500. func (c *InputService19ProtocolTest) InputService19TestCaseOperation1Request(input *InputService19TestShapeInputService19TestCaseOperation1Input) (req *request.Request, output *InputService19TestShapeInputService19TestCaseOperation1Output) {
  1501. op := &request.Operation{
  1502. Name: opInputService19TestCaseOperation1,
  1503. HTTPMethod: "POST",
  1504. HTTPPath: "/path",
  1505. }
  1506. if input == nil {
  1507. input = &InputService19TestShapeInputService19TestCaseOperation1Input{}
  1508. }
  1509. req = c.newRequest(op, input, output)
  1510. output = &InputService19TestShapeInputService19TestCaseOperation1Output{}
  1511. req.Data = output
  1512. return
  1513. }
  1514. func (c *InputService19ProtocolTest) InputService19TestCaseOperation1(input *InputService19TestShapeInputService19TestCaseOperation1Input) (*InputService19TestShapeInputService19TestCaseOperation1Output, error) {
  1515. req, out := c.InputService19TestCaseOperation1Request(input)
  1516. err := req.Send()
  1517. return out, err
  1518. }
  1519. type InputService19TestShapeInputService19TestCaseOperation1Input struct {
  1520. TimeArgInHeader *time.Time `location:"header" locationName:"x-amz-timearg" type:"timestamp" timestampFormat:"rfc822"`
  1521. metadataInputService19TestShapeInputService19TestCaseOperation1Input `json:"-" xml:"-"`
  1522. }
  1523. type metadataInputService19TestShapeInputService19TestCaseOperation1Input struct {
  1524. SDKShapeTraits bool `type:"structure"`
  1525. }
  1526. type InputService19TestShapeInputService19TestCaseOperation1Output struct {
  1527. metadataInputService19TestShapeInputService19TestCaseOperation1Output `json:"-" xml:"-"`
  1528. }
  1529. type metadataInputService19TestShapeInputService19TestCaseOperation1Output struct {
  1530. SDKShapeTraits bool `type:"structure"`
  1531. }
  1532. //
  1533. // Tests begin here
  1534. //
  1535. func TestInputService1ProtocolTestBasicXMLSerializationCase1(t *testing.T) {
  1536. svc := NewInputService1ProtocolTest(nil)
  1537. svc.Endpoint = "https://test"
  1538. input := &InputService1TestShapeInputShape{
  1539. Description: aws.String("bar"),
  1540. Name: aws.String("foo"),
  1541. }
  1542. req, _ := svc.InputService1TestCaseOperation1Request(input)
  1543. r := req.HTTPRequest
  1544. // build request
  1545. restxml.Build(req)
  1546. assert.NoError(t, req.Error)
  1547. // assert body
  1548. assert.NotNil(t, r.Body)
  1549. body := util.SortXML(r.Body)
  1550. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">bar</Description><Name xmlns="https://foo/">foo</Name></OperationRequest>`), util.Trim(string(body)))
  1551. // assert URL
  1552. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1553. // assert headers
  1554. }
  1555. func TestInputService1ProtocolTestBasicXMLSerializationCase2(t *testing.T) {
  1556. svc := NewInputService1ProtocolTest(nil)
  1557. svc.Endpoint = "https://test"
  1558. input := &InputService1TestShapeInputShape{
  1559. Description: aws.String("bar"),
  1560. Name: aws.String("foo"),
  1561. }
  1562. req, _ := svc.InputService1TestCaseOperation2Request(input)
  1563. r := req.HTTPRequest
  1564. // build request
  1565. restxml.Build(req)
  1566. assert.NoError(t, req.Error)
  1567. // assert body
  1568. assert.NotNil(t, r.Body)
  1569. body := util.SortXML(r.Body)
  1570. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">bar</Description><Name xmlns="https://foo/">foo</Name></OperationRequest>`), util.Trim(string(body)))
  1571. // assert URL
  1572. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1573. // assert headers
  1574. }
  1575. func TestInputService2ProtocolTestSerializeOtherScalarTypesCase1(t *testing.T) {
  1576. svc := NewInputService2ProtocolTest(nil)
  1577. svc.Endpoint = "https://test"
  1578. input := &InputService2TestShapeInputService2TestCaseOperation1Input{
  1579. First: aws.Bool(true),
  1580. Fourth: aws.Int64(3),
  1581. Second: aws.Bool(false),
  1582. Third: aws.Float64(1.2),
  1583. }
  1584. req, _ := svc.InputService2TestCaseOperation1Request(input)
  1585. r := req.HTTPRequest
  1586. // build request
  1587. restxml.Build(req)
  1588. assert.NoError(t, req.Error)
  1589. // assert body
  1590. assert.NotNil(t, r.Body)
  1591. body := util.SortXML(r.Body)
  1592. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><First xmlns="https://foo/">true</First><Fourth xmlns="https://foo/">3</Fourth><Second xmlns="https://foo/">false</Second><Third xmlns="https://foo/">1.2</Third></OperationRequest>`), util.Trim(string(body)))
  1593. // assert URL
  1594. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1595. // assert headers
  1596. }
  1597. func TestInputService3ProtocolTestNestedStructuresCase1(t *testing.T) {
  1598. svc := NewInputService3ProtocolTest(nil)
  1599. svc.Endpoint = "https://test"
  1600. input := &InputService3TestShapeInputService3TestCaseOperation1Input{
  1601. Description: aws.String("baz"),
  1602. SubStructure: &InputService3TestShapeSubStructure{
  1603. Bar: aws.String("b"),
  1604. Foo: aws.String("a"),
  1605. },
  1606. }
  1607. req, _ := svc.InputService3TestCaseOperation1Request(input)
  1608. r := req.HTTPRequest
  1609. // build request
  1610. restxml.Build(req)
  1611. assert.NoError(t, req.Error)
  1612. // assert body
  1613. assert.NotNil(t, r.Body)
  1614. body := util.SortXML(r.Body)
  1615. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">baz</Description><SubStructure xmlns="https://foo/"><Bar xmlns="https://foo/">b</Bar><Foo xmlns="https://foo/">a</Foo></SubStructure></OperationRequest>`), util.Trim(string(body)))
  1616. // assert URL
  1617. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1618. // assert headers
  1619. }
  1620. func TestInputService4ProtocolTestNestedStructuresCase1(t *testing.T) {
  1621. svc := NewInputService4ProtocolTest(nil)
  1622. svc.Endpoint = "https://test"
  1623. input := &InputService4TestShapeInputService4TestCaseOperation1Input{
  1624. Description: aws.String("baz"),
  1625. SubStructure: &InputService4TestShapeSubStructure{},
  1626. }
  1627. req, _ := svc.InputService4TestCaseOperation1Request(input)
  1628. r := req.HTTPRequest
  1629. // build request
  1630. restxml.Build(req)
  1631. assert.NoError(t, req.Error)
  1632. // assert body
  1633. assert.NotNil(t, r.Body)
  1634. body := util.SortXML(r.Body)
  1635. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><Description xmlns="https://foo/">baz</Description><SubStructure xmlns="https://foo/"></SubStructure></OperationRequest>`), util.Trim(string(body)))
  1636. // assert URL
  1637. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1638. // assert headers
  1639. }
  1640. func TestInputService5ProtocolTestNonFlattenedListsCase1(t *testing.T) {
  1641. svc := NewInputService5ProtocolTest(nil)
  1642. svc.Endpoint = "https://test"
  1643. input := &InputService5TestShapeInputService5TestCaseOperation1Input{
  1644. ListParam: []*string{
  1645. aws.String("one"),
  1646. aws.String("two"),
  1647. aws.String("three"),
  1648. },
  1649. }
  1650. req, _ := svc.InputService5TestCaseOperation1Request(input)
  1651. r := req.HTTPRequest
  1652. // build request
  1653. restxml.Build(req)
  1654. assert.NoError(t, req.Error)
  1655. // assert body
  1656. assert.NotNil(t, r.Body)
  1657. body := util.SortXML(r.Body)
  1658. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><ListParam xmlns="https://foo/"><member xmlns="https://foo/">one</member><member xmlns="https://foo/">two</member><member xmlns="https://foo/">three</member></ListParam></OperationRequest>`), util.Trim(string(body)))
  1659. // assert URL
  1660. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1661. // assert headers
  1662. }
  1663. func TestInputService6ProtocolTestNonFlattenedListsWithLocationNameCase1(t *testing.T) {
  1664. svc := NewInputService6ProtocolTest(nil)
  1665. svc.Endpoint = "https://test"
  1666. input := &InputService6TestShapeInputService6TestCaseOperation1Input{
  1667. ListParam: []*string{
  1668. aws.String("one"),
  1669. aws.String("two"),
  1670. aws.String("three"),
  1671. },
  1672. }
  1673. req, _ := svc.InputService6TestCaseOperation1Request(input)
  1674. r := req.HTTPRequest
  1675. // build request
  1676. restxml.Build(req)
  1677. assert.NoError(t, req.Error)
  1678. // assert body
  1679. assert.NotNil(t, r.Body)
  1680. body := util.SortXML(r.Body)
  1681. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><AlternateName xmlns="https://foo/"><NotMember xmlns="https://foo/">one</NotMember><NotMember xmlns="https://foo/">two</NotMember><NotMember xmlns="https://foo/">three</NotMember></AlternateName></OperationRequest>`), util.Trim(string(body)))
  1682. // assert URL
  1683. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1684. // assert headers
  1685. }
  1686. func TestInputService7ProtocolTestFlattenedListsCase1(t *testing.T) {
  1687. svc := NewInputService7ProtocolTest(nil)
  1688. svc.Endpoint = "https://test"
  1689. input := &InputService7TestShapeInputService7TestCaseOperation1Input{
  1690. ListParam: []*string{
  1691. aws.String("one"),
  1692. aws.String("two"),
  1693. aws.String("three"),
  1694. },
  1695. }
  1696. req, _ := svc.InputService7TestCaseOperation1Request(input)
  1697. r := req.HTTPRequest
  1698. // build request
  1699. restxml.Build(req)
  1700. assert.NoError(t, req.Error)
  1701. // assert body
  1702. assert.NotNil(t, r.Body)
  1703. body := util.SortXML(r.Body)
  1704. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><ListParam xmlns="https://foo/">one</ListParam><ListParam xmlns="https://foo/">two</ListParam><ListParam xmlns="https://foo/">three</ListParam></OperationRequest>`), util.Trim(string(body)))
  1705. // assert URL
  1706. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1707. // assert headers
  1708. }
  1709. func TestInputService8ProtocolTestFlattenedListsWithLocationNameCase1(t *testing.T) {
  1710. svc := NewInputService8ProtocolTest(nil)
  1711. svc.Endpoint = "https://test"
  1712. input := &InputService8TestShapeInputService8TestCaseOperation1Input{
  1713. ListParam: []*string{
  1714. aws.String("one"),
  1715. aws.String("two"),
  1716. aws.String("three"),
  1717. },
  1718. }
  1719. req, _ := svc.InputService8TestCaseOperation1Request(input)
  1720. r := req.HTTPRequest
  1721. // build request
  1722. restxml.Build(req)
  1723. assert.NoError(t, req.Error)
  1724. // assert body
  1725. assert.NotNil(t, r.Body)
  1726. body := util.SortXML(r.Body)
  1727. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><item xmlns="https://foo/">one</item><item xmlns="https://foo/">two</item><item xmlns="https://foo/">three</item></OperationRequest>`), util.Trim(string(body)))
  1728. // assert URL
  1729. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1730. // assert headers
  1731. }
  1732. func TestInputService9ProtocolTestListOfStructuresCase1(t *testing.T) {
  1733. svc := NewInputService9ProtocolTest(nil)
  1734. svc.Endpoint = "https://test"
  1735. input := &InputService9TestShapeInputService9TestCaseOperation1Input{
  1736. ListParam: []*InputService9TestShapeSingleFieldStruct{
  1737. {
  1738. Element: aws.String("one"),
  1739. },
  1740. {
  1741. Element: aws.String("two"),
  1742. },
  1743. {
  1744. Element: aws.String("three"),
  1745. },
  1746. },
  1747. }
  1748. req, _ := svc.InputService9TestCaseOperation1Request(input)
  1749. r := req.HTTPRequest
  1750. // build request
  1751. restxml.Build(req)
  1752. assert.NoError(t, req.Error)
  1753. // assert body
  1754. assert.NotNil(t, r.Body)
  1755. body := util.SortXML(r.Body)
  1756. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><item xmlns="https://foo/"><value xmlns="https://foo/">one</value></item><item xmlns="https://foo/"><value xmlns="https://foo/">two</value></item><item xmlns="https://foo/"><value xmlns="https://foo/">three</value></item></OperationRequest>`), util.Trim(string(body)))
  1757. // assert URL
  1758. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1759. // assert headers
  1760. }
  1761. func TestInputService10ProtocolTestBlobAndTimestampShapesCase1(t *testing.T) {
  1762. svc := NewInputService10ProtocolTest(nil)
  1763. svc.Endpoint = "https://test"
  1764. input := &InputService10TestShapeInputService10TestCaseOperation1Input{
  1765. StructureParam: &InputService10TestShapeStructureShape{
  1766. B: []byte("foo"),
  1767. T: aws.Time(time.Unix(1422172800, 0)),
  1768. },
  1769. }
  1770. req, _ := svc.InputService10TestCaseOperation1Request(input)
  1771. r := req.HTTPRequest
  1772. // build request
  1773. restxml.Build(req)
  1774. assert.NoError(t, req.Error)
  1775. // assert body
  1776. assert.NotNil(t, r.Body)
  1777. body := util.SortXML(r.Body)
  1778. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><StructureParam xmlns="https://foo/"><b xmlns="https://foo/">Zm9v</b><t xmlns="https://foo/">2015-01-25T08:00:00Z</t></StructureParam></OperationRequest>`), util.Trim(string(body)))
  1779. // assert URL
  1780. assert.Equal(t, "https://test/2014-01-01/hostedzone", r.URL.String())
  1781. // assert headers
  1782. }
  1783. func TestInputService11ProtocolTestHeaderMapsCase1(t *testing.T) {
  1784. svc := NewInputService11ProtocolTest(nil)
  1785. svc.Endpoint = "https://test"
  1786. input := &InputService11TestShapeInputService11TestCaseOperation1Input{
  1787. Foo: map[string]*string{
  1788. "a": aws.String("b"),
  1789. "c": aws.String("d"),
  1790. },
  1791. }
  1792. req, _ := svc.InputService11TestCaseOperation1Request(input)
  1793. r := req.HTTPRequest
  1794. // build request
  1795. restxml.Build(req)
  1796. assert.NoError(t, req.Error)
  1797. // assert URL
  1798. assert.Equal(t, "https://test/", r.URL.String())
  1799. // assert headers
  1800. assert.Equal(t, "b", r.Header.Get("x-foo-a"))
  1801. assert.Equal(t, "d", r.Header.Get("x-foo-c"))
  1802. }
  1803. func TestInputService12ProtocolTestStringPayloadCase1(t *testing.T) {
  1804. svc := NewInputService12ProtocolTest(nil)
  1805. svc.Endpoint = "https://test"
  1806. input := &InputService12TestShapeInputService12TestCaseOperation1Input{
  1807. Foo: aws.String("bar"),
  1808. }
  1809. req, _ := svc.InputService12TestCaseOperation1Request(input)
  1810. r := req.HTTPRequest
  1811. // build request
  1812. restxml.Build(req)
  1813. assert.NoError(t, req.Error)
  1814. // assert body
  1815. assert.NotNil(t, r.Body)
  1816. body := util.SortXML(r.Body)
  1817. assert.Equal(t, util.Trim(`bar`), util.Trim(string(body)))
  1818. // assert URL
  1819. assert.Equal(t, "https://test/", r.URL.String())
  1820. // assert headers
  1821. }
  1822. func TestInputService13ProtocolTestBlobPayloadCase1(t *testing.T) {
  1823. svc := NewInputService13ProtocolTest(nil)
  1824. svc.Endpoint = "https://test"
  1825. input := &InputService13TestShapeInputShape{
  1826. Foo: []byte("bar"),
  1827. }
  1828. req, _ := svc.InputService13TestCaseOperation1Request(input)
  1829. r := req.HTTPRequest
  1830. // build request
  1831. restxml.Build(req)
  1832. assert.NoError(t, req.Error)
  1833. // assert body
  1834. assert.NotNil(t, r.Body)
  1835. body := util.SortXML(r.Body)
  1836. assert.Equal(t, util.Trim(`bar`), util.Trim(string(body)))
  1837. // assert URL
  1838. assert.Equal(t, "https://test/", r.URL.String())
  1839. // assert headers
  1840. }
  1841. func TestInputService13ProtocolTestBlobPayloadCase2(t *testing.T) {
  1842. svc := NewInputService13ProtocolTest(nil)
  1843. svc.Endpoint = "https://test"
  1844. input := &InputService13TestShapeInputShape{}
  1845. req, _ := svc.InputService13TestCaseOperation2Request(input)
  1846. r := req.HTTPRequest
  1847. // build request
  1848. restxml.Build(req)
  1849. assert.NoError(t, req.Error)
  1850. // assert URL
  1851. assert.Equal(t, "https://test/", r.URL.String())
  1852. // assert headers
  1853. }
  1854. func TestInputService14ProtocolTestStructurePayloadCase1(t *testing.T) {
  1855. svc := NewInputService14ProtocolTest(nil)
  1856. svc.Endpoint = "https://test"
  1857. input := &InputService14TestShapeInputShape{
  1858. Foo: &InputService14TestShapeFooShape{
  1859. Baz: aws.String("bar"),
  1860. },
  1861. }
  1862. req, _ := svc.InputService14TestCaseOperation1Request(input)
  1863. r := req.HTTPRequest
  1864. // build request
  1865. restxml.Build(req)
  1866. assert.NoError(t, req.Error)
  1867. // assert body
  1868. assert.NotNil(t, r.Body)
  1869. body := util.SortXML(r.Body)
  1870. assert.Equal(t, util.Trim(`<foo><baz>bar</baz></foo>`), util.Trim(string(body)))
  1871. // assert URL
  1872. assert.Equal(t, "https://test/", r.URL.String())
  1873. // assert headers
  1874. }
  1875. func TestInputService14ProtocolTestStructurePayloadCase2(t *testing.T) {
  1876. svc := NewInputService14ProtocolTest(nil)
  1877. svc.Endpoint = "https://test"
  1878. input := &InputService14TestShapeInputShape{
  1879. Foo: &InputService14TestShapeFooShape{},
  1880. }
  1881. req, _ := svc.InputService14TestCaseOperation2Request(input)
  1882. r := req.HTTPRequest
  1883. // build request
  1884. restxml.Build(req)
  1885. assert.NoError(t, req.Error)
  1886. // assert body
  1887. assert.NotNil(t, r.Body)
  1888. body := util.SortXML(r.Body)
  1889. assert.Equal(t, util.Trim(`<foo></foo>`), util.Trim(string(body)))
  1890. // assert URL
  1891. assert.Equal(t, "https://test/", r.URL.String())
  1892. // assert headers
  1893. }
  1894. func TestInputService14ProtocolTestStructurePayloadCase3(t *testing.T) {
  1895. svc := NewInputService14ProtocolTest(nil)
  1896. svc.Endpoint = "https://test"
  1897. input := &InputService14TestShapeInputShape{}
  1898. req, _ := svc.InputService14TestCaseOperation3Request(input)
  1899. r := req.HTTPRequest
  1900. // build request
  1901. restxml.Build(req)
  1902. assert.NoError(t, req.Error)
  1903. // assert URL
  1904. assert.Equal(t, "https://test/", r.URL.String())
  1905. // assert headers
  1906. }
  1907. func TestInputService15ProtocolTestXMLAttributeCase1(t *testing.T) {
  1908. svc := NewInputService15ProtocolTest(nil)
  1909. svc.Endpoint = "https://test"
  1910. input := &InputService15TestShapeInputService15TestCaseOperation1Input{
  1911. Grant: &InputService15TestShapeGrant{
  1912. Grantee: &InputService15TestShapeGrantee{
  1913. EmailAddress: aws.String("foo@example.com"),
  1914. Type: aws.String("CanonicalUser"),
  1915. },
  1916. },
  1917. }
  1918. req, _ := svc.InputService15TestCaseOperation1Request(input)
  1919. r := req.HTTPRequest
  1920. // build request
  1921. restxml.Build(req)
  1922. assert.NoError(t, req.Error)
  1923. // assert body
  1924. assert.NotNil(t, r.Body)
  1925. body := util.SortXML(r.Body)
  1926. assert.Equal(t, util.Trim(`<Grant xmlns:_xmlns="xmlns" _xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:XMLSchema-instance="http://www.w3.org/2001/XMLSchema-instance" XMLSchema-instance:type="CanonicalUser"><Grantee><EmailAddress>foo@example.com</EmailAddress></Grantee></Grant>`), util.Trim(string(body)))
  1927. // assert URL
  1928. assert.Equal(t, "https://test/", r.URL.String())
  1929. // assert headers
  1930. }
  1931. func TestInputService16ProtocolTestGreedyKeysCase1(t *testing.T) {
  1932. svc := NewInputService16ProtocolTest(nil)
  1933. svc.Endpoint = "https://test"
  1934. input := &InputService16TestShapeInputService16TestCaseOperation1Input{
  1935. Bucket: aws.String("my/bucket"),
  1936. Key: aws.String("testing /123"),
  1937. }
  1938. req, _ := svc.InputService16TestCaseOperation1Request(input)
  1939. r := req.HTTPRequest
  1940. // build request
  1941. restxml.Build(req)
  1942. assert.NoError(t, req.Error)
  1943. // assert URL
  1944. assert.Equal(t, "https://test/my%2Fbucket/testing%20/123", r.URL.String())
  1945. // assert headers
  1946. }
  1947. func TestInputService17ProtocolTestOmitsNullQueryParamsButSerializesEmptyStringsCase1(t *testing.T) {
  1948. svc := NewInputService17ProtocolTest(nil)
  1949. svc.Endpoint = "https://test"
  1950. input := &InputService17TestShapeInputShape{}
  1951. req, _ := svc.InputService17TestCaseOperation1Request(input)
  1952. r := req.HTTPRequest
  1953. // build request
  1954. restxml.Build(req)
  1955. assert.NoError(t, req.Error)
  1956. // assert URL
  1957. assert.Equal(t, "https://test/path", r.URL.String())
  1958. // assert headers
  1959. }
  1960. func TestInputService17ProtocolTestOmitsNullQueryParamsButSerializesEmptyStringsCase2(t *testing.T) {
  1961. svc := NewInputService17ProtocolTest(nil)
  1962. svc.Endpoint = "https://test"
  1963. input := &InputService17TestShapeInputShape{
  1964. Foo: aws.String(""),
  1965. }
  1966. req, _ := svc.InputService17TestCaseOperation2Request(input)
  1967. r := req.HTTPRequest
  1968. // build request
  1969. restxml.Build(req)
  1970. assert.NoError(t, req.Error)
  1971. // assert URL
  1972. assert.Equal(t, "https://test/path?abc=mno&param-name=", r.URL.String())
  1973. // assert headers
  1974. }
  1975. func TestInputService18ProtocolTestRecursiveShapesCase1(t *testing.T) {
  1976. svc := NewInputService18ProtocolTest(nil)
  1977. svc.Endpoint = "https://test"
  1978. input := &InputService18TestShapeInputShape{
  1979. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  1980. NoRecurse: aws.String("foo"),
  1981. },
  1982. }
  1983. req, _ := svc.InputService18TestCaseOperation1Request(input)
  1984. r := req.HTTPRequest
  1985. // build request
  1986. restxml.Build(req)
  1987. assert.NoError(t, req.Error)
  1988. // assert body
  1989. assert.NotNil(t, r.Body)
  1990. body := util.SortXML(r.Body)
  1991. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></RecursiveStruct></OperationRequest>`), util.Trim(string(body)))
  1992. // assert URL
  1993. assert.Equal(t, "https://test/path", r.URL.String())
  1994. // assert headers
  1995. }
  1996. func TestInputService18ProtocolTestRecursiveShapesCase2(t *testing.T) {
  1997. svc := NewInputService18ProtocolTest(nil)
  1998. svc.Endpoint = "https://test"
  1999. input := &InputService18TestShapeInputShape{
  2000. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2001. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2002. NoRecurse: aws.String("foo"),
  2003. },
  2004. },
  2005. }
  2006. req, _ := svc.InputService18TestCaseOperation2Request(input)
  2007. r := req.HTTPRequest
  2008. // build request
  2009. restxml.Build(req)
  2010. assert.NoError(t, req.Error)
  2011. // assert body
  2012. assert.NotNil(t, r.Body)
  2013. body := util.SortXML(r.Body)
  2014. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></RecursiveStruct></RecursiveStruct></OperationRequest>`), util.Trim(string(body)))
  2015. // assert URL
  2016. assert.Equal(t, "https://test/path", r.URL.String())
  2017. // assert headers
  2018. }
  2019. func TestInputService18ProtocolTestRecursiveShapesCase3(t *testing.T) {
  2020. svc := NewInputService18ProtocolTest(nil)
  2021. svc.Endpoint = "https://test"
  2022. input := &InputService18TestShapeInputShape{
  2023. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2024. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2025. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2026. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2027. NoRecurse: aws.String("foo"),
  2028. },
  2029. },
  2030. },
  2031. },
  2032. }
  2033. req, _ := svc.InputService18TestCaseOperation3Request(input)
  2034. r := req.HTTPRequest
  2035. // build request
  2036. restxml.Build(req)
  2037. assert.NoError(t, req.Error)
  2038. // assert body
  2039. assert.NotNil(t, r.Body)
  2040. body := util.SortXML(r.Body)
  2041. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></RecursiveStruct></RecursiveStruct></RecursiveStruct></RecursiveStruct></OperationRequest>`), util.Trim(string(body)))
  2042. // assert URL
  2043. assert.Equal(t, "https://test/path", r.URL.String())
  2044. // assert headers
  2045. }
  2046. func TestInputService18ProtocolTestRecursiveShapesCase4(t *testing.T) {
  2047. svc := NewInputService18ProtocolTest(nil)
  2048. svc.Endpoint = "https://test"
  2049. input := &InputService18TestShapeInputShape{
  2050. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2051. RecursiveList: []*InputService18TestShapeRecursiveStructType{
  2052. {
  2053. NoRecurse: aws.String("foo"),
  2054. },
  2055. {
  2056. NoRecurse: aws.String("bar"),
  2057. },
  2058. },
  2059. },
  2060. }
  2061. req, _ := svc.InputService18TestCaseOperation4Request(input)
  2062. r := req.HTTPRequest
  2063. // build request
  2064. restxml.Build(req)
  2065. assert.NoError(t, req.Error)
  2066. // assert body
  2067. assert.NotNil(t, r.Body)
  2068. body := util.SortXML(r.Body)
  2069. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveList xmlns="https://foo/"><member xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></member><member xmlns="https://foo/"><NoRecurse xmlns="https://foo/">bar</NoRecurse></member></RecursiveList></RecursiveStruct></OperationRequest>`), util.Trim(string(body)))
  2070. // assert URL
  2071. assert.Equal(t, "https://test/path", r.URL.String())
  2072. // assert headers
  2073. }
  2074. func TestInputService18ProtocolTestRecursiveShapesCase5(t *testing.T) {
  2075. svc := NewInputService18ProtocolTest(nil)
  2076. svc.Endpoint = "https://test"
  2077. input := &InputService18TestShapeInputShape{
  2078. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2079. RecursiveList: []*InputService18TestShapeRecursiveStructType{
  2080. {
  2081. NoRecurse: aws.String("foo"),
  2082. },
  2083. {
  2084. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2085. NoRecurse: aws.String("bar"),
  2086. },
  2087. },
  2088. },
  2089. },
  2090. }
  2091. req, _ := svc.InputService18TestCaseOperation5Request(input)
  2092. r := req.HTTPRequest
  2093. // build request
  2094. restxml.Build(req)
  2095. assert.NoError(t, req.Error)
  2096. // assert body
  2097. assert.NotNil(t, r.Body)
  2098. body := util.SortXML(r.Body)
  2099. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveList xmlns="https://foo/"><member xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></member><member xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><NoRecurse xmlns="https://foo/">bar</NoRecurse></RecursiveStruct></member></RecursiveList></RecursiveStruct></OperationRequest>`), util.Trim(string(body)))
  2100. // assert URL
  2101. assert.Equal(t, "https://test/path", r.URL.String())
  2102. // assert headers
  2103. }
  2104. func TestInputService18ProtocolTestRecursiveShapesCase6(t *testing.T) {
  2105. svc := NewInputService18ProtocolTest(nil)
  2106. svc.Endpoint = "https://test"
  2107. input := &InputService18TestShapeInputShape{
  2108. RecursiveStruct: &InputService18TestShapeRecursiveStructType{
  2109. RecursiveMap: map[string]*InputService18TestShapeRecursiveStructType{
  2110. "bar": {
  2111. NoRecurse: aws.String("bar"),
  2112. },
  2113. "foo": {
  2114. NoRecurse: aws.String("foo"),
  2115. },
  2116. },
  2117. },
  2118. }
  2119. req, _ := svc.InputService18TestCaseOperation6Request(input)
  2120. r := req.HTTPRequest
  2121. // build request
  2122. restxml.Build(req)
  2123. assert.NoError(t, req.Error)
  2124. // assert body
  2125. assert.NotNil(t, r.Body)
  2126. body := util.SortXML(r.Body)
  2127. assert.Equal(t, util.Trim(`<OperationRequest xmlns="https://foo/"><RecursiveStruct xmlns="https://foo/"><RecursiveMap xmlns="https://foo/"><entry xmlns="https://foo/"><key xmlns="https://foo/">bar</key><value xmlns="https://foo/"><NoRecurse xmlns="https://foo/">bar</NoRecurse></value></entry><entry xmlns="https://foo/"><key xmlns="https://foo/">foo</key><value xmlns="https://foo/"><NoRecurse xmlns="https://foo/">foo</NoRecurse></value></entry></RecursiveMap></RecursiveStruct></OperationRequest>`), util.Trim(string(body)))
  2128. // assert URL
  2129. assert.Equal(t, "https://test/path", r.URL.String())
  2130. // assert headers
  2131. }
  2132. func TestInputService19ProtocolTestTimestampInHeaderCase1(t *testing.T) {
  2133. svc := NewInputService19ProtocolTest(nil)
  2134. svc.Endpoint = "https://test"
  2135. input := &InputService19TestShapeInputService19TestCaseOperation1Input{
  2136. TimeArgInHeader: aws.Time(time.Unix(1422172800, 0)),
  2137. }
  2138. req, _ := svc.InputService19TestCaseOperation1Request(input)
  2139. r := req.HTTPRequest
  2140. // build request
  2141. restxml.Build(req)
  2142. assert.NoError(t, req.Error)
  2143. // assert URL
  2144. assert.Equal(t, "https://test/path", r.URL.String())
  2145. // assert headers
  2146. assert.Equal(t, "Sun, 25 Jan 2015 08:00:00 GMT", r.Header.Get("x-amz-timearg"))
  2147. }