pulumi/pkg/codegen/internal/test/testdata/plain-object-defaults/dotnet/FuncWithAllOptionalInputs.cs
Ian Wahbe 4b7985384c
[codegen/go] Call site defaults for Pulumi Object types (#8411)
* Add test case

* Fix tests

* Add test dependencies correctly

* Feed through error handling

* Include test output

* Get types to line up

* Add remaining test files

* Update changelog

* Correctly find type paths

* Handle transitive objects

* Handle required fields

* Add feature flag for go

* Add required+default test case

* Don't `<any>` cast known types.

* Add more flags.

I realize this should really wait for PR#8400 to merge.

* Add plain object to env-helper test

This test fails right now. My next problem is fixing it.

* Handle plain types

* Handle function inputs

* Fix the indentation

* Handle output types correctly

* Remove unnecessary `!`

* Add test case

* Fix tests

* Add test dependencies correctly

* Feed through error handling

* Include test output

* Get types to line up

* Add remaining test files

* Update changelog

* Correctly find type paths

* Handle transitive objects

* Handle required fields

* Add required+default test case

* Don't `<any>` cast known types.

* Add plain object to env-helper test

This test fails right now. My next problem is fixing it.

* Handle plain types

* Handle function inputs

* Fix the indentation

* Handle output types correctly

* Remove unnecessary `!`

* Start on `genPlainObjectDefaultFunc`

* Add missing change to fix test

* Run tests with merge

* Refactor out assign

* Merge in next _index.md diff

* Change method name to `Defaults`

* Handle enums correctly

* Another attempt at _index.md

* Make module generation deterministic

* Add checks for old values

* Insert defaults in resources

* Fix docs generation

Credit to @praneetloke

* Progress on adding defaults to Resource arguments

* Handle resource argument defaults

* Don't create defaults if disableObjectDefaults

* Rename test folder

* Add test for disable flag

* Fix disable test

* Update docs

* Abstract out nil comparisons

* Use reflection to test for empty values

* Simplify Ptr and pulumi.Any type handling

* Remove unused function

* Apply defaults to functions

* Update new test with master codegen

* Tests + nil check
2021-11-23 15:10:15 -08:00

82 lines
2.4 KiB
C#

// *** WARNING: this file was generated by test. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
using Pulumi.Utilities;
namespace Pulumi.Mypkg
{
public static class FuncWithAllOptionalInputs
{
/// <summary>
/// Check codegen of functions with all optional inputs.
/// </summary>
public static Task<FuncWithAllOptionalInputsResult> InvokeAsync(FuncWithAllOptionalInputsArgs? args = null, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.InvokeAsync<FuncWithAllOptionalInputsResult>("mypkg::funcWithAllOptionalInputs", args ?? new FuncWithAllOptionalInputsArgs(), options.WithVersion());
/// <summary>
/// Check codegen of functions with all optional inputs.
/// </summary>
public static Output<FuncWithAllOptionalInputsResult> Invoke(FuncWithAllOptionalInputsInvokeArgs? args = null, InvokeOptions? options = null)
=> Pulumi.Deployment.Instance.Invoke<FuncWithAllOptionalInputsResult>("mypkg::funcWithAllOptionalInputs", args ?? new FuncWithAllOptionalInputsInvokeArgs(), options.WithVersion());
}
public sealed class FuncWithAllOptionalInputsArgs : Pulumi.InvokeArgs
{
/// <summary>
/// Property A
/// </summary>
[Input("a")]
public Inputs.HelmReleaseSettings? A { get; set; }
/// <summary>
/// Property B
/// </summary>
[Input("b")]
public string? B { get; set; }
public FuncWithAllOptionalInputsArgs()
{
B = "defValue";
}
}
public sealed class FuncWithAllOptionalInputsInvokeArgs : Pulumi.InvokeArgs
{
/// <summary>
/// Property A
/// </summary>
[Input("a")]
public Input<Inputs.HelmReleaseSettingsArgs>? A { get; set; }
/// <summary>
/// Property B
/// </summary>
[Input("b")]
public Input<string>? B { get; set; }
public FuncWithAllOptionalInputsInvokeArgs()
{
B = "defValue";
}
}
[OutputType]
public sealed class FuncWithAllOptionalInputsResult
{
public readonly string R;
[OutputConstructor]
private FuncWithAllOptionalInputsResult(string r)
{
R = r;
}
}
}