github.com/nevalang/neva@v0.23.1-0.20240507185603-7696a9bb8dda/examples/fizzbuzz/e2e_test.go (about)

     1  package test
     2  
     3  import (
     4  	"os"
     5  	"os/exec"
     6  	"testing"
     7  
     8  	"github.com/stretchr/testify/require"
     9  )
    10  
    11  func Test(t *testing.T) {
    12  	err := os.Chdir("..")
    13  	require.NoError(t, err)
    14  
    15  	wd, err := os.Getwd()
    16  	require.NoError(t, err)
    17  	defer os.Chdir(wd)
    18  
    19  	cmd := exec.Command("neva", "run", "fizzbuzz")
    20  
    21  	out, err := cmd.CombinedOutput()
    22  	require.NoError(t, err)
    23  
    24  	require.Equal(
    25  		t,
    26  		expected,
    27  		string(out),
    28  	)
    29  
    30  	require.Equal(t, 0, cmd.ProcessState.ExitCode())
    31  }
    32  
    33  var expected = `1
    34  2
    35  Fizz
    36  4
    37  Buzz
    38  Fizz
    39  7
    40  8
    41  Fizz
    42  Buzz
    43  11
    44  Fizz
    45  13
    46  14
    47  FizzBuzz
    48  16
    49  17
    50  Fizz
    51  19
    52  Buzz
    53  Fizz
    54  22
    55  23
    56  Fizz
    57  Buzz
    58  26
    59  Fizz
    60  28
    61  29
    62  FizzBuzz
    63  31
    64  32
    65  Fizz
    66  34
    67  Buzz
    68  Fizz
    69  37
    70  38
    71  Fizz
    72  Buzz
    73  41
    74  Fizz
    75  43
    76  44
    77  FizzBuzz
    78  46
    79  47
    80  Fizz
    81  49
    82  Buzz
    83  Fizz
    84  52
    85  53
    86  Fizz
    87  Buzz
    88  56
    89  Fizz
    90  58
    91  59
    92  FizzBuzz
    93  61
    94  62
    95  Fizz
    96  64
    97  Buzz
    98  Fizz
    99  67
   100  68
   101  Fizz
   102  Buzz
   103  71
   104  Fizz
   105  73
   106  74
   107  FizzBuzz
   108  76
   109  77
   110  Fizz
   111  79
   112  Buzz
   113  Fizz
   114  82
   115  83
   116  Fizz
   117  Buzz
   118  86
   119  Fizz
   120  88
   121  89
   122  FizzBuzz
   123  91
   124  92
   125  Fizz
   126  94
   127  Buzz
   128  Fizz
   129  97
   130  98
   131  Fizz
   132  Buzz
   133  `