example2

package
v0.0.0-...-65c4805 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 10, 2024 License: GPL-3.0 Imports: 1 Imported by: 0

README

Package example2

This project is used by the Szerszam utility function to test its markdown update methods against an independent standalone project. All features will be tested against this file so it will be updated and changed often.

The following will be replaced by the go package documentation

package example2

Package example2 exists in order to test various go to git markdown (gToMD) extraction utilities. Various object will be defined that exhibit the various comment and declaration options permitted by gofmt.

Heading

This paragraph will demonstrating further documentation under a "markdown" header.

Declarations can be single-line or multi-line blocks or constructions. Each type will be included here for complete testing.

Here we will add function documentation:

func TimesTwo(i int) int

TimesTwo returns the value times two.

and another:

func TimesThree(i int) int

TimesThree returns the value times three.

and the defined interface:

type InterfaceType interface {
    func(int) int
}

InterfaceType tests the documentation of interfaces.

and the defined structure:

type StructureType struct {
    // F1 is the first test field of the structure.
    F1 string
    // F2 is the second test field of the structure.
    F2 int
}

StructureType tests the documentation of structures.

and run a specific test

go test -v -cover -run Test_PASS_Example2 .

$\small{\texttt{===\unicode{160}RUN\unicode{160}\unicode{160}\unicode{160}Test̲PASS̲Example2}}$
$\small{\texttt{---\unicode{160}PASS:\unicode{160}Test̲PASS̲Example2\unicode{160}(0.0s)}}$
$\small{\texttt{PASS}}$
$\small{\texttt{coverage:\unicode{160}100.0﹪\unicode{160}of\unicode{160}statements}}$
$\small{\texttt{ok\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}github.com/dancsecs/gotomd/example2\unicode{160}\unicode{160}\unicode{160}\unicode{160}coverage:\unicode{160}100.0﹪\unicode{160}of\unicode{160}statements}}$

or run all tests in a package:

go test -v -cover .

$\small{\texttt{===\unicode{160}RUN\unicode{160}\unicode{160}\unicode{160}Test̲PASS̲Example2}}$
$\small{\texttt{---\unicode{160}PASS:\unicode{160}Test̲PASS̲Example2\unicode{160}(0.0s)}}$
$\small{\texttt{===\unicode{160}RUN\unicode{160}\unicode{160}\unicode{160}Test̲FAIL̲Example2}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}example2̲test.go:29:\unicode{160}unexpected\unicode{160}int:}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\emph{2+2=5\unicode{160}(is\unicode{160}true\unicode{160}for\unicode{160}big\unicode{160}values\unicode{160}of\unicode{160}two)}:}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\color{magenta}GOT:\unicode{160}\color{default}\color{darkturquoise}4\color{default}}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\color{cyan}WNT:\unicode{160}\color{default}\color{darkturquoise}5\color{default}}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}example2̲test.go:30:\unicode{160}unexpected\unicode{160}string:}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\color{magenta}GOT:\unicode{160}\color{default}\color{green}New\unicode{160}in\unicode{160}Got\color{default}\unicode{160}Similar\unicode{160}in\unicode{160}(\color{darkturquoise}1\color{default})\unicode{160}both}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\color{cyan}WNT:\unicode{160}\color{default}\unicode{160}Similar\unicode{160}in\unicode{160}(\color{darkturquoise}2\color{default})\unicode{160}both\color{red},\unicode{160}new\unicode{160}in\unicode{160}Wnt\color{default}}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}example2̲test.go:36:\unicode{160}Unexpected\unicode{160}stdout\unicode{160}Entry:\unicode{160}got\unicode{160}(1\unicode{160}lines)\unicode{160}-\unicode{160}want\unicode{160}(1\unicode{160}lines)}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\color{darkturquoise}0\color{default}:\color{darkturquoise}0\color{default}\unicode{160}This\unicode{160}output\unicode{160}line\unicode{160}\color{red}is\color{default}\color{yellow}/\color{default}\color{green}will\unicode{160}be\color{default}\unicode{160}different}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}example2̲test.go:40:\unicode{160}unexpected\unicode{160}string:}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\color{magenta}GOT:\unicode{160}\color{default}\color{darkturquoise}Total\color{default}:\unicode{160}6}}$
$\small{\texttt{\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\unicode{160}\color{cyan}WNT:\unicode{160}\color{default}\color{darkturquoise}Sum\color{default}:\unicode{160}6}}$
$\small{\texttt{---\unicode{160}FAIL:\unicode{160}Test̲FAIL̲Example2\unicode{160}(0.0s)}}$
$\small{\texttt{FAIL}}$
$\small{\texttt{coverage:\unicode{160}100.0﹪\unicode{160}of\unicode{160}statements}}$
$\small{\texttt{FAIL\unicode{160}github.com/dancsecs/gotomd/example2\unicode{160}0.0s}}$
$\small{\texttt{FAIL}}$

