func TestAddCommandForceOverwrite(t *testing.T) { cmd, err := commands.ParseAddCommand(completeAddExample[2:]) if err != nil { t.Error("Error parsing command") } addCommand, ok := cmd.(*commands.AddCommand) if !ok { t.Fatal("Parsed command is not an AddCommand") } config := proxyconfig.NewConfig() config.Rewrites[source] = firstDestination addCommand.Execute(func() (*proxyconfig.Config, error) { return config, nil }) put, ok := config.Rewrites[source] if !ok || put != destination { t.Errorf("Source-dest mapping not made") } }
func TestAddCommandNoForceNoOverwrite(t *testing.T) { cmd, err := commands.ParseAddCommand(completeAddExample[2:]) if err != nil { t.Error("Error parsing command") } addCommand, ok := cmd.(*commands.AddCommand) if !ok { t.Fatal("Parsed command is not an AddCommand") } addCommand.IsForce = false config := proxyconfig.NewConfig() config.Rewrites[source] = firstDestination err = addCommand.Execute(func() (*proxyconfig.Config, error) { return config, nil }) put, ok := config.Rewrites[source] if err == nil { t.Errorf("No error thrown on existing key") } if !ok || put == destination { t.Errorf("Source-dest mapping made, force not defined") } }
func TestAddCommandFlagParsing(t *testing.T) { cmd, err := commands.ParseAddCommand(completeAddExample[2:]) if err != nil { t.Error("Error parsing command") } addCommand, ok := cmd.(*commands.AddCommand) if !ok { t.Fatal("Parsed command is not an AddCommand") } if !addCommand.IsForce { t.Error("Force option not parsed") } if addCommand.Source.String() != source { t.Errorf("Source not parsed, found %s", addCommand.Source) } if addCommand.Destination != destination { t.Errorf("Destination not parsed, found %s", addCommand.Destination) } }