Exemplo n.º 1
0
// runScenarioTest runs a test with the given number of orders
func runScenarioTest(assert *asserts.Asserts, param scenarioParam) {
	applog.Infof(param.String())
	monitoring.Reset()

	env, oas := setUpEnvironment(param)

	for on := 0; on < param.Orders; on++ {
		env.EmitSimple("shop", "order", generateOrder(on, param.Items))
	}

	oas.Wait(param.Orders)

	ol, sl := oas.Lengths()

	assert.Equal(ol, param.Orders, "All orders have been placed.")
	assert.Equal(sl, param.Orders, "All orders have been delivered.")
	assert.Equal(ol, sl, "The number of orders and shipments is equal.")

	time.Sleep(2 * time.Second)
	env.Shutdown()
	time.Sleep(2 * time.Second)

	monitoring.MeasuringPointsPrintAll()
	monitoring.StaySetVariablesPrintAll()
}