or include a file

cat ./example2.go
// Package example2 exists in order to test various go to git
// markdown (gToMD) extraction utilities.  Various object will be defined that
// exhibit the various comment and declaration options permitted by gofmt.
//
// # Heading
//
// This paragraph will demonstrating further documentation under a "markdown"
// header.
//
// Declarations can be single-line or multi-line blocks or constructions.  Each
// type will be included here for complete testing.
package example2

import "strconv"

// ConstDeclSingleCmtSingle has a single-line comment.
const ConstDeclSingleCmtSingle = "single-line declaration and comment"

// ConstDeclSingleCmtMulti has a multiline
// comment.
const ConstDeclSingleCmtMulti = "single-line declaration and comment"

// ConstDeclMultiCmtSingle has a single-line comment with a multiline decl.
const ConstDeclMultiCmtSingle = `multiline constant
definition
`

// ConstDeclMultiCmtMulti has a multiline comment with
// a multiline decl.
const ConstDeclMultiCmtMulti = `multiline constant
definition
`

// ConstDeclConstrCmtSingle has a single-line comment with a multiline decl.
const ConstDeclConstrCmtSingle = `multiline constant` + "\n" +
    ConstDeclMultiCmtSingle + " including other constants: \n" +
    ConstDeclSingleCmtSingle + "\n" + `
=========end of constant=============
`

// ConstDeclConstrCmtMulti has a multiline comment with
// a multiline decl.
const ConstDeclConstrCmtMulti = `multiline constant` + "\n" +
    ConstDeclMultiCmtSingle + " including other constants: \n" +
    ConstDeclSingleCmtSingle + "\n" + `
=========end of constant=============
`

// ConstantSingleLine tests single line constant definitions.
const ConstantSingleLine = "this is defined on a single-line"

// ConstantMultipleLines1 test a multiline comment with string addition.
// Also with longer:
//
// multiline comments with spacing.
const ConstantMultipleLines1 = "this constant" +
    "is defined on multiple " +
    "lines"

// ConstantMultipleLines2 tests a multiline comment with go multiline string.
const ConstantMultipleLines2 = `this constant
is defined on multiple
          lines
`

// Here is a constant block.  All constants are reported as a group.
const (
    // ConstantGroup1 is a constant defined in a group.
    ConstantGroup1 = "constant 1"

    // ConstantGroup2 is a constant defined in a group.
    ConstantGroup2 = "constant 2"
)

// InterfaceType tests the documentation of interfaces.
type InterfaceType interface {
    func(int) int
}

// StructureType tests the documentation of structures.
type StructureType struct {
    // F1 is the first test field of the structure.
    F1 string
    // F2 is the second test field of the structure.
    F2 int
}

// GetF1 is a method to a structure.
func (s *StructureType) GetF1(
    a, b, c int,
) string {
    const base10 = 10

    t := a + c + b

    return s.F1 + strconv.FormatInt(int64(t), base10)
}

// TimesTwo returns the value times two.
func TimesTwo(i int) int {
    return i + i
}

// TimesThree returns the value times three.
func TimesThree(i int) int {
    return i + i + i
}

or a single declaration:

func TimesTwo(i int) int

or a multiple declarations:

func TimesTwo(i int) int
func TimesThree(i int) int

or a single declaration on a single-line:

func TimesTwo(i int) int

or a multiple declarations on a single-line:

func TimesTwo(i int) int
func TimesThree(i int) int

or a natural declaration:

// TimesTwo returns the value times two.
func TimesTwo(i int) int

or a multiple natural declarations:

// TimesTwo returns the value times two.
func TimesTwo(i int) int

// TimesThree returns the value times three.
func TimesThree(i int) int

Documentation

Overview

Package example2 exists in order to test various go to git markdown (gToMD) extraction utilities. Various object will be defined that exhibit the various comment and declaration options permitted by gofmt.

Heading

This paragraph will demonstrating further documentation under a "markdown" header.

Declarations can be single-line or multi-line blocks or constructions. Each type will be included here for complete testing.

Index

Constants

View Source
const (
	// ConstantGroup1 is a constant defined in a group.
	ConstantGroup1 = "constant 1"

	// ConstantGroup2 is a constant defined in a group.
	ConstantGroup2 = "constant 2"
)

Here is a constant block. All constants are reported as a group.

View Source
const ConstDeclConstrCmtMulti = `multiline constant` + "\n" +
	ConstDeclMultiCmtSingle + " including other constants: \n" +
	ConstDeclSingleCmtSingle + "\n" + `
=========end of constant=============
`

ConstDeclConstrCmtMulti has a multiline comment with a multiline decl.

View Source
const ConstDeclConstrCmtSingle = `multiline constant` + "\n" +
	ConstDeclMultiCmtSingle + " including other constants: \n" +
	ConstDeclSingleCmtSingle + "\n" + `
=========end of constant=============
`

ConstDeclConstrCmtSingle has a single-line comment with a multiline decl.

View Source
const ConstDeclMultiCmtMulti = `multiline constant
definition
`

ConstDeclMultiCmtMulti has a multiline comment with a multiline decl.

View Source
const ConstDeclMultiCmtSingle = `multiline constant
definition
`

ConstDeclMultiCmtSingle has a single-line comment with a multiline decl.

View Source
const ConstDeclSingleCmtMulti = "single-line declaration and comment"

ConstDeclSingleCmtMulti has a multiline comment.

View Source
const ConstDeclSingleCmtSingle = "single-line declaration and comment"

ConstDeclSingleCmtSingle has a single-line comment.

View Source
const ConstantMultipleLines1 = "this constant" +
	"is defined on multiple " +
	"lines"

ConstantMultipleLines1 test a multiline comment with string addition. Also with longer:

multiline comments with spacing.

View Source
const ConstantMultipleLines2 = `this constant
is defined on multiple
	      lines
`

ConstantMultipleLines2 tests a multiline comment with go multiline string.

View Source
const ConstantSingleLine = "this is defined on a single-line"

ConstantSingleLine tests single line constant definitions.

Variables

This section is empty.

Functions

func TimesThree

func TimesThree(i int) int

TimesThree returns the value times three.

func TimesTwo

func TimesTwo(i int) int

TimesTwo returns the value times two.

Types

type InterfaceType

type InterfaceType interface {
	func(int) int
}

InterfaceType tests the documentation of interfaces.

type StructureType

type StructureType struct {
	// F1 is the first test field of the structure.
	F1 string
	// F2 is the second test field of the structure.
	F2 int
}

StructureType tests the documentation of structures.

func (*StructureType) GetF1

func (s *StructureType) GetF1(
	a, b, c int,
) string

GetF1 is a method to a structure.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